数据库的本地归档,必须要配置,不然数据库无法提供备份功能。
本地归档
DM服务器可以运行在归档模式或非归档模式下。如果是归档模式,联机日志文件中的内容保存到硬盘中,形成归档日志文件;如果是非归档模式,则不会形成归档日志。
采用归档模式会对系统的性能产生影响,然而系统在归档模式下运行会更安全,当出现故障时其丢失数据的可能性更小,这是因为一旦出现介质故障,如磁盘损坏时,利用归档日志,系统可被恢复至故障发生的前一刻,也可以还原到指定的时间点,而如果没有归档日志文件,则只能利用备份进行恢复。
本地归档的配置参数
通过dm.ini和dmarch.ini可以配置本地归档。dmarch.ini为本地归档的配置文件,但其生效的前提是dm.ini中的参数ARCH_INI置为1。
本地归档的配置方法
归档配置有两种方式:数据库服务器未启动的情况下,手动编写dmarch.ini;启动数据库服务器情况下使用SQL语句也可完成dmarch.ini配置。
1. 停止服务时的配置方法
DM7的dmarch.ini可以进行本地归档和远程归档的设置,其中远程归档在数据守护和MPP中使用,不是本文的讨论内容,DM备份与还原过程中使用的日志均为本地归档日志。
dmarch.ini中与备份还原相关的配置参数及其介绍见下表。
表3.1 dmarch.ini相关配置项
配置项 | 配置含义 |
---|---|
[ARCH_NAME] | REDO日志归档名 |
ARCH_TYPE | REDO日志归档类型,LOCAL表示本地归档 |
ARCH_DEST | 归档文件存放路径 |
ARCH_FILE_SIZE | 单个REDO日志归档文件大小,取值范围(64M~2048M),缺省128M |
ARCH_SPACE_LIMIT | REDO日志归档空间限制,当所有本地归档文件达到限制值时,系统自动删除最老的归档文件。0表示无空间限制,取值范围(1024M~4294967294M),缺省为0。 |
例如,手动配置dmarch.ini,之后保存在dm.ini所在的目录。内容如下:
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = c:\dmdbms\arch
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 2048
手动修改dm.ini中ARCH_INI=1,启动达梦数据库,即本地归档配置完成。
2. 联机服务运行时的配置方法
在DM服务器运行时,可以使用SQL语句配置归档日志。需要注意的是,在使用SQL语句进行归档配置之前,应先将数据库由OPEN状态设置为MOUNT状态。配置完毕后再从MOUNT状态改回OPEN状态。
使用SQL语句配置本地归档日志的语法如下:
例如,使用SQL语句增加一个本地归档日志文件配置,语句如下。
ALTER DATABASE MOUNT;
ALTER DATABASE ADD ARCHIVELOG 'DEST = c:\dmdbms\arch, TYPE = local, FILE_SIZE = 1024, SPACE_LIMIT = 2048';
ALTER DATABASE OPEN;
数据库服务器启动情况下,可使用SQL语句启动本地归档,也需要先将数据库由OPEN状态设置为MOUNT状态,配置完毕后再从MOUNT状态改回OPEN状态。 使用SQL语句开启归档,语句如下:
ALTER DATABASE MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
至此,达梦数据库两种配置本地归档的方式介绍完了。本地归档对数据库非常重要,一定要开启。