备份和还原

Posted 莫得感情的肝帝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了备份和还原相关的知识,希望对你有一定的参考价值。

物理备份还原

物理备份:分为联机备份(热备)和脱机备份(冷备);完全备份和增量备份。

完全备份:备份指定的数据库或者表空间的全部数据。

增量备份:是指在一次全备或增备后,以后每次的备份只需要备份与前一次相比增加或者被修改的数据页。

 

脱机备份可通过console控制台工具和DMRMAN命令行的方式进行备份,联机备份可通过达梦Manager管理工具和使用SQL命令的方式进行备份

 

一、脱机备份与还原

不需要开启归档,针对整库做备份,需要开启dmap服务

1使用conclose工具

  • 关闭数据库实例

使用DM服务查看器关闭要备份的实例

  • 在console工具中新建备份

填写路径和备份集名

  • 获取备份

  • 点击还原,设置相关信息

 

  • 数据库还原后,进行恢复和更新DA_Magic(表空间等还原不需要)

最后数据恢复完成

 

2、使用dmrman

  • 关闭数据库实例

ps -ef | grep dmserver

  • 备份数据库(全量备份)

进入bin目录使用dmrman工具。

RMAN> backup database \'/home/dmdba/dmdbms/data/DAMENG/dm.ini\' backupset \'/home/dmdba/dmdbms/data/bak/bak20201223\';

  • 检查数据库备份

RMAN> check backupset \'/home/dmdba/dmdbms/data/bak/bak20201223\';

  • 还原数据库

RMAN> restore database \'/home/dmdba/dmdbms/data/DAMENG/dm.ini\' from backupset \'/home/dmdba/dmdbms/data/bak/bak20201223\';

  • 恢复数据库

RMAN> recover database \'/home/dmdba/dmdbms/data/DAMENG/dm.ini\'from backupset \'/home/dmdba/dmdbms/data/bak/bak20201223\';

  • 更新magic

RMAN> recover database \'/home/dmdba/dmdbms/data/DAMENG/dm.ini\' update db_magic;

 

二、联机备份与还原

需要开启归档,数据库需要联机可以备份数据库、表空间、表、归档日志文件

 

1、开启归档

(1)使用达梦管理工具

-- 查看是否归档    

select arch_mode from v$database;

N表示未开启

  • 打开本地归档

切换状态为配置模式。

最后再把状态切换为open

select arch_mode from v$database;再次查看,归档模式开启。

 

(2)使用disql开启归档

# 修改数据库状态为mount

ALTER DATABASE MOUNT;

# 配置本地归档

alter database add archivelog \'type=local,dest=/home/dmdba/dmdbms/arch,file_size=64,space_limit=0\';

# 开启归档模式

alter database archivelog;

# 修改数据库为OPEN状态

alter database open;

(3)手动配置归档

将dm.ini里面的额ARCH_INI参数置为1

vi /home/dmdba/dmdbms/data/DAMENG/dmarch.ini

[ARCHIVE_LOCAL1]

ARCH_TYPE = LOCAL

ARCH_DEST = /home/dmdba/dmdbms/data/DAMENG/arch

ARCH_FILE_SIZE = 128

ARCH_SPACE_LIMIT = 0

 

2、备份和还原

(1)使用管理工具

只有表备份才支持联机还原

表备份及还原:

库备份及还原:

 

库和表空间都需要脱机还原。

所以关闭实例,进行脱机还原。

然后依次进行还原、恢复、更新db_magic

热备支持恢复到某个时间点

 

 

使用SQL语句

备份表空间

backup tablespace MAIN to ts_main_bak backupset \'/home/dmdba/dmdbms/data/DAMENG/bak/ts_main_bak\';

还原表空间:

还原表空间的时候默认会应用所有归档日志不能做不完全恢复,所以,你备份后删除表的记录,也会记录下来,恢复后表空间里的表还是修改或删除后的状态。

以上是关于备份和还原的主要内容,如果未能解决你的问题,请参考以下文章

JAVA程序怎样实现Oracle数据库备份和还原

MySQL如何备份与还原

MySQL的备份与还原,非常规备份,全量备份,增量备份

怎么备份和还原mysql数据库

达梦数据库的备份和还原

SQL数据库备份后还原的时候提示所用路径不对是为啥呀