达梦数据库物理备份恢复_表空间级备份还原
参考文档《DM8备份恢复手册》
1、表空间级备份还原
联机备份,脱机还原
表空间备份还原的先决条件以及限制条件参考《DM8备份恢复手册》。
1.1 备份
BACKUP V1.0:
backup tablespace main full to TBS_BAK bakfile '/dm8/dmbak/TBS_MAIN_BAK/main.bak';
BACKUP V2.0:
backup tablespace main backupset '/dm8/dmbak/tbs_main_bak_v2';
DM8注意backup v1.0 :
V1.0:backup tablespace main full to TBS_BAK bakfile ‘xxx’;
如果xxx为一个目录,非.bak文件,则会生成一个xxx目录下xxx.bak和xxx.meta。
如果xxx为一个.bak文件,则会在相应目录下生成一个.bak文件,但是dm8无法直接恢复这种方式备份出来的.bak文件。
在DM7中无论xxx有没有带.bak后缀,在备份的时候都只会生成一个.bak的文件。
DM8只能使用dmrman脱机进行恢复还原。
1.2 还原恢复
DM7表空间还原:
v1.0: restore tablespace main from '/dm7/backup/tbs_main.bak';
V2.0: restore tablespace main from backupset '/dm7/backup/test_tbsbak';
DM7测试(BACKUP V1.0)
###建表
SQL> desc ttt;
[-20001]:无效的对象名.
已用时间: 0.819(毫秒). 执行号:0.
SQL> create table ttt (id int) storage(on main);
操作已执行
已用时间: 2.155(毫秒). 执行号:63.
###备份
SQL> backup tablespace main full to TBS_BAK bakfile '/dm7/backup/tbs_main.bak';
操作已执行
已用时间: 00:00:01.165. 执行号:61.
###模拟表空间数据文件丢失
rm MAIN.DBF
###重启数据库
日志信息:
Use normal os_malloc instead of HugeTLB
Use normal os_malloc instead of HugeTLB
DM Database Server x64 V7.6.0.142-Build(2019.03.12-103811)ENT startup...
/data/dmdbms/data/DAMENG/MAIN.DBF not exist,force to be off-line
User data files missed, Force to startup MOUNT
启动时发现MAIN.DBF文件不存在,会自动强制offline 并启动到mount状态。
###还原
手动启动数据库到OPEN状态
[dmdba@DaMengDB DAMENG]$ disql
disql V7.6.0.142-Build(2019.03.12-103811)ENT
用户名:
密码:服务器[LOCALHOST:5236]:处于普通配置状态
登录使用时间: 5.463(毫秒)
SQL>
SQL> alter database open;
操作已执行
已用时间: 00:00:10.293. 执行号:0.SQL> select name,status$ from v$tablespace ; 行号 NAME STATUS$
---------- ------ -----------
1 SYSTEM 0
2 ROLL 0
3 TEMP 0
4 MAIN 1
5 DMHR 0
6 TBS3 0
7 TEST 0
8 SYSAUX 0STATUS$说明: 0 ONLINE, 1 OFFLINE, 2 RES_OFFLINE, 3 CORRUPT----执行还原操作
SQL> restore tablespace main from '/dm7/backup/tbs_main.bak';
操作已执行
已用时间: 408.777(毫秒). 执行号:7.
日志信息:
start restore table space: MAIN
start restore file: /data/dmdbms/data/DAMENG/MAIN.DBF, pages: 105
end restore file: /data/dmdbms/data/DAMENG/MAIN.DBFend restore table space: MAINstart redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200515122736288_0.log, rpages: 1520, start lsn: 190500, end lsn: 195960end redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200515122736288_0.logstart redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516184023096_0.log, rpages: 1409, start lsn: 195960, end lsn: 205300end redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516184023096_0.logstart redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204315913_0.log, rpages: 1398, start lsn: 205301, end lsn: 214544end redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204315913_0.logstart redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204451733_0.log, rpages: 1386, start lsn: 214545, end lsn: 223763end redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204451733_0.logstart redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204708022_0.log, rpages: 1385, start lsn: 223764, end lsn: 232981end redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204708022_0.logstart redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204915793_0.log, rpages: 1387, start lsn: 232982, end lsn: 242199end redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516204915793_0.logstart redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516210431409_0.log, rpages: 945, start lsn: 242199, end lsn: 247064end redo arch file: /dm7/arch/ARCHIVE_LOCAL2_20200516210431409_0.logrestore finished, code = 0!
根据日志信息发现还原之后会自动应用日志。
SQL> alter tablespace main online;
操作已执行
已用时间: 13.662(毫秒). 执行号:9.
###查看
SQL> select name,status$ from v$tablespace ;行号 NAME STATUS$
---------- ------ -----------
1 SYSTEM 0
2 ROLL 0
3 TEMP 0
4 MAIN 0
5 DMHR 0
6 TBS3 0
7 TEST 0
8 SYSAUX 0SQL> desc ttt;行号 NAME TYPE$ NULLABLE
---------- ---- ------- --------
1 ID INTEGER Y已用时间: 2.850(毫秒). 执行号:67.
表空间还原需要先将表空间状态为OFFLINE
SQL> alter tablespace main offline;
SQL> restore tablespace main from ‘/dm7/backup/tbs_main.bak’;
SQL> alter tablespace main online;
DM8测试
对表空间的备份还原,DM8只能使用dmrman脱机进行恢复还原。
[dmdba@dm8dw02 bin]$ ./DmServiceTEST stop
Stopping DmServiceTEST: [ OK ]
[dmdba@dm8dw02 bin]$ ./dmrman
dmrman V8#校验备份,校验待还原备份集的合法性。校验备份有两种方式,联机和脱机,此处使用脱机校验
RMAN> CHECK BACKUPSET '/dm8/dmbak/tbs_main_bak';
CHECK BACKUPSET '/dm8/dmbak/tbs_main_bak';
CMD END.CODE:[0]
check backupset successfully.
time used: 5.922(ms)#还原表空间。 需要注意,表空间还原的目标库只能是备份集产生的源库,否则将报错
#使用第一次备份文件还原
RMAN> RESTORE DATABASE '/dm8/data/TEST/dm.ini' TABLESPACE MAIN FROM BACKUPSET '/dm8/dmbak/tbs_main_bak';
RESTORE DATABASE '/dm8/data/TEST/dm.ini' TABLESPACE MAIN FROM BACKUPSET '/dm8/dmbak/tbs_main_bak';
RESTORE TABLESPACE[MAIN] IN DB[/dm8/data/TEST/dm.ini] CHECK......
Database mode = 0, oguid = 0
EP[0]'s cur_lsn[53006]
RESTORE TABLESPACE[MAIN] IN DB[/dm8/data/TEST/dm.ini],dbf collect......
RESTORE TABLESPACE[MAIN] IN DB[/dm8/data/TEST/dm.ini],ts status and dbf refresh ......
RESTORE BACKUPSET [/dm8/dmbak/tbs_main_bak] START......
total 1 packages processed...
total 3 packages processed...
RESTORE TABLESPACE[MAIN] IN DB[/dm8/data/TEST/dm.ini],UPDATE ctl file......
total 3 packages processed...
total 3 packages processed!
CMD END.CODE:[0]
restore successfully.
time used: 423.868(ms)#恢复表空间
RMAN> RECOVER DATABASE '/dm8/data/TEST/dm.ini' TABLESPACE MAIN;
RECOVER DATABASE '/dm8/data/TEST/dm.ini' TABLESPACE MAIN;
Database mode = 0, oguid = 0
[WARN]tablespace MAIN is corrupted(state: 2), restore or drop please.
EP[0]'s cur_lsn[53006]
RECOVER TABLESPACE[MAIN] IN DB[/dm8/data/TEST/dm.ini] CHECK......
EP[0]'s cur_lsn[53006]
EP:0 total 3 pkgs applied, percent: 10%
EP:0 total 6 pkgs applied, percent: 20%
EP:0 total 9 pkgs applied, percent: 31%
EP:0 total 12 pkgs applied, percent: 41%
EP:0 total 15 pkgs applied, percent: 51%
EP:0 total 18 pkgs applied, percent: 62%
EP:0 total 21 pkgs applied, percent: 72%
EP:0 total 24 pkgs applied, percent: 82%
EP:0 total 27 pkgs applied, percent: 93%
EP:0 total 29 pkgs applied, percent: 100%
Recover from archive log finished, time used:0.086s.
CMD END.CODE:[0]
recover successfully.
time used: 546.781(ms)
RMAN>
1.3 表空间备份还原总结
(1)、DM8表空间还原的备份集可以是联机或脱机生成的库备份集,也可以是联机生成的表空间备份集,只能使用脱机还原的方式。MOUNT状态下,不允许进行表空间备份。
(2)、表空间也和数据库备份一样支持全量备份和增量备份。
(3)、表空间备份还原不支持TEMP表空间。
(4)、表空间还原要求还原目标库与备份库为同一个库。
(5)、还原目标库不能为已经执行过RESTORE但未执行过RECOVER的库。
(6)、若目标库中SYSTEM表空间故障,则必须优先还原SYSTEM表空间。
(7)、如果SYSTEM表空间处于ONLINE/OFFLINE状态且文件丢失,则必须要通过库还原修复,不支持对其执行表空间还原 。
(8)、表空间还原还支持还原表空间中特定的数据文件。
结语
随着产品不断的改进,达梦数据库不同的版本在操作或者限制条件等方面可能有细微差别(也可能没有),当我们在操作时如果不是很清楚相关操作,可以先参考当前数据库版本的官方手册,所有的官方手册位于软件安装目录下的doc目录中($DM_HOME/doc)。
更多资讯请上达梦技术社区了解:https://eco.dameng.com
达梦数据库物理备份恢复_表空间级备份还原相关推荐
- linux下达梦数据库导出dmp,DM7 达梦数据库 物理备份还原之 备份管理 操作手册
1 概述 本篇主要了解如何使用 DMRMAN 工具管理数据库备份.表空间备份及表备份. 管理备份一个重要的目的是删除不再需要的备份.DMRMAN 工具提供 SHOW.CHECK.REMOVE.LOAD ...
- 达梦数据库导入oracle数据_达梦数据库和oracle数据的一些区别
近期我在考达梦的dca发现有一些和oracle不同的地方,由于我是oracleDBA在维护达梦数据库的时候有需要注意的地方,现在分享一下2个数据库的一些区别. 1.登陆的区别 oracle:如果sys ...
- 达梦数据库查询模式名,表名,字段名
达梦数据库查询模式名,表名,字段名 查询所有的模式名 SELECT DISTINCT object_name FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'SCH' 根据 ...
- 达梦数据库-物理文件损坏或者误删恢复
作为一个达梦的初学者,写这篇文章的目的是为了把学到的新知识做个总结梳理,在整理中查缺补漏,也希望大家看了我的文章能有收获,如有错误的地方欢迎指出. 实例参数文件: 记录了数据库服务器的各种功能和性能选 ...
- 达梦数据库修改字段长度_解决达梦数据库新增大字段报错问题
使用达梦数据库穿件新表后往新表中增加TEXT类型字段报错,错误信息如下: 错误号: -3243 错误消息: 第1 行附近出现错误: 表[TABLE_2]中不能同时包含聚集KEY和大字段 ------- ...
- 达梦数据库导入oracle数据_达梦数据库助力加速石油石化行业数字化转型升级
2020中国石油石化企业信息技术交流大会暨数字化转型.智能化发展高峰论坛于10月22日-23日在北京召开,武汉达梦数据库有限公司(简称达梦公司)作为国产数据库代表企业受邀参与此次活动,并以" ...
- DM8达梦数据库物理备份方法详细
物理备份 归档配置说明 通过 dm.ini 和 dmarch.ini 可以配置本地归档.dmarch.ini 生效的前提是 dm.ini 中的参数 ARCH_INI 置为 1.dmarch.ini 可 ...
- mysql 8.0数据备份恢复_第7章 备份和恢复
## 目录 - 备份和恢复类型 - 数据库备份方法 - 例备份和恢复策略 - 使用mysqldump进行备份 - 使用二进制日志进行 - 点时间(增量)恢复 - MyISAM表维护和崩溃恢复 备份数据 ...
- 达梦数据库实验三:DMDBMS表查询操作
目录标题 实验三 DMDBMS表查询操作 一.实验目的: 二.实验要求: 三.实验重点和难点: 四.实验内容: 五.实验步骤与结果: 1. 表创建 2. 数据填充 3. 数据查询 3.1查出选修了20 ...
最新文章
- Python爬取淘宝商品价格销量信息
- 调用c++_WebAssembly: 在C代码中调用JS的函数
- LeetCode 1901. 找出顶峰元素 II(二分查找)
- uniapp光标自动定义到文本框_特检自动化行吊静力检测方案
- 学点 C 语言(38): 函数 - 函数指针
- PAT之水题:逻辑题、数学问题(素数、多项式、分数、大整数、进制转换)
- redhat7配置本地yum源
- Tomcat7安装(jdk 1.7环境)
- 计算机考研408的优势和劣势,为什么说计算机考研408是大趋势
- Java8中Map新方法:compute使用详解
- html怎么把网址设为首页,怎样让网站设为首页和加入收藏
- 个人邮箱如何进行群发邮件?
- 软考中高级项目管理案例分析-人力资源管理
- 知识点:Office插入数学公式常用的快捷键(终于可以解放鼠标了)
- Win系统使用DINO训练自己数据集
- FPGA在图像处理中的应用
- python队列的实现
- dfs深度优先搜索问题
- sparkSql 随机打散分配
- win7更新_微软最新累积更新导致Win7及以上版本VB6/VBA/VBS运行异常