参考文档《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

达梦数据库物理备份恢复_表空间级备份还原相关推荐

  1. linux下达梦数据库导出dmp,DM7 达梦数据库 物理备份还原之 备份管理 操作手册

    1 概述 本篇主要了解如何使用 DMRMAN 工具管理数据库备份.表空间备份及表备份. 管理备份一个重要的目的是删除不再需要的备份.DMRMAN 工具提供 SHOW.CHECK.REMOVE.LOAD ...

  2. 达梦数据库导入oracle数据_达梦数据库和oracle数据的一些区别

    近期我在考达梦的dca发现有一些和oracle不同的地方,由于我是oracleDBA在维护达梦数据库的时候有需要注意的地方,现在分享一下2个数据库的一些区别. 1.登陆的区别 oracle:如果sys ...

  3. 达梦数据库查询模式名,表名,字段名

    达梦数据库查询模式名,表名,字段名 查询所有的模式名 SELECT DISTINCT object_name FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'SCH' 根据 ...

  4. 达梦数据库-物理文件损坏或者误删恢复

    作为一个达梦的初学者,写这篇文章的目的是为了把学到的新知识做个总结梳理,在整理中查缺补漏,也希望大家看了我的文章能有收获,如有错误的地方欢迎指出. 实例参数文件: 记录了数据库服务器的各种功能和性能选 ...

  5. 达梦数据库修改字段长度_解决达梦数据库新增大字段报错问题

    使用达梦数据库穿件新表后往新表中增加TEXT类型字段报错,错误信息如下: 错误号: -3243 错误消息: 第1 行附近出现错误: 表[TABLE_2]中不能同时包含聚集KEY和大字段 ------- ...

  6. 达梦数据库导入oracle数据_达梦数据库助力加速石油石化行业数字化转型升级

    2020中国石油石化企业信息技术交流大会暨数字化转型.智能化发展高峰论坛于10月22日-23日在北京召开,武汉达梦数据库有限公司(简称达梦公司)作为国产数据库代表企业受邀参与此次活动,并以" ...

  7. DM8达梦数据库物理备份方法详细

    物理备份 归档配置说明 通过 dm.ini 和 dmarch.ini 可以配置本地归档.dmarch.ini 生效的前提是 dm.ini 中的参数 ARCH_INI 置为 1.dmarch.ini 可 ...

  8. mysql 8.0数据备份恢复_第7章 备份和恢复

    ## 目录 - 备份和恢复类型 - 数据库备份方法 - 例备份和恢复策略 - 使用mysqldump进行备份 - 使用二进制日志进行 - 点时间(增量)恢复 - MyISAM表维护和崩溃恢复 备份数据 ...

  9. 达梦数据库实验三:DMDBMS表查询操作

    目录标题 实验三 DMDBMS表查询操作 一.实验目的: 二.实验要求: 三.实验重点和难点: 四.实验内容: 五.实验步骤与结果: 1. 表创建 2. 数据填充 3. 数据查询 3.1查出选修了20 ...

最新文章

  1. Python爬取淘宝商品价格销量信息
  2. 调用c++_WebAssembly: 在C代码中调用JS的函数
  3. LeetCode 1901. 找出顶峰元素 II(二分查找)
  4. uniapp光标自动定义到文本框_特检自动化行吊静力检测方案
  5. 学点 C 语言(38): 函数 - 函数指针
  6. PAT之水题:逻辑题、数学问题(素数、多项式、分数、大整数、进制转换)
  7. redhat7配置本地yum源
  8. Tomcat7安装(jdk 1.7环境)
  9. 计算机考研408的优势和劣势,为什么说计算机考研408是大趋势
  10. Java8中Map新方法:compute使用详解
  11. html怎么把网址设为首页,怎样让网站设为首页和加入收藏
  12. 个人邮箱如何进行群发邮件?
  13. 软考中高级项目管理案例分析-人力资源管理
  14. 知识点:Office插入数学公式常用的快捷键(终于可以解放鼠标了)
  15. Win系统使用DINO训练自己数据集
  16. FPGA在图像处理中的应用
  17. python队列的实现
  18. dfs深度优先搜索问题
  19. sparkSql 随机打散分配
  20. win7更新_微软最新累积更新导致Win7及以上版本VB6/VBA/VBS运行异常

热门文章

  1. css文字渐变色设置
  2. mysql模糊查询提速_【MySQL】Mysql模糊查询like提速优化
  3. 平均年薪超105万元,区块链开发待遇这么高?
  4. 树莓派利用360wifi2开机自动连接路由器
  5. 医疗诊断文本多分类问题(NLP)(合工大机器学习)
  6. Java企业级应用开发需要注意的几点:
  7. 2012第30周国内Android应用下载动态
  8. 阿里java接口自动化实践pdf_接口自动化测试设计
  9. Tomcat 自动部署
  10. mplfinance模块新版功能Panels绘制子图MACD(v=0.12.6a3)(四)