ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

达梦数据库归档日志详解

2026/8/15 3:46:03 拓冰建站 浏览量
达梦数据库归档日志详解 一、归档日志文件概述1达梦数据库可以运行在归档状态或者非归档状态下。2归档模式下运行联机日志文件中的内容将被保存至硬盘形成归档日志文件3非归档模式运行则不会形成归档日志。4采用归档模式会对系统的性能造成些许的影响但是数据库运行在归档模式下数据会更加安全。5当出现故障的时候数据丢失的可能性会更小因为一旦出现介质故障如磁盘损坏时可以利用归档日志将数据库恢复到发生故障的前一刻也可以指定时间点还原而如果没有开启归档则只能利用备份文件的数据进行还原。6开启归档后可以支持数据库的备份热备、集群搭建以及归档挖掘等功能二、开启归档达梦数据库开启数据库本地归档通常通过以下两种方式配置方式一通过 SQL 命令方式开启归档数据库实例启动方式二通过修改数据库配置文件方式开启归档数据库实例未启动方式三通过达梦客户端工具开启归档数据库实例启动不管是手动配置还是SQL命令方式都是在干两个事在dm.ini中开启dmarch_ini参数新增dmarch.ini文件。方式一sql语句开启归档1、提前建好存储归档的目录以及权限以归档目录/data//dmserver/dmarch举例[rootAAAA ~]# mkdir /data/dmserver/dmarch [rootAAAA ~]# chown dmdba.dinstall /data/dmserver/dmarch/ [rootAAAA ~]# chmod -R 755 /data/dmserver/dmarch/复制2、查询当前实例归档是否开启SQL select name,arch_mode from v$database; 行号 name arch_mode ---------- ------ --------- 1 DAMENG N 已用时间: 9.130(毫秒). 执行号:601.复制N是未开启Y是已开启3、开启归档日志的sqlALTER DATABASE MOUNT; ALTER DATABASE ARCHIVELOG; ALTER DATABASE ADD ARCHIVELOG DEST/data/dmserver/dmarch, TYPELOCAL, FILE_SIZE1024, SPACE_LIMIT2048; ALTER DATABASE OPEN;复制上面三条语句是有100G归档专用磁盘告警阈值为80%归档上线设置为80Gps: sql语句执行以后会在数据库的实例目录下生成dmarch.ini文件方式二、手动配置归档文件1、修改实例目录的dm.ini文件中的ARCH_INI0 调整成1[rootAAAA ~]# ps -ef|grep dms dmdba 3356 1 4 16:55 ? 00:00:01 /data/dmserver/app/bin/dmserver path/data/dmserver/data/DAMENG/dm.ini -noconsole root 8233 8133 0 16:56 pts/0 00:00:00 grep dms [rootAAAA DAMENG]# cat /data/dmserver/data/DAMENG/dm.ini | grep ARCH_INI ARCH_INI 1 #dmarch.ini复制2、在数据库的实例目录下新建dmarch.ini文件[rootAAAA DAMENG]# cat dmarch.ini #DaMeng Database Archive Configuration file #this is comments ARCH_WAIT_APPLY 0 [ARCHIVE_LOCAL1] ARCH_TYPE LOCAL # Redo日志归档类型 / LOCAL本地归档 ARCH_DEST /data/dmserver/dmarch # Redo日志归档目标 / Local归档文件存放路径 ARCH_FILE_SIZE 1024 # Redo日志归档文件 单个文件大小 / 取值范围 64M - 2048M / 默认 1024M ARCH_SPACE_LIMIT 2048 # Redo日志归档空间限制 当本地归档文件达到限制时系统自动删除最老的归档文件 / 0 无空间限制 / 取值范围 1024M - 4294967294 ARCH_FLUSH_BUF_SIZE 2 ARCH_HANG_FLAG 1复制3、启动数据库实例然后验证SQL select name,arch_mode from v$database; 行号 name arch_mode ---------- ------ --------- 1 DAMENG Y 已用时间: 1.827(毫秒). 执行号:501.复制ARCH_MODEN 表示归档未开启方式三达梦客户端开启归档1、右击服务器点击”管理服务器“2、点击系统管理----状态转换里面选择配置并点击转换3、添加归档目录4、将服务器配置为“打开”模式三、归档相关操作1、归档日志切换语句alter database archivelog current; alter system archive log current; alter system switch logfile;复制2、关闭归档模式ALTER DATABASE MOUNT; ALTER DATABASE NOARCHIVELOG; ALTER DATABASE OPEN;复制3、归档日志清理-- 删除 7 天前的归档日志 select SF_ARCHIVELOG_DELETE_BEFORE_TIME(sysdate-7); -- 删除某个 lsn 之前的归档 select SF_ARCHIVELOG_DELETE_BEFORE_LSN(43502);复制4、相关数据字典-- 显示当前实例的所有归档日志文件信息。 V$ARCHIVED_LOG -- 用来存放归档路径等相关归档参数信息。 V$DM_ARCH_INI -- 查询本地归档日志信息。对DMDSC集群除了显示本地归档外也显示远程归档信息。 V$ARCH_FILE -- 显示当前归档任务队列信息。 V$ARCH_QUEUE -- 用于在主库上查询各备库的日志发送统计信息。 V$ARCH_SEND_INFO -- 查询归档状态信息归档状态是由主库记录和维护的此视图只在主库上查询有效备库上的查询结果没有实际意义。 V$ARCH_STATUS -- 显示备份集的归档信息。 V$BACKUPSET_ARCH -- 查询 V$BACKUPSET_SEARCH_DIRS 显示当前会话已添加的备份目录即备份集搜索目录。若用户没有添加备份目录那么仅显示默认的备份目录。 V$BACKUPSET_SEARCH_DIRS复制2