DB2教程

DB2 表空间

DB2表空间是一种存储结构,其中包含表,索引,大对象和长数据。它可以用于将数据库中的数据组织到与系统上数据存储位置相关的逻辑存储组中。
DB2表空间1
表空间存储在数据库分区组中。

数据库中表空间的优势

表空间具有各种优点:
可恢复性: 表空间可以进行备份和备份。恢复操作更加方便。使用单个命令,您可以备份或还原表空间中的所有数据库对象。
自动存储管理: 数据库管理器根据需要创建和扩展容器。
内存利用率: : 单个缓冲池可以管理多个表空间。您可以将临时表空间分配给它们自己的缓冲池,以提高诸如排序或联接之类的活动的性能。

容器

表空间由一个或多个容器组成。容器可以是目录名称,设备名称或文件名。
在数据库中,单个表空间可以在同一物理存储设备上具有多个容器。如果使用自动存储表空间选项创建表空间,则数据库管理器将自动处理容器的创建和管理。如果不是使用自动存储表空间选项创建的,则需要自己定义和管理容器。

默认表空间

创建新数据库时,数据库管理器为数据库创建一些默认表空间。这些表空间用作用户和临时数据的存储。每个数据库必须至少包含以下三个表空间:
目录表空间 用户表空间 临时表空间
目录表空间: 它包含数据库的系统目录表。它名为SYSCATSPACE,不能删除。
用户表空间: 此表空间包含用户定义的表。在数据库中,我们有一个默认的用户表空间,名为USERSPACE1、如果您在创建表时未指定用户定义的表空间,则数据库管理器将为您选择默认的用户表空间。
临时表空间: 包含临时表数据。该表空间包含系统临时表空间或用户临时表空间。
系统临时表空间保存数据库管理器在执行诸如排序或联接之类的操作时所需的临时数据。一个数据库必须至少具有一个系统临时表空间,并将其命名为TEMPSPACE1、它是在创建数据库时创建的。用户临时表空间保存表中的临时数据。它是使用DECLARE GLOBAL TEMPORARY TABLE或CREATE GLOBAL TEMPORARY TABLE语句创建的。在创建数据库时,默认情况下不会创建此临时表空间。
表空间和存储管理:
表空间可以通过不同方式设置,具体取决于有关如何使用它们的信息。您可以设置操作系统来管理表空间分配,可以让数据库管理器分配空间,也可以选择为数据自动分配表空间。
以下三种托管空间类型可用:
系统管理的空间(SMS): 操作系统的文件系统管理器分配和管理存储表的空间。存储空间按需分配。该模型由代表数据库对象的文件组成。对于用户定义的表空间,此表空间类型在版本10.1中已被弃用,对于目录和临时表空间,则不建议使用此表空间类型。
数据库管理空间(DMS): 控制存储空间。存储空间是根据在创建DMS表空间时指定的容器定义在文件系统上预先分配的。从版本10.1修订包1起,不支持使用用户定义的表空间,但不建议将其用于系统表空间和临时表空间。
自动存储表空间: 可以管理数据库服务器自动。数据库服务器根据数据库上的数据创建和扩展容器。使用自动存储管理,不需要提供容器定义。数据库服务器负责创建和扩展容器,以利用分配给数据库的存储。如果将存储空间添加到存储组,则在现有容器达到最大容量时会自动创建新容器。如果要立即使用新添加的存储,则可以重新平衡表空间。
页面,表和表空间的大小:
临时DMS和自动存储表空间时,您为数据库选择的页面大小将决定表空间大小的最大限制。对于表SMS和临时自动存储表空间,页面大小限制表本身的大小。页面大小可以是4kb,8kb,16kb或32kb。

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4