Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » SQL Anywhere 服务器 - 数据库管理 » 启动并连接到数据库 » 使用数据库文件

 

使用附加 dbspace

通常是大数据库所需的

对于大多数数据库来说,单个数据库文件就已足够。但是,对于大数据库的用户来说,附加数据库文件有时是必需的。附加数据库文件还是将相关信息聚集在独立文件中的方便工具。

当您初始化某个数据库时,它包含一个数据库文件。这第一个数据库文件称为主文件系统 dbspace。缺省情况下,所有数据库对象和所有数据都放在主文件中。

dbspace 是一个为数据创建更多空间的附加数据库文件。一个数据库可以包含在多达 13 个独立文件(一个主文件和 12 个 dbspace)中。每个表及其索引必须包含在单个数据库文件中。SQL 命令 CREATE DBSPACE 可将新文件添加到数据库中。

临时表只在临时 dbspace 中创建。

有多种方法可指定于其中创建基表或其它数据库对象的 dbspace。在以下列表中,位置靠前的方法所指定的位置优先于位置靠后的方法所指定的位置。

  1. IN DBSPACE 子句(如果已指定)

  2. default_dbspace 选项(如果已设置)

  3. 系统 dbspace

如果 dbspace 名称包含一个句点并且未加上引号,则数据库服务器为此名称生成一个错误。

每个数据库文件最大允许有 228(约 2 亿 6 千 8 百万)数据库页。例如,使用页面大小为 4 KB 的数据库创建的数据库文件最大可增至 1 TB (228*4 KB)。但是,实际上,在其中创建文件的物理文件系统所允许的最大文件大小会对可允许的最大大小产生很大的影响。

尽管一些旧的文件系统将文件大小限制为最大不超过 2 GB,但是许多文件系统(如使用 NTFS 文件系统的 Windows 文件系统)允许利用完整的数据库文件大小。如果数据库中放置的数据量超过最大文件大小,就有必要将数据分成多个数据库文件。而且,您可能因大小限制以外的原因(例如聚簇相关对象)而想要创建多个 dbspace。

有关支持的操作系统所允许的最大文件大小的信息,请参见SQL Anywhere 大小和数量限制

您可以使用 sa_disk_free 系统过程获取有关 dbspace 可用空间的信息。请参见sa_disk_free_space 系统过程

SYSDBSPACE 系统视图包含有关用于数据库的所有 dbspace 的信息。请参见SYSDBSPACE 系统视图

 拆分现有的数据库

对 dbspace 的权限
创建 dbspace
文件为数据库预分配空间
删除 dbspace