创建表空间
在一个数据库内创建表空间,会将容器分配到表空间,并在数据库系统目录中记录它的定义和属性。
关于本任务
对于自动存储器表空间,数据库管理器将根据与数据库关联的存储器路径将容器指定给表空间。
对于非自动存储器表空间而言,在创建表空间时,您必须知道将要使用的容器的路径名、设备名或文件名。 另外,对于您为 DMS 表空间创建的每个设备容器或文件容器,您还必须知道可以为每个容器分配的存储器空间量。
如果要指定 PREFETCHSIZE,那么使用的值必须是 EXTENTSIZE 值的倍数。 例如,如果 EXTENTSIZE 是 10,那么 PREFETCHSIZE 应为 20 或 30。 应该通过指定 AUTOMATIC 作为值,让数据库管理器自动确定预取大小。
将关键字 NO FILE SYSTEM CACHING 和 FILE SYSTEM CACHING 用作 CREATE TABLESPACE 语句的一部分来指定数据库管理器是使用直接 I/O (DIO) 还是使用并行 I/O (CIO) 来访问表空间。 如果指定 NO FILE SYSTEM CACHING,那么只要可能,数据库管理器就会尝试使用 CIO。 在不支持 CIO 的情况下(例如,如果使用的是 JFS),数据库管理器会改用 DIO。
发出 CREATE TABLESPACE 语句时,缺省情况下将打开已删除的表的恢复功能。 此功能使您可使用表空间级的复原和前滚操作来恢复已删除的表数据。 这样可比数据库级的恢复要快,且您的数据库将对用户保持可用。 但是,如果有许多删除表操作要恢复或者如果历史记录文件很大,那么正向恢复时已删除的表的恢复功能可能会影响性能。
如果计划删除许多表并且使用循环日志记录或者不想恢复任何已删除的表,请在发出 CREATE TABLESPACE 语句时通过将 DROPPED TABLE RECOVERY 选项显式设置为 OFF 来禁用已删除的表的恢复功能。 此外,也可以在创建表空间之后使用 ALTER TABLESPACE 语句来关闭已删除的表的恢复功能。