达梦数据库表数据或者物理文件误删除或者损坏恢复方法
一.数据库表数据误删除
情况一:之前没有做备份或者忘记做备份了,这种情况下不能恢复误删除的数据
情况二:做了备份并且也配置了归档,这种情况下可以通过备份文件恢复+还原归档日志的方式恢复到指定时间点
模拟测试:
1.查询归档是否开启,若没开启需要开启一下
或者
2.构造数据
3.手动备份,为了方便使用联机备份方式
4.插入数据,记录时间点
5.删除数据,记录时间点
6.恢复备份文件
注意:联机恢复仅支持表级的恢复,全库恢复必须脱机还原
6.1关闭数据库
6.2还原数据库
6.3利用归档日志恢复到删除数据之前的时间点
6.4恢复db_magic
7.启动数据库
8.连接数据库查看数据,确认是否恢复成功
二.ROLL.DBF损坏或者误删除
可以发现删除后还是可以正常操作的
但当重启数据库的时候会发现重启失败,切换到DM软件安装路径下的log目录中,通过日志文件内容查看,是因为ROLL.DBF文件不存在无法启动
此时如果希望能临时正常启动,可以尝试在配置文件中设置PSEG_RECV=0,这样在下次启动的时候会跳过回滚事务,看下是否可以正常启动起来。但就算正常启动了也会有风险,未提交的事务将无法回滚,此参数详细的介绍可以参考DM安装目录下的DBA手册
设置了跳过回滚事务后,不管有没有手动创建ROLL.DBF,数据库也无法正常启动
情况一:
有备份文件并且开启了归档日志,此时可以考虑按照误删除ROLL.DBF文件数据库的初始化参数来初始化一个新的数据库,并且把误删除的数据库的备份文件和归档日志文件拷贝到新的数据库下,通过还原备份+恢复归档日志的方式来恢复
测试:
1.查看之前旧实例的初始化参数
2.按照旧实例的参数初始化一个新的实例
3.在新实例下创建好备份文件和归档日志文件的目录
4.把旧实例的备份文件和归档日志文件分别拷贝到新实例下
5.利用拷贝的旧实例的备份文件和归档日志文件恢复数据
6.启动新实例,查看数据是否正常
可以看到恢复成功,数据文件都存在
情况二:
未备份或者备份文件有丢失、损坏,这种情况看网上说法可以以误删除的数据库的初始化参数为标准初始化一个新的实例,然后通过修改永久魔术值的方式来恢复,这种情况下很可能丢失数据(经多次测试恢复失败)
测试:
1.查看旧实例的初始化参数,以旧实例的初始化参数为标准初始化一个新实例
2.查看旧实例的db_magic
3.修改新初始化实例的SYSTEM.DBF文件中的db_magic为旧实例的db_magic,除了SYSTEM.DBF文件外,两个redo log(dmtest01.log和dmtest02.log)也需要修改
4.将新实例的ROLL.DBF文件、两个redo log(dmtest01.log和dmtest02.log)拷贝到旧实例上并覆盖,注意查看文件权限,若权限不对需要修改一下
5.启动旧实例,发现启动失败
三.redolog误删除或者损坏
情况一:有备份文件并且开启了归档日志文件,则初始化新的文件并且导入备份,并且利用归档文件还原恢复数据
情况二:没有备份文件,则可以考虑以误删除的数据库的初始化参数为标准初始化一个新的实例,然后通过修改永久魔术值的方式来恢复,这种情况下很可能丢失数据
测试:
1.构造测试数据
2.删除test02.log
3.重启数据库进程,会发现报错了
4.查看误删除的实例的初始化参数,以此参数为标准初始化一个新的实例
5.查看旧实例的db_magic
6.修改新实例的db_magic,test01.log和test02.log文件都需要修改
7.把新实例的test01.log和test02.log文件拷贝到旧实例中并且覆盖,注意查看文件权限,若权限不对需要修改一下
8.启动旧实例,查看是否正常
9.登录旧实例,查看数据是否正常
经验证,确认恢复成功
更多资讯请上达梦技术社区了解:https://eco.dameng.com
达梦数据库表数据或者物理文件误删除或者损坏恢复方法相关推荐
- 达梦数据库导出数据表结构为excel或html或文本(写文档用)
达梦数据库导出数据表结构为excel或html或文本(写文档用) 项目中用的是国产达梦数据库,项目做了一期后应该是要数据库设计文档.其中就有一个需要表结构(字段,字段精度,说明...) 因为是国产数据 ...
- zabbix mysql 表空间_Zabbix监控达梦数据库表空间
技术实现思路 利用Zabbix监控工具的定制功能.借鉴Zabbix对Oracle的监控原理,实现达梦数据库表空间监控.通过自动发现脚本发现达梦数据库表空间,然后再制定额外的属于达梦表空间的监控项,配置 ...
- 2数据库表空间容量查询_Zabbix监控达梦数据库表空间
技术实现思路 利用Zabbix监控工具的定制功能.借鉴Zabbix对Oracle的监控原理,实现达梦数据库表空间监控.通过自动发现脚本发现达梦数据库表空间,然后再制定额外的属于达梦表空间的监控项,配置 ...
- 达梦数据库DM8-DM数据迁移工具介绍和简单使用
达梦数据库DM8-DM数据迁移工具介绍和简单使用 系列文章目录 本文环境 1.DM管理工具介绍 2.DM数据迁移工具简单使用 1.打开DM数据迁移工具 2.新建工程 3.新建迁移任务DM到DM 3.新 ...
- 查看达梦数据库表中的数据为乱码解决
将数据库备份文件导入达梦数据库后,从windows启动应用系统,查看表中的数据时,表中的中文全部显示为乱码. 解决方法: 在目录C:\Windows\System32下创建文件dm_svc.txt,使 ...
- sql文件导入达梦数据库_达梦数据库 导入数据
因为公司要求mysql数据库数据需要转到达梦数据库,对于达梦数据库的了解尚且不多,所以周周转转,寻找度娘以及贴吧,有推荐spoon工具的,有第三方数据迁移工具的.进行使用时发现实在是麻烦,而且对数据的 ...
- 【达梦数据库】数据实时同步软件 + 数据对比工具
文章目录 前言 一.数据实时同步软件 1.1 简单介绍 1.2 模块说明 二.数据对比工具 2.1 简单介绍 2.2 架构说明 三.DMETL vs DMHS 总结 前言 达梦数据实时同步软件(DMH ...
- oracle数据库计数器,DM 达梦数据库 表的 行计数器(COUNTER)属性
1 表行计数器 说明 默认情况下,DM 达梦数据库count() 是秒回结果的,不受表中实际行数的影响,执行select count() 都能立即返回正确的结果.因为达梦数据库的count(*)操作不 ...
- 达梦数据库表新增字段速度测试
给表新增字段是一项日常需求,数据库在这种DDL的资源消耗还是很大的,达梦数据库在新增字段方面有些学习了oracle 11g的思路. 达梦数据库提供了参数 ALTER_TABLE_OPT 来控制添加字段 ...
最新文章
- 基于机器视觉的缺陷检测汽车零部件
- mysql快速导入5000万条数据过程记录(LOAD DATA INFILE方式)
- SpringBoot2.x RabbitMQ Nacos Nacos-Config
- python remove函数_Python列表的remove方法的注意事项
- mybatis中Mapper映射
- Precision、Recall、F计算:举例
- 计算机领域CCF推荐会议列表+
- 关于期刊论文所涉及的一些概念汇编+期刊查询方法
- 如何批量Word转换PDF格式
- Via板载声卡底噪严重、播放卡顿及耳机与扬声器音源切换问题【解决方法】
- PXA300平台2D图形加速器性能测试与分析
- wps软件打不开共享超链接_WPS超链接打不开?
- 修改html颜色代码,JavaScript实现更改网页背景与字体颜色的方法
- 甘特图、IPO图、DFD图
- C语言解决一个人有100元钱,打算买100只鸡。到市场上面一看,公鸡一只3元,母鸡一只5元,小鸡3只一元,试求用100元买100只鸡,各买多少合适?
- 虚拟机里博图能连接上实物PLC,但是HMI仿真不能连接实物PLC
- 团队项目代码分析(Android游戏:别踩白块儿)
- python入门知识点-1
- install brew cask
- 禁用一个右下角广告弹窗的程序 popwndexe.exe