当前位置:首页 » 《随便一记》 » 正文

window 下 达梦数据库的备份和还原

23 人参与  2022年11月30日 16:02  分类 : 《随便一记》  评论

点击全文阅读


DM 提供的各种工具进行备份还原与恢复的操作,包括 DIsql工具、DMRMAN 工具、图形化客户端管理工具 MANAGER 和 CONSOLE。

DIsql 工具用于执 行联机的数据备份与数据还原,包括数、归档备份据库备份、表空间备份与还原、表备份与 还原;

DMRMAN 工具用于执行脱机的数据备份、还原与恢复,包括脱机的数据库备份、还原 与恢复,脱机还原表空间,归档的备份、还原与修复;

客户端工具 MANAGER 和 CONSOLE对应命令行工具 DIsql 和 DMRMAN 的功能,分别用于联机和脱机备份还原数据。

这四种工 具都可以独立使用,也可以相互配合,如使用 DIsql 或 MANAGER 工具联机备份的数据库 备份文件可以用 DMRMAN 或 CONSOLE 工具还原。

达梦 对备份与还原进行了哪些支持与限制:

联机备份

对联机备份的支持与限制: 1) MPP 环境仅允许库和归档备份,且各节点都会执行,生成相应的备份集,支持 DDL CLONE; 2)DSC 环境支持库备份、表空间备份和表备份,要求 DSC 环境的所有节点都处于 OPEN

状态; 3) MOUNT 状态仅支持归档备份; 4) SUSPEND 状态所有备份均不支持; 5) OPEN 状态支持所有备份,支持 DDL CLONE; 6) PRIMARY 模式支持所有备份,支持 DDL CLONE; 7) STANDBY 模式仅支持库级、表空间级和归档备份,支持 DDL CLONE; 8) DDL CLONE 必须备份归档,不允许指定 WITHOUT LOG。

联机还原:

仅支持表级还原,对联机还原的支持与限制: 1) MPP 不支持; 2) PRIMARY 支持; 3) MOUNT 支持表空间级还原,SUSPEND 均不支持; 4) OPEN/NORMAL 支持。

 脱机备份

脱机备份支持库级和归档备份。 1) MPP 视同单机环境,仅当前节点执行备份操作; 2) 允许异常退出后备份,支持 DDL_CLONE; 3) DSC 支持库级备份,支持 DDL_CLONE。

脱机还原:

脱机还原跟目标库所处的模式、状态以及集群环境(MPP 和 DSC)无关,允许库级、 表空间级和归档还原。

使用联机执行 SQL 语句进行备份还原

DM 支持通过联机执行 SQL 语句方式对数据库执行备份还原操作。联机方式支持数据库、 用户表空间、用户表和归档的备份,用户表的还原。在进行联机库级备份、归档备份和表空 间备份时,必须保证系统处于归档模式,否则联机备份不能进行。

联机归档配置如下: 
1)修改数据库为 MOUNT 状态。 

SQL>ALTER DATABASE MOUNT; 

2)配置本地归档。 

SQL>ALTER DATABASE ADD ARCHIVELOG 'DEST = /home/dm_arch/arch, TYPE = local, 
FILE_SIZE = 1024, SPACE_LIMIT = 2048'; 

3)开启归档模式。 

SQL>ALTER DATABASE ARCHIVELOG; 

4)修改数据库为 OPEN 状态。 

SQL>ALTER DATABASE OPEN; 

在 DIsql 工具中使用 BACKUP 语句你可以备份整个数据库。通常情况下,在数据库实 例配置归档后输入以下语句即可备份数据库:

1. 打开 dlsql 工具 双击

 2.输入用户名和密码:

SQL>BACKUP DATABASE BACKUPSET 'db_bak_full_11_29_01';

语句执行完后会在默认的备份路径下生成名为“db_bak_01”的备份集目录,默认的备 份路径为 dm.ini 中 BAK_PATH 配置的路径,若未配置,则使用 SYSTEM_PATH 下的 bak目录。这是最简单的数据库备份语句,

 

生成的备份文件:

压缩选项有不同的压缩级别可以选择,取值范围为 0~9。0 表示不压 缩,1 表示 1 级压缩,9 表示 9 级压缩。压缩级别越高,压缩越慢,但压缩比越高。 

