数据库服务器所支持的表驻留在一个或多个磁盘的一个或多个部分中。 在通过将表分配到数据库空间来创建表时,控制表在磁盘上的放置。
数据库服务器所支持的表驻留在一个或多个磁盘的一个或多个部分中。 在通过将表分配到数据库空间来创建表时,控制表在磁盘上的放置。 数据库空间由一个或多个块组成。每个块对应于整个或部分磁盘分区。 将块分配给数据库空间后,这些块中的磁盘空间就可用来存储表或表分段。
配置块,并将它们分配到数据库空间时,必须将数据库空间的大小与每个数据库空间要包含的表或分段联系起来。 要估计表的大小,请遵循估计表大小中的指示信息。
发出 CREATE TABLE 语句之前,由 DBA 发出的最新 DATABASE 或 CONNECT 语句设置当前数据库。
DBA 可以在多个数据库空间对表进行分段(如规划分段存储策略中所述),或者使用 ALTER FRAGMENT 语句将表移动到另一个数据库空间。对于变更表的放置,ALTER FRAGMENT 语句提供了最简单的方法。然而,在数据库服务器处理变更时,该表不可用。 每次调度表或分段的移动时,应使受影响的用户达到最少。
对于将表在数据库空间之间进行移动,还有其他方法:
使用 LOAD 和 UNLOAD、onload 和 onunload 或 HPL 在数据库之间移动表涉及以下周期:数据从表中复制到磁带,然后重新装入系统。这些周期中显示的窗口非常脆弱,在此期间某个表可能会变得与数据库的剩余部分不一致。 为了防止表变得不一致,在发生数据传送时,必须限制对磁盘上剩余版本的访问。
根据大小、分段存储策略和与表相关联的索引,卸载然后重新装入表可能会比改变分段存储要快。 而对于其他表,可能是改变分段存储快。 对于要移动或者重新分区的表,您可进行试验,以确定哪种方法更快。