达梦数据库备份、还原与恢复

1 备份与还原的概念和意义

备份的主要目的是用于后备支援,替补使用,是数据容灾的基础,在数据库发生故障时,通过还原备份集,将数据恢复到可用状态,保护数据免受意外的损失,保证数据的安全性。还原与恢复的主要目的是将目标数据库恢复到备份结束时刻的状态。 

2 备份的种类

1、数据库备份可分为物理备份和逻辑备份
        其中物理备份是指从数据库文件中拷贝有效的数据页保存到备份集。逻辑备份是指导出表结构,数据的insert语句等。
2、根据数据库的运行状态, 物理备份又分为联机备份和脱机备份。
        联机备份,也称热备,数据库运行状态下备份;脱机备份,也称冷备,指数据库关闭状态下的备份。
3、根据备份的完整性, 物理备份又分为完全备份和增量备份。
        完全备份是指拷贝所有有效数据页,包含指定数据库和表空间所有数据; 增量备份是在基备份集基础上拷贝修改的数据页
4、增量备份包含累积增量备份和差异增量备份。
        累积增量备份的基础备份是全备的备份集。而差异增量备份的备份集可以是增量备份,也可以是全备。

3 备份还原的使用场景

  •   人为操作造成某些数据丢失或误删除。
  •   软件BUG 造成数据或全部丢失。
  •   硬件故障造成数据部分或全部丢失。
  •   安全漏洞被入侵导致数据被恶意破坏。

4 备份

4.1 物理备份 

4.1.1 联机备份

联机备份需要开归档,需要打开DmAPService服务。

支持库备份、表空间备份、表备份、归档备份。

  • 库备份 
//默认数据库备份,
SQL> backup DATABASE;
操作已执行
已用时间: 00:00:02.994. 执行号:3100.

//联机全量备份
SQL> backup DATABASE full to FULLBAK02 BACKUPSET '/dm8/backup/FULLBAK02';
操作已执行
已用时间: 00:00:02.939. 执行号:3101.

//联机增量备份(默认为差异增量备份)
SQL> backup DATABASE increment to INCRBAK02 BACKUPSET '/dm8/backup/INCRBAK02';
操作已执行
已用时间: 00:00:06.660. 执行号:3102.

//联机增量备份(累计增量备份)
SQL> backup DATABASE increment cumulative to INCRBAK05 BACKUPSET '/dm8/backup/INCRBAK06';
操作已执行
已用时间: 00:00:02.951. 执行号:3200.

 数据库操作步骤:右击备份中的库备份,点击创建备份,填写备份名和备份目录,选择备份类型,点击确定。(创建完成后刷新还是库备份目录下还是看不到刚刚的备份,因为需要指定工作目录才能在库备份目录下显示出来。)

  •  表空间备份 
backup tablespace tbs to TBSFULLBAK01 backupset '/dm8/backup/TBSFULLBAK01';

 

  • 表备份 
backup table t_emp to EMPBAK backupset '/dm8/backup/EMPBAK';
  • 归档备份
backup ARCHIVE LOG ALL to ARCHFULLBAK backupset '/dm8/backup/ARCHFULLBAK';

4.2 脱机备份 

需要关闭数据库。

4.2.1 命令行方式 

[dmdba@localhost FULLBAK01]$ which dmrman
/dm8/bin/dmrman
[dmdba@localhost FULLBAK01]$ cd /dm8/bin
[dmdba@localhost bin]$ dmrman
dmrman V8
RMAN> backup database '/dm8/data/DAMENG/dm.ini' to FULLBAK03 backupset 
'/dm8/backup/FULLBAK03';
backup database '/dm8/data/DAMENG/dm.ini' to FULLBAK03 backupset 
'/dm8/backup/FULLBAK03';
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[1350184], file_lsn[1350184]
Processing backupset /dm8/backup/FULLBAK03
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]
backup successfully!
time used: 00:00:03.603
RMAN>
show 查看备份集
show backupset '/dm8/backup/FULLBAK03';
remove 删除备份集
remove backupset '/dm8/backup/FULLBAK03';
check 检查备份集
check backupset '/dm8/backup/FULLBAK03';

 4.2.2 图形化方式(使用DM控制台工具)

  

5 还原与恢复

 5.1 表空间的还原与恢复

5.1.1 关闭数据库

在root用户下可以使用systemctl stop DmServiceDMSERVER.service命令。

[dmdba@localhost TBS]$ DmServiceDMSERVER stop
Stopping DmServiceDMSERVER: [ OK ]

5.1.2 还原表空间

[dmdba@localhost TBS]$ dmrman
dmrman V8
RMAN> restore database '/dm8/data/DAMENG/dm.ini' tablespace tbs from backupset 
'/dm8/backup/FULLBAK01';
restore database '/dm8/data/DAMENG/dm.ini' tablespace tbs from backupset 
'/dm8/backup/FULLBAK01';
file dm.key not found, use default license!
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[1353641], file_lsn[1353641]
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]
restore successfully.
time used: 00:00:02.666

5.1.3 恢复表空间

RMAN> recover database '/dm8/data/DAMENG/dm.ini' tablespace tbs;
recover database '/dm8/data/DAMENG/dm.ini' tablespace tbs;
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[1353641], file_lsn[1353641]
[Percent:100.00%][Speed:0.00PKG/s][Cost:00:00:00][Remaining:00:00:00]
recover successfully.
time used: 566.197(ms)
RMAN>

 5.2 数据库的还原与恢复

5.2.1 关闭数据库

5.2.2 数据库还原

[dmdba@localhost DAMENG]$ dmrman
dmrman V8
RMAN> recover database '/dm8restore database '/dm8/data/DAMENG/dm.ini' from backupset 
'/dm8/backup/FULLBAK01';
restore database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/backup/FULLBAK01';
file dm.key not found, use default license!
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
[Percent:100.00%][Speed:0.00M/s][Cost:00:00:02][Remaining:00:00:00]
restore successfully.
time used: 00:00:02.694

5.2.3 数据库恢复

RMAN> recover database '/dm8/data/DAMENG/dm.ini' update db_magic;
recover database '/dm8/data/DAMENG/dm.ini' update db_magic;
Database mode = 0, oguid = 0
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
EP[0]'s cur_lsn[1355203], file_lsn[1355203]
recover successfully!
time used: 00:00:01.087

5.2.4 更新数据库魔术

select permanent_magic; --197173148 数据库永久魔数,一旦生成,不会变化
select db_magic; -- 1125316970 数据库魔数,每经过还原与恢复,都会更新一次。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值