压缩备份:

BACKUP DATABASE BACKUPSET 'db_bak_full_11_29_02' COMPRESSED LEVEL 5;

 

数据还原

达梦 仅支持表的联机还原,数据库、表空间和归档日志的还原必须通过脱机工具 DMRMAN

执行。、介绍如何使用 DIsql 工具还原表。

表还原之后不需要恢复操作。DIsql 中输入以下简单的 RESTORE 语句就可还原表:

SQL>RESTORE TABLE TAB_01 FROM BACKUPSET 'tab_bak_01';

使用脱机工具 DMRMAN 进行备份还原

DMRMAN(DM RECOVERY MANEGER)是 DM 的脱机备份还原管理工具,由它来统一负 责库级脱机备份、脱机还原、脱机恢复等相关操作,该工具支持命令行指定参数方式和控制 台交互方式执行,降低了用户的操作难度。

通过 DMRMAN 工具执行脱机操作过程中,仅会使用通过关键字 DATABASE 指定的目标 库的本地归档配置信息,不会对本地归档配置文件中其他类型归档配置信息进行校验

注意: 应使用与 DM 数据库版本配套的 DMRMAN 工具进行操作。当使用 DM7 的

DMRMAN 工具操作 DM8 数据库时,无法检测 DM8 数据库实例是否处于启动 状态。

启动和退出 DMRMAN

安装 DM 数据库后,DMRMAN 可执行程序与数据库其他可执行程序一样位于安装路径的 执行码目录下。比如,LINUX 上数据库的执行码目录为/opt/dmdbms/bin,转到执行码 目录直接在操作系统的命令行中输入以下命令就可启动 DMRMAN。若配置了环境变量

DM_HOME,可直接命令行执行:

./dmrman

启动后控制台中输入 exit 命令即可退出 DMRMAN 环境:

RMAN>exit

 CONFIGURE:查看设置的默认值。 CLEAR:清理参数的默认值

 

在 DMRMAN 工具中使用 BACKUP 命令你可以备份整个数据库。使用 DMRMAN 脱机备份 数据库需要设置归档和关闭数据库实例。在 DMRMAN 中输入以下命令即可备份数据库:

RMAN>BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini';

命令执行完后会在默认的备份路径下生成备份集目录,默认的备份路径为 dm.ini 中

BAK_PATH 的配置值,若未配置,则为 SYSTEM_PATH 下的 bak 目录。这是最简单的脱机 数据库备份语句,

 

 出现次错误, 需要关闭数据库服务。

 备份完成:

 

备份文件已经生成:

 也可以使用下面命令备份:

BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FULL BACKUPSET '/home/dm_bak/db_full_bak_01';

命令中的 FULL 参数表示执行的备份为完全备份,也可以不指定该参数,DMRMAN 默认 执行的备份类型为完全备份

1. 数据库还原

使用 RESTORE 命令完成脱机还原操作,在还原语句中指定库级备份集,可以是脱机库 级备份集,或是联机库级备份集。数据库的还原包括数据库配置文件还原和数据文件还原, 目前可能需要还原的数据库配置文件包括 dm.ini 、 dm.ctl 、服务器秘钥文件

(dm_service.private 或者 dm_external.config,若备份库指定 usbkey 加密,则 无秘钥文件)、联机日志文件

RMAN>RESTORE DATABASE 'D:\Program Files\dmdbms\data\VISE\dm.ini' FROM BACKUPSET 'D:\Program Files\dmdbms\data\VISE\bak\DB_VISE_FULL_20221129_175155_000137'; 

2. 数据恢复

 RECOVER DATABASE 'D:\Program Files\dmdbms\data\VISE\dm.ini' FROM BACKUPSET 'D:\Program Files\dmdbms\data\VISE\bak\DB_VISE_FULL_20221129_175155_000137'; 

 

 3.数据库更新

RECOVER DATABASE 'D:\Program Files\dmdbms\data\VISE\dm.ini' UPDATE DB_MAGIC; 

 

启动服务

 


点击全文阅读


本文链接:http://zhangshiyu.com/post/49297.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1