db2 如何计算表空间和表缓存空间?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了db2 如何计算表空间和表缓存空间?相关的知识,希望对你有一定的参考价值。

CREATE BUFFERPOOL "BP16"  SIZE 900000 PAGESIZE 16384 NOT EXTENDED STORAGE;CREATE BUFFERPOOL "BP8"  SIZE 51200000 PAGESIZE 8192 NOT EXTENDED STORAGE;怎么计算表空间和表缓存空间?

参考技术A BufferPool的大小 = 每页的大小(PageSize) X 页数(Size)
如下面这一句之中,申请了900000个大小为16384(16K)的页, 所以BufferPool的总大小是: 900000 * 16K = 14400000K = 14064.5M = 13.73G. 即表缓存的空间是13.73G
CREATE BUFFERPOOL "BP16" SIZE 900000 PAGESIZE 16384 NOT EXTENDED STORAGE;

创建表空间的时候,可以指定PageSize的大小,以及其所占空间的大小。 对已有的tablespace可以通过Total Pages * PageSize计算表空间的大小。

如下命令可以查看当前的tablespace的状况:
db2=> List tablespaces show detail
Tablespace ID = 2
Name = USERSPACE1
Type = Database managed space
Contents = All permanent data. Large table space.
State = 0x0000
Detailed explanation:
Normal
Total pages = 8192 //表空间中的页总数
Useable pages = 8160
Used pages = 2912
Free pages = 5248
High water mark (pages) = 2912
Page size (bytes) = 4096 //表空间的页面大小。
Extent size (pages) = 32
Prefetch size (pages) = 32
Number of containers = 1

该UserSpace1的实际大小是8192 * 4K = 32M
参考技术B DB2的不是很熟悉.
Oracle的还是不错的.
参考技术C 学习

以上是关于db2 如何计算表空间和表缓存空间?的主要内容,如果未能解决你的问题,请参考以下文章

ORACLE表空间限额是啥?

如何在DB2建表空间

DB2性能优化 —— 如何创建表空间

如何彻底删除oracle创建的用户和表空间

ORACLE创建表空间报错。ORA-01119和ORA-27040。

db2,删除表数据,表空间不释放