IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 达梦数据库redo日志重建 -> 正文阅读

[大数据]达梦数据库redo日志重建


前言

在使用达梦数据库时,redo日志有时会损坏,被删除等各种问题,导致数据库异常,无法启动,本文讲解的是达梦数据库中redo日志重建方法


一、redo日志是什么?

达梦数据库REDO日志文件即重做日志文件,是数据在运行过程中正在使用的日志文件,所以又称为联机日志文件。它存储数据库的事务日志,以便系统在出现系统故障和介质故障时能够进行故障恢复。
删除REDO日志文件,则实例无法正常启动。

二、恢复redo日志方法

1.方法一:还原恢复

有备份文件和归档日志的情况下,使用“备份+归档”进行恢复,这是一种比较保险的恢复方式,可以达到完全恢复的效果,即数据能恢复到发生故障之前的那一刻。

2.方法二:替换REDO日志

没有备份和归档的情况下,可以选择替换REDO日志启动数据库,但是这种方案是不完全恢复,可能会丢失部分数据。
思路:

1、根据原故障库的信息重建一个实例
2、修改新实例redo日志的db_magic,pemnt_magic值
3、将修改redo复制回原故障库,重新启动

1、新键实例

1、查看原故障库的信息(在数据文件目录下可以看到,以dminit开头的log文件)

[dmdba@local92 DAMENG]$ more dminit20220306222659.log 
start init database: V8, 2022-03-06 22:26:59
init params:
	db path: /dm/dmdata/DAMENG
	db name: DAMENG
	auto overwrite: 0
	page size: 32768
	extent size: 32
	time zone: +08:00
	string case sensitive: 1
	charset: 0
	length in char: 0
	page check mode: 0
	page check algorithm id: 0
	priv flag: 0
	rlog enc flag: 0
	use new hash: 1
	blank pad mode: 0
	sec priv mode: 0
	huge with delta: 1
	rlog gen for huge: 0
	pseg_mgr_flag: 0
	char_fix_storage: 0
	sql_log_forbid: 0
	secur_flag: 1

2、在新环境中初始化新实例
注意:新实例的信息一定要和原故障库一致

[dmdba@local92 DAMENG]$ dminit path=/dm db_name=DAMENG page_size=32 extent_size=32 case_sensitive=1 
initdb V8
db version: 0x7000c
License will expire on 2022-09-25
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
 log file path: /dm/DAMENG/DAMENG01.log
 log file path: /dm/DAMENG/DAMENG02.log
write to dir [/dm/DAMENG].
create dm database success. 2022-03-16 16:36:24

2、修改db_magic值和pemnt_magic值

说明:db_magic:数据库魔数 pemnt_magic:数据库永久魔数
1、查看原故障库的db_magic值和pemnt_magic值
注意:用dm自带的工具dmmdf查看,更多使用方法加help查看

[dmdba@local92 DAMENG]$ dmmdf TYPE=1 FILE=/dm/dmdata/DAMENG/SYSTEM.DBF
dmmdf V8
**********************************************************
1 db_magic=1261011608
2 next_trxid=6878674
3 pemnt_magic=1437717675
**********************************************************
Please input which parameter you want to change(1-3), q to quit: 

得到
db_magic=1261011608
pemnt_magic=1437717675

2、修改新实例的db_magic值和pemnt_magic值

[dmdba@local92 DAMENG]$ dmmdf TYPE=2 FILE=/dm/DAMENG/DAMENG01.log

先修改db_magic值
在这里插入图片描述
在这里插入图片描述
再修改pemnt_magic值
在这里插入图片描述
在这里插入图片描述

3、恢复数据库

将修改后的REDO拷贝到负债库,并按照故障库的REDO日志命名,尝试启动数据库
用新的redo日志启动数据库

dmserver /dm/dmdata/DAMENG/dm.ini

在这里插入图片描述
数据库已经启动起来了。

总结

更多信息可前往达梦官网社区
https://eco.dameng.com/

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-03-17 22:14:33  更:2022-03-17 22:15:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 6:57:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码