一个AdaptiveServerAnywhere的数据库由数据库文件组成。数据库又分为主数据库文件、事务日志、镜像事务日志、临时文件和数据库空间(dbspaces)。创建一个ASA数据库即是根据你的命令来创建相关文件并初始化他们。所以,我们先来看看各个文件是怎么回事儿:
主数据库文件:它是数据库信息的核心部件。通常的扩展名是.db,当然你也可以指定为别的。里面存储着关于本数据库的系统数据,例如表的定义、用户名、权限等。当然,主数据库文件里面也可以存储用户数据,如销售、客户、库存等。基本上所有数据库系统的主数据库文件或主数据库的信息都差不多。它是创建ASA数据库必需要的文件。
事务日志文件:该文件保存对数据库进行的更改记录,并且是恢复和复制必需的。通常,其扩展名为.log。其并非创建ASA数据库所必需的文件,但我们依然从数据恢复和性能等角度考虑强烈推荐您使用事务日志文件。在复制环境下,必须创建事务日志文件。当然,在创建事务日志文件时,可以将数据文件和日志文件分别放在不同的磁盘设备上。缺省情况下,事务日志和主数据库文件同目录。
镜像事务日志:为了更加安全起鉴,您可以为事务日志创建镜像副本。该文件的扩展名通常为.mlg。
临时文件:数据库服务器使用临时文件保存数据库会话过程中所需的信息。和其他数据库一样,临时文件同样负责为诸如排序和连接的工作提供空间。临时文件在缺省情况下会驻留在主数据库文件所在目录。但与其他数据库文件不同的是,数据库引擎在需要的时候方创建临时文件,并在引擎关闭时删除。当然,你也可以通过环境变量改变临时文件的驻留位置。ASA数据库引擎会依次检查ASTMP、TMP、TMPDIR、TEMP环境变量来确定临时文件的位置。
数据库空间(dbspaces):你可以考虑不将所有的用户数据存放在主数据库文件中。这时,你需要数据库空间的帮忙。这些文件通常也有.db的扩展名。在外部看来,他们和主数据库文件是统一的一个逻辑数据库。一个数据库可以最多拥有12个dbspaces。他们可以帮助提升性能,但需要注重的是,数据库空间中不能存放系统信息(例如,系统表)。
在SQLAnywhere9中,每个数据库文件最多可容纳256,000,000个页面,数据库可选择的页面大小为2K、4K、8K、16K和32K。所以,每个数据库的最大尺寸可能不一样。必须要注重,有的操作系统对文件大小有限制。在WindowsNT/2000/XP、Solaris和HP的平台上,操作系统对文件大小并无限制。