注册
达梦数据库(dm8)的全库备份和完全还原恢复
培训园地/ 文章详情 /

达梦数据库(dm8)的全库备份和完全还原恢复

ジ小張没有零花ᯤ⁶ᴳ 2022/11/28 2314 0 1

冷备

需停止服务器的服务,才能进行的备份;

热备

不需要停止服务器服务,就可备份;

备份前期准备

我的达梦安装目录为 /dm8目录,存放数据库的文件夹为 /dm8/data目录,备份集存放目录/dm8/backup,存放归档日志路径/dm8/arch,记得这些目录权限都得是dmdba用户的。(文件夹命名看个人习惯)

创建文件名

用dmdba账号创建文件夹arch和backup,data安装自带

[root@kylin01~]$ su dmdba
[dmdba@kylin01~]$ cd /dm8
[dmdba@kylin01 dm8]$ mkdir arch
[dmdba@kylin01 dm8]$ mkdir backup

冷备

注意:如果图形化打不开请执行以下命令,且需要启动DmAP服务。

[root@kylin01mnt]# xhost + 
access control disabled, clients can connect from any host
[root@kylin01 mnt]# echo $DISPLAY
:0.0
[root@kylin01 mnt]# su - dmdba
[dmdba@kylin01 ~]$ export DISPLAY=:0.0   //这里“=”后面的值为上条命令查询的值
[dmdba@kylin01 ~]$ xhost +
access control disabled, clients can connect from any host
[dmdba@kylin01 ~]$ cd /dm8/bin
[dmdba@kylin01 bin]$ ./DmAPService status  //查看达梦ap服务是否开启
DmAPService (pid 9717) is running.  //如果未启动请执行 ./DmAPService start

(1) 冷备前需要停止数据库服务,且需开启DmAP服务:

[root@kylin01 ~]$ su dmdba
[root@kylin01 ~]$ cd /dm8/bin
[dmdba@kylin01 bin]$ ./DmServiceDMSERVER status  // DmService+DMSERVER(你数据库的实例名)+status:查看状态;start:启动;stop:停止;restart:重启
DmAPService (pid 9717) is running.     //说明启动中
[dmdba@kylin01 bin]$ ./DmServiceDMSERVER stop

(2) 执行冷备

[dmdba@kylin01 ~]$ cd /dm8/bin  
[dmdba@kylin01 bin]$ ./dmrman 
 
RMAN> backup database '/dm8/data/DAMENG/dm.ini' backupset '/dm8/backup';  //备份到指定的目录
RMAN> exit

热备

(1)启动数据库服务,DmAp服务也必须是启动着的。

[root@kylin01 ~]$ su dmdba
[root@kylin01 ~]$ cd /dm8/bin
[dmdba@kylin01 bin]$ ./DmServiceDMSERVER start  //启动数据库服务
Starting DmServiceDMSERVER:              [ok]

(2)开启归档模式

[dmdba@kylin01 bin]$ ./disql sysdba/你的数据库密码@LOCALHOST:5236 //连接本地端口为5236的数据库
 
disql V8
 
SQL> alter database mount;  //数据库设为配置状态
SQL> alter database add archivelog 'type=local,dest=/dm8/arch,file_size=80,space_limit=0';
SQL> alter database archivelog;
SQL> alter database open; //数据库设为打开状态
SQL> exit

(3)执行热备,如果执行下面报错为“归档日志不连续”的话,请重新启动数据库服务,再执行以下操作。

[dmdba@kylin01 bin]$ ./disql sysdba/你的数据库密码@LOCALHOST:5236 //连接本地端口为5236的数据库
SQL> backup database full backupset '/dm8/backup/full2';    //备份到指定路径full2为备份文件名
SQL> exit

还原恢复

注意:需执行四步方可达到完全恢复的效果。检查–>还原–>恢复–>更新

(1)停掉数据库服务

[dmdba@kylin01 ~]$ cd /dm8/bin
[dmdba@kylin01 bin]$ ./DmServiceDMSERVER stop  //关闭服务

(2)检查备份集是否可以使用。

[dmdba@kylin01 bin]$ ./dmrman 
dmrman V8
RMAN> check backupset '/dm8/backup';  //检验备份集是否可用
check backupset successfully. time used: 46.671(ms)  //successfully可正常使用

(3)还原、恢复、更新(一步都不能少,否则启动数据库服务的时候会报错)

[dmdba@kylin01 bin]$ ./dmrman 
dmrman V8
 
RMAN> restore database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/backup'; //还原备份集
RMAN> recover database '/dm8/data/DAMENG/dm.ini' with archivedir '/dm8/arch'; //通过归档日志完全恢复
RMAN> recover database '/dm8/data/DAMENG/dm.ini' update db_magic   //更新db_magic

(4)重启数据库服务,这样就完成了数据库的备份还原操作

[dmdba@kylin01 ~]$ cd /dm8/bin
[dmdba@kylin01 bin]$ ./DmServiceDMSERVER start  //开启服务
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服