合 达梦数据库的归档及其命令和图形界面配置
REDO 和归档日志检查
日志文件分为 REDO 日志(联机日志文件)和归档日志文件。DM 数据库可以在归档模式和非归档模式下运行。
- 非归档模式下,数据库会只将重做日志写入 REDO 日志文件中进行存储。
- 归档模式下,数据库会同时将重做日志写入联机日志文件和归档日志文件中分别进行存储表空间及数据文件。
建议
我们强烈建议生产环境运行在归档模式下(默认不开启,需要开启请参考数据库备份章节)。
REDO 日志
在一个 DM 实例中,最少有 2 个 REDO 日志,和数据文件同一个目录,默认每个 256 MB,需要在数据库实例初始化时设定。在数据变动频繁的业务系统中,如果 REDO 日志文件设置的太小,会引起频繁的 REDO 切换,从而有性能上的损耗。
我们建议在 OLTP 业务系统中,设置为 2 GB。初始化实例时,定义 2 GB 的 REDO 日志,如下所示:
1 | ./$DM_HOME/bin/dminit path/opt/dmdbms/data/ page_size=16 log_size=2048 |
也可以对现有实例的 REDO 日志通过数据库客户端进行扩充,如下所示:
1 | ALTER DATABASE RESIZE LOGFILE 'dameng_003.log' to 2048; |
归档日志
系统在归档模式下运行时,会产生归档日志文件,此时系统管理员应该事先预留出足够的磁盘空间以便存储归档日志文件。
我们建议归档文件采用单独的磁盘存放,且不要存放其他文件,以免影响归档空间的上限判断;单个归档的大小设置成和 REDO 日志相同。
归档配置
通过 dm.ini 和 dmarch.ini 可以配置本地归档。dmarch.ini
生效的前提是 dm.ini
中的参数 ARCH_INI
置为 1。dmarch.ini
可以进行本地归档和远程归档的设置,DM 备份与还原过程中使用的日志均为本地归档日志。
dmarch.ini
中与备份还原相关的配置参数及其介绍见下表。
配置项 | 配置含义 |
---|---|
[ARCH_NAME] | REDO 日志归档名 |
ARCH_TYPE | REDO 日志归档类型,LOCAL 表示本地归档,REMOTE 表示远程 |
ARCH_DEST | REDO 日志归档目标,LOCAL 对应归档文件存放路径;REMOTE 对应远程目标节点实例名 |
ARCH_FILE_SIZE | 单个 REDO 日志归档文件大小,取值范围(64 MB~2048 MB),缺省 1024 MB,即 1 GB |
ARCH_SPACE_LIMIT | REDO 日志归档空间限制,当所有本地归档文件达到限制值时,系统自动删除最老的归档文件。0 表示无空间限制,取值范围(1024 MB~4294967294 MB),缺省为 0 |
ARCH_INCOMING_PATH | 仅 REMOTE 归档有效,对应远程归档存放在本节点的实际路径 |
配置本地归档
归档配置有两种方式:一是联机归档配置,数据库实例启动情况下,使用 SQL 语句完成 dmarch.ini
和 ARCH_INI
配置;二是手动配置归档,数据库实例未启动的情况下,手动编写 dmarch.ini
文件和设置参数 ARCH_INI
。下面将分别说明这两种归档如何配置:
联机配置归档
使用 SQL 语句配置本地归档,语法如下:
1 2 3 4 5 6 7 | ALTER DATABASE <ADD|MODIFY|DELETE> ARCHIVELOG <归档配置语句>; <归档配置语句>::= 'DEST = <归档目标>,TYPE = <归档类型>' <归档类型>::=<local 方式>|<remote 方式> <local 方式>::=LOCAL [,FILE_SIZE = <文件大小>] [,SPACE_LIMIT = <空间大小限制>] <remote 方式>::=REMOTE [,FILE_SIZE = <文件大小>] [,SPACE_LIMIT = <空间大小限制>],INCOMING_PATH = <归档存放路径> |