暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

达梦备份恢复

原创 💨 狒狒啊 2023-12-19
1886

一、物理备份还原

 

1、冷备

 

(1)使用DM控制台工具console备份

 

(2)使用dmrman工具进行备份

 

2、热备

 

(1)开启归档

 

(2)联机备份

 

3、还原恢复

 

(1)表联机还原,需要通过执行sql语句还原

 

(2)DM控制台工具还原,需要关闭数据库服务

 

(3)dmrman工具,需要关闭数据库服务

 

二、逻辑备份还原

 

1、逻辑导出

 

(1)DM管理工具导出

 

(2)命令行导出

 

2、逻辑导入

 

(1)DM管理工具导入

 

(2)命令行导入

 

三、故障模拟

 

数据库的备份还原,简单来说,就是将某个时间的数据库备份起来,当数据库发生故障时,可以将数据库还原到备份时的可用的状态。

 

DM备份:本质就是从数据库文件中拷贝出有效的数据页保存到备份集中。

 

DM还原和恢复:备份的逆过程。还原是将备份集中的数据内容(数据文件、数据页、归档文件)重新写入目标数据文件的过程。恢复则是通过重做归档日志,将数据库恢复到备份结束时的状态,也可以恢复到指定的时间点和LSN。

 

归档和归档日志

 

在数据库备份过程中,如果数据库正在运行,这期间的数据库操作并不会都立即体现到数据文件中,而是首先以日志的形式写入到归档日志,因此,为了保证用户可以通过备份集将数据恢复到备份结束时间点的状态,就需要将备份过程中产生的归档日志也保存到备份集中。

 

DM备份和恢复过程都依赖归档日志,归档日志是保证数据一致性和完整性的重要保障。当出现介质故障,如磁盘损坏时,利用归档日志,可以将数据库系统恢复之故障发生的前一刻,也可以还原到指定的时间点。

 

 

一、物理备份还原

物理备份:在该过程中,不关心数据页的具体内容,也不关心数据页的位置,而是直接扫描数据库文件,找出已分配和使用的数据页。

 

物理还原:物理备份的逆过程,通过dmrman工具或sql语句,将备份集中的数据内容重新写入目标文件。

 

DM备份按数据库状态可以分为脱机和联机:

 

脱机备份:数据库处于关闭状态时进行备份操作,即冷备。

 

联机备份:数据库处于运行状态,并正常提供数据库服务情况下进行备份操作,即热备。

 

1、冷备

 

可使用DM控制台工具或dmrman进行

 

前提条件:关闭数据库服务,开启dmap服务

 


 

(1)使用DM控制台工具console备份

 

指定备份集目录和备份名,执行完全备份

 


 

 

新建备份成功

 


 

(2)使用dmrman工具进行备份

 

指定备份集目录/dm8/backup

 

RMAN> backup database '/dm8/data/DAMENG/dm.ini' backupset '/dm8/backup';

 


 

2、热备

 

可使用DM管理工具或sql语句进行

 

前提条件:开启数据库服务和dmap服务,且启动dmap的用户和启动DM服务的用户必须一致,否则会导致备份失败

 

这里都使用dmdba用户开启

 


 

由于数据库时处于运行状态的,所以需要开启归档,前面有提到归档日志是数据一致性和完整性的重要保障。

 

(1)开启归档

两种方法,二选一即可

 

1)DM管理工开启归档

 

右键打开管理服务器,点击系统管理将服务器转换为配置状态,点击归档配置开启归档,配置完成后将需要服务器转换为打开状态


 


 

2)sql语句开启归档

 

alter database mount;

 

alter database archivelog;

 

alter database add archivelog 'DEST=/dm8/data/DAMENG/bak, TYPE=LOCAL, FILE_SIZE=64, SPACE_LIMIT=0';

 

alter database open;

 

 

 

查看数据库是否处于归档模式:select name,arch_mode from v$database;

 


 

 

(2)联机备份

1)DM管理工具备份

 

全库备份:manager-左侧栏备份-库备份,右键新建备份

 

可以指定备份集目录和备份名,可以选择备份类型,这里均为默认,默认路径/dm8/data/DAMENG/bak

 


 

此处报错,收集到的归档日志不连续

 


 

重启服务器,或运行checkpoint(100); 可解决

 

 

表备份:manager-左侧栏备份-表备份,右键新建备份

 


 

表空间备份:manager-左侧栏备份-表空间备份,右键新建备份

 


 

可以看到生成的备份文件

 


 

2)disql备份

 

这里分别执行了数据库备份、表空间备份、表备份

 

backup database full backupset '/dm8/bak/full';  #库备份

 

backup tablespace MAIN full backupset '/dm8/bak/tablespace';  #表空间备份

 

backup table EMPLOYEE backupset '/dm8/bak/table';  #表备份

 

也可备份到默认路径:SQL> backup database full;  #/dm8/data/DAMENG/bak

 


 

3、还原恢复

脱机还原:数据库处于关闭时进行还原操作,通过dmrman工具或DM控制台工具进行,数据库/表空间/归档备份,可以执行脱机还原。

 

联机还原:数据库处于运行状态下,通过SQL语句执行还原操作,表还原可以在联机状态下进行。

 

注意:DM仅支持表的联机还原,其他还原操作均需在脱机状态下进行

 

(1)表联机还原,需要通过执行sql语句还原

 


 

(2)DM控制台工具还原,需要关闭数据库服务

指定搜索目录配置备份路径,这里配置了前面所有备份过的路径

 


 

配置完成路径后,点击获取备份,选择需要还原的文件,然后依次还原、恢复、更新魔数  

 


 

这里进行库还原,需要选择还原类型

 




 

(3)dmrman工具,需要关闭数据库服务

RMAN> restore database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/bak/full';

 


 

RMAN> recover database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/bak/full';

 

 

RMAN> recover database '/dm8/data/DAMENG/dm.ini' update db_magic;

 


 

二、逻辑备份还原

逻辑备份:利用manager工具或dexp导出工具,将指定对象(库级、模式级、表级)的数据导出到文件的备份方式,逻辑备份针对的是数据内容,并不关心这些数据物理存储在什么位置。

 

逻辑还原:物理备份的逆过程,使用dimp工具,将dexp导出的备份集重新导入到数据库中。

 

1、逻辑导出

创建文件mkdir /dm8/dexp

 

(1)DM管理工具导出

右键数据库-导出


 


 

(2)命令行导出

./dexp SYSDBA/SYSDBA directory=/dm8/dexp file=full.dmp full=y log=full.log

 


2、逻辑导入

(1)DM管理工具导入

右键数据库-导入,选择前面导出的文件目录

 



(2)命令行导入

./dimp SYSDBA/SYSDBA directory=/dm8/dexp file=full.dmp full=y log=full_dimp.log

 


 

三、故障模拟

这里进行一个简单的故障模拟

 

删除数据文件SYSTEM.DBF,然后重启数据库,可以看到数据库启动失败,原因是数据文件/dm8/data/DAMENG/SYSTEM.DBF不存在


接下来使用dmrman工具,依次进行数据库的还原、恢复、更新魔数

再去启动数据库,启动成功,此时数据库就恢复到了故障之前的状态



 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论