如何查看db2表空间使用哪些容器

用db2 list tablespaces show detail 命令只能看表空间用到了几个容器,但具体用了哪些容器,是文件系统还是裸设备? 需要用什么命令查看呢?
09-01-08  匿名提问 发布
2个回答
时间
投票
  • 0

    29700669

    表空间满了,肯定使用的是DMS的表空间,对于DMS表空间,可以有以下几种方式扩容:



    1. 向表空间中添加新的容器:

    ALTER TABLESPACE 表空间名 ADD (FILE '容器文件路径和名称' 容器文件大小)



    2. 把现有的容器扩大:也有两种方法

    (1)ALTER TABLESPACE 表空间名 RESIZE(FILE '已满的容器名' 更改后容器的大小)



    (2)ALTER TABLESPACE 表空间名 EXTEND(FILE '已满的容器名' 准备增加的大小)





    楼上说的方法都可以的.

    但只说明了其中一种情况,若表空间直接用的是祼设备的话,就需要把(file 改成(device啦.这种情况我也遇到过,当时我的应用就宕掉啦,好在是晚上做的后台处理,否则麻烦就大啦.





    在做的时候一定要考虑到rebalance时间,增加了容器以后DB2会自动重新balance数据,根据tablespace的数据大小需要一定的时间来完成。这期间访问速度会下降很多。







    要注意是几K页的表空间,4K最大表空间限制在64G,8K是128G,16K是256G,32K是512G,如果有上述限制是不可以直接加CONTAINER的,那只有再建一个新的表空间!





    问一下容器文件太大对读写性能有多大影响?



    一直有这样的疑问,在表空间不够的时候,到底是增大文件的大小好还是添加一个容器文件好



    如果你有分离的磁盘,当然是在物理上分离的磁盘上建立文件容器好了,i/o比较快。





    windows环境中还是扩大container的size比较实用,可以避免rebalance

    09-01-08 | 添加评论 | 打赏

    评论读取中....

精华知识
更多  
意见反馈 帮助