达梦数据库新库还原全量+归档数据

达梦数据库热备份全量数据还原+归档还原

第一步:准备工作

1、在新服务器上创建接受数据的文件夹

mkdir -p /data/dmrestore/

2、数据传输,在旧服务器上执行命令(备份数据复制到新数据库中)

scp -r /data/dmbackup/full_20260725 dmdba@192.168.99.169:/data/dmrestore/
 
scp -r /data/dmbackup/arch_20260725 dmdba@192.168.99.169:/data/dmrestore/
 
3、在新服务器上执行修改权限
chown -R dmdba:dinstall /data/dmrestore
chmod -R 755 /data/dmrestore
 
4、新服务器上确认文件已到位
ls -lh /data/dmrestore/full_20260725
 
第二步:执行还原操作
1、先暂停数据库服务

重启:[dmdba@bin]# /data/dmdbms/bin/DmServiceDMS restart

停止:[dmdba@bin]# /data/dmdbms/bin/DmServiceDMS stop

启动:[dmdba@bin]# /data/dmdbms/bin/DmServiceDMS start

2、进入bin 目录(不知道目录位置执行命令【find / -name dm.ini 2>/dev/null】)

/data/dmdbms/bin  

3、进入sql命令行

./dmrman

4、全量备份校验

  RMAN> CHECK BACKUPSET '/data/dmrestore/full_20260725';

✅ 返回 `SUCCESS` 继续,失败则备份集损坏需重新备份。

5、归档备份校验

  RMAN> CHECK BACKUPSET '/data/dmrestore/arch_20260725';

✅ 返回 `SUCCESS` 继续,失败则备份集损坏需重新备份。

6、全量数据库还原

  RMAN> RESTORE DATABASE '/data/dmdata/DAMENG/dm.ini' FROM BACKUPSET '/data/dmrestore/full_20260725';

返回成功后代表已经还原成功了。

7、归档数据还原

(1)创建归档数据提取目录(root角色下执行)

  # 创建目录(递归创建,确保父目录也存在)
  mkdir -p /data/dmdata/DAMENG/arch/

  # 赋予 dmdba 用户权限
  chown -R dmdba:dinstall /data/dmdata/DAMENG/arch/
  chmod -R 755 /data/dmdata/DAMENG/arch/

(2)提取归档数据

  RMAN> RESTORE ARCHIVELOG FROM BACKUPSET '/data/dmrestore/arch_20260725' TO ARCHIVEDIR '/data/dmdata/DAMENG/arch/' OVERWRITE 2;

  (3)  归档数据进行还原

  RMAN> RECOVER DATABASE '/data/dmdata/DAMENG/dm.ini' WITH ARCHIVEDIR '/data/dmdata/DAMENG/arch/';

8、将全量备份之后的所有事务追平,数据库达到一致性状态。

  RMAN> RECOVER DATABASE '/data/dmdata/DAMENG/dm.ini' UPDATE DB_MAGIC;

9、退出sql模式

  RMAN> exit;

10、重启数据库服务

  /data/dmdbms/bin/DmServiceDMS start

posted @ 2026-07-25 14:45  PHP小媛  阅读(19)  评论(0)    收藏  举报