教你正确的理解DB2中的表空间

豆豆网   技术应用频道   2007年10月31日  【字号: 收藏本文

内容摘要:DB2 的表空间按管理方式分为两种:系统管理空间(System Management Space,SMS)和数据库管理空间(Database Management Space,DMS)。

  例1:在Windows上创建一个SMS表空间:

CREATE TABLESPACE RESOURCE MANAGED BY SYSTEM USING ('d:acc_tbsp','e:acc_tbsp','f:acc_tbsp')

  完成的结果为在D、E、F三个磁盘上创建了三个名称为acc_tbsp的文件夹,每个文件夹下面都有一个名为SQLTAG.NAM的文件。

  例2:删除例一所创建的SMS表空间:

DROP TABLESPACE RESOURCE

  运行完这条命令,相应的表空间会从DB2注册表中删除,但是磁盘上的三个文件夹仍然存在,需要手工删除。

  用命令行方式创建DMS表空间的简单语法:

CREATE TABLESPACE ; MANAGED BY DATABASE USING (FILE ';'

  或者

CREATE TABLESPACE ; MANAGED BY DATABASE USING (DEVICE ';'

  例3:在Windows上创建一个DMS表空间,使用各自有5000页的两个文件容器:

CREATE TABLESPACE RESOURCE MANAGED
BY DATABASE USING (FILE 'd:db2data
acc_tbsp' 5000, FILE 'e:db2dataacc_tbsp' 5000)

  运行结果为:在D、E磁盘的db2data文件夹下面各创建了一个名为acc_tbsp的文件,大小都为20000K(默认情况下每页大小为4K)。

  例4:在例三所创建的表空间中添加一个容器:

ALTER TABLESPACE RESOURCE ADD(FILE 'f:db2dataacc_tbsp' 5000)

  运行的结果为在RESOURCE表空间中包含了三个容器(文件):d:db2dataacc_tbsp、 e:db2dataacc_tbsp、 f:db2dataacc_tbsp。

  例5:用RESIZE子句更改例三所创建的表空间的容器的大小:

ALTER TABLESPACE RESOURCE RESIZE
(file 'd:db2dataacc_tbsp' 8000,
file 'e:db2dataacc_tbsp' 8000,
file 'f:db2dataacc_tbsp' 8000)

责编:豆豆技术应用

正在加载评论...