今天我表空间无法扩,后来一查,原来超出表空间大小的限制了。看表空间的db2look,表空间为regular的。再一问,这个数据库是从V8迁移到V9的。
SQL1139N The total size of the table space is too big.
Explanation:
The size of the current table space is too big. The size of a REGULAR
table space is limited to 0x0100 0000 (16777216) pages while the size of
LARGE and TEMPORARY table spaces are limited to 0x2000 0000 (536870912)
pages.
User response:
Check the administration notification log for details. Reduce the size
of the table space and correct the SQL statement.
sqlcode: -1139
sqlstate: 54047
不管pagesize多大,表空间的page限制都是如上所示(db2 v9)
----------------
regular是V8表空间的默认参数,而沿袭到V9,如果迁移的时候不注意,还带有regular参数的话,表空间还是V8的特性,大小上限为64G,128G,256G,512G,对应页大小为4K,8K,16K,32K,V9 的上限为2T,4T,8T,16T。
遇到这样的情况也不必慌,可以尝试更改表空间的属性:db2 "alter tablesapce tablespace_name convert to large".
值得注意的是,属性更改后需要对索引做reorg或者rebuild。原因应该是行指示器的大小变了吧。
转载于:https://blog.51cto.com/freebile/965174