当前位置: 首页 > news >正文

【赵渝强老师】达梦数据库的归档模式

1

达梦数据库的备份与恢复都需要使用到重做日志文件。在默认的情况下,达梦数据库采用的非归档模式。通过执行下面的语句可以查看当前数据库实例的日志模式。

SQL> select arch_mode from v$database;#输出的信息如下:
行号     		ARCH_MODE
---------- ---------
1          	N# 提示:这里输出的N表示的是非归档模式。

由于在非归档模式下,重做日志文件会发生覆盖的情况,从而造成数据的丢失。因此,达梦数据库强烈建议在生产数据库环境中,将数据库的日志模式配置为归档模式。归档日志是保证数据一致性和完整性的重要保障。配有归档日志的数据库系统在出现故障时丢失数据的可能性更小,这是因为一旦出现介质故障如磁盘损坏时,利用归档日志,系统可被恢复至故障发生的前一刻,也可以还原到指定的时间点。

一、本地归档与远程归档

1.1 本地归档

重做日志文件Redo的本地归档就是将重做日志写入到本地归档日志文件的过程。配置本地归档情况下,Redo日志刷盘线程将Redo日志写入联机Redo日志文件后,并由专门的归档线程负责写入本地归档日志文件中。归档后的重做日志文件不会被覆盖,会一直保留到用户将其主动删除。如果配置了归档日志空间上限,系统会自动删除最早生成的归档Redo日志文件;当磁盘空间不足时,系统将自动挂起,直到用户主动释放出足够的空间后继续运行。

达梦数据库提供了以下两个函数用于删除归档日志:按指定的时间或指定的lsn删除归档日志的系统函数:

sf_archivelog_delete_before_time:按指定的时间删除归档日志
sf_archivelog_delete_before_lsn:按指定的lsn删除归档日志

1.2 远程归档

重做日志文件Redo的远程归档就是将归档目录配置在远程节点上,远程归档专门用于DMDSC(达梦共享数据库集群)环境中。远程归档采用双向配置的方式,双向配置远程归档就是两个节点将自己的远程归档相互配置在对方机器上。集群中所有的节点,都拥有一套包括所有节点的,完整的归档日志文件。

二、【实战】开启达梦数据的归档模式

由于本地归档和远程归档是异步将重做日志信息写入归档日志文件的。因此,重做日志redo在写入联机日志文件后,再由专门的归档线程负责将日志写入归档日志文件。

提示:这里以设置本地归档日志为例。
image.png
点击这里查看视频讲解:【赵渝强老师】开启达梦数据的归档模式

通过执行以下SQL命令可以开启达梦数据的归档模式。

(1)查看当前数据库实例的状态。

SQL> select STATUS$ from v$database;# 输出的信息如下:
行号     		STATUS$    
---------- -----------
1          		4# 提示:4表示数据库实例处于Open状态。

(2)将数据库切换到mount状态,并查看数据库的状态。

SQL> alter database mount;
SQL> select STATUS$ from v$database;# 输出的信息如下:
行号     		STATUS$    
---------- -----------
1          		3# 提示:3表示数据库实例处于Mount状态。

(3)切换数据库的日志模式

SQL> alter database archivelog;

(4)创建归档路径。

mkdir -p /home/dmdba/dmdbms/data/DAMENG/arch

(5)设置数据库的归档路径。

SQL> alter database add archivelog 'type=local,dest=/home/dmdba/dmdbms/data/DAMENG/arch,file_size=64,space_limit=0';# 提示:File_size是归档文件的大小64M,space_limit表示没有空间限制。

(6)打开数据库。

SQL> alter database open;

(7)查看数据库的日志模式。

SQL> select arch_mode from v$database;#输出的信息如下:
行号     		ARCH_MODE
---------- ---------
1          		Y

(8)查看生成的归档日志文件。

tree /home/dmdba/dmdbms/data/DAMENG/arch#输出的信息如下:
/home/dmdba/dmdbms/data/DAMENG/arch
└── ARCHIVE_LOCAL1_0x1F8C9F0_EP0_2025-03-11_11-03-11.log
http://www.jsqmd.com/news/99946/

相关文章:

  • vue基于Springboot框架“智慧云党建”主题学习网站设计与实现_a06a74kk
  • Langflow与DeepSeek融合:低代码构建智能AI工作流
  • Linly-Talker:开源数字人能否撼动Synthesia?
  • 哈哈哈哈哈哈
  • vue基于spring boot的学生宿舍分配报修管理系统
  • 流量监控前端不显示问题
  • 2025纸盘机设备全景名录:纸盘机、纸杯机、制杯机及全伺服纸杯机厂家全涵盖 - 品牌2026
  • 因为研究平台arm,RK3588交叉编译误把我笔记本X86平台的/x86_64-linux-gnu文件删除,导致联想拯救者笔记本中的ubuntu系统损坏
  • 星巴克、库迪等大牌点餐如何对接api接口?
  • 弹论:为投资者打造稳定投资之路
  • 利用Proxifier、Burp Suite和亮数据高效抓包
  • 【LLM基础教程】语言模型基础
  • YOLO-v5论文的10个核心创新点解析
  • ComfyUI入门与插件使用全指南
  • C语言:枚举体
  • 小程序管理后台项目
  • 【LLM基础教程】统计语言模型N-gram
  • Nigx配置
  • 【赵渝强老师】OceanBase租户的资源管理
  • gpt-oss-20b RESTful API设计与集成指南
  • 教育场景适用吗?LobeChat作为教学辅助工具的潜力
  • 【玩转全栈】----Django根本设置和介绍
  • 2025/12/16英语打卡
  • GPT-SoVITS音色相似度优化技巧:提升克隆真实感
  • 项目实践11—全球证件智能识别系统(切换为PostgreSQL数据库)
  • PaddlePaddle语音识别套件实践:集成github镜像提升模块加载效率
  • 2025 年纸碗成型设备实力厂家推荐 (12 月更新):纸杯机、制杯机、全伺服纸杯机、纸碗机、杯盖机等全品类制造商盘点 - 品牌2026
  • Java集合操作(List、Set、Map)
  • MiniCPM-V2.5微调中的CUDA依赖问题解决
  • LobeChat能否支持图表生成?数据可视化回答呈现