日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

达梦redo log损坏的处理办法

發布時間:2023/12/8 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 达梦redo log损坏的处理办法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在一次數據庫實例重啟的過程中,數據庫啟動失敗,報如下的錯誤

[dmdba@dsc3 bin]$ ./DmServiceDMSERVER restart

Stopping DmServiceDMSERVER: [ OK ] Starting DmServiceDMSERVER: [ FAILED ] file dm.key not found, use default license! version info: develop DM Database Server x64 V8 1-2-38-21.07.09-143359-10018-ENT startup... Normal of FAST Normal of DEFAULT Normal of RECYCLE Normal of KEEP Normal of ROLL Database mode = 0, oguid = 0 License will expire on 2022-07-09 rfil grp init log file /d| |mdata/DAMENG/DAMENG01.log error, code = -717

在初步診斷后,發現日志文件DAMENG01.log損壞。

處理過程

重新初始化一個新的數據庫,初始化參數要和原庫一樣,比如頁大小、大小寫敏感、字符集等。
查看初始化數據庫時產生的日志

[dmdba@dsc3 DAMENG.bak]$ cat dminit20211107224222.log

start init database: V8, 2021-11-07 22:42:22 init params:db path: /dmdata/DAMENGdb name: DAMENGauto overwrite: 0page size: 32768extent size: 16time zone: +08:00string case sensitive: 1charset: 1length in char: 1page check mode: 0priv flag: 0rlog enc flag: 0use new hash: 1blank pad mode: 0sec priv mode: 0huge with delta: 1rlog gen for huge: 0pseg_mgr_flag: 0char_fix_storage: 0sql_log_forbid: 0secur_flag: 2log file path: /dmdata/DAMENG/DAMENG01.loglog file path: /dmdata/DAMENG/DAMENG02.logcreate ini file /dmdata/DAMENG/dm.ini success.create rlog file /dmdata/DAMENG/DAMENG01.log success.create rlog file /dmdata/DAMENG/DAMENG02.log success.SYSTEM file : /dmdata/DAMENG/SYSTEM.DBFMAIN file : /dmdata/DAMENG/MAIN.DBFROLL file : /dmdata/DAMENG/ROLL.DBFcreate dm database success. 2021-11-07 22:42:25

查看原數據庫的魔數
[dmdba@dsc3 bin]$ ./dmmdf TYPE=1 FILE=/dmdata/DAMENG/SYSTEM.DBF

dmmdf V8 ********************************************************** **1 db_magic=1502558514** 2 next_trxid=5040 3 pemnt_magic=429000718 ********************************************************** Please input which parameter you want to change(1-3), q to quit:

將原數據庫備份后,初始化新的數據庫
[dmdba@dsc3 bin]$ ./dminit path=/dmdata PAGE_SIZE=32 EXTENT_SIZE=16

CHARSET=1 initdb V8 db version: 0x7000c file dm.key not found, use default license! License will expire on 2022-07-09 Normal of FAST Normal of DEFAULT Normal of RECYCLE Normal of KEEP Normal of ROLLlog file path: /dmdata/DAMENG/DAMENG01.loglog file path: /dmdata/DAMENG/DAMENG02.logwrite to dir [/dmdata/DAMENG]. create dm database success. 2021-11-09 10:52:54

將新生產的DAMENG01.log復制到原庫的目錄下
[dmdba@dsc3 DAMENG]$ cp DAMENG01.log …/DAMENG.bak/

使用 dmmdf 工具設置 DAMENG01.log 文件的 db_magic,設置為步驟 中記錄的值。

[dmdba@dsc3 bin]$ ./dmmdf TYPE=2 FILE=/dmdata/DAMENG/DAMENG01.log

dmmdf V8 ********************************************************** 1 sig = DMRLOG 2 ver = 7006 3 chksum = 145635124 4 sta = 1 5 n_magic = 7 6 **db_magic = 121732074** 7 len = 268435456 8 free = 7222784 9 clsn = 33282 10 clsn_fil = 0 11 clsn_off = 7222784 12 pemnt_magic = 429000718 13 fil_id = 0 15 next_seq = 3622 16 g_next_seq = 3622 17 arch_lsn = 0 18 arch_seq = 0 19 dbversion = 0x7000c 20 min_exec_version = V8.1.1.1 21 min_dct_version = 4 22 p_db_magic = 0 23 n_apply_ep = 0 24 apply_info_lsn = 0pkg_seq_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)apply_lsn_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) 25 recv_p_db_magic = 0 26 recv_n_apply_ep = 0recv_pkg_seq_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)recv_apply_lsn_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) ********************************************************** You can only reset sta(4) or db_magic (6) or clsn (9) or clsn_fil(10) or clsn_off(11) or pemnt_magic(12) or fil_id(13) or next_seq(15) or g_next_seq(16) or p_db_magic(20) or n_apply_ep(21). **Please input the num which one you want to change, q to quit: 6** **Input the new value: 1502558514** ********************************************************** 1 sig = DMRLOG 2 ver = 7006 3 chksum = 1449162220 4 sta = 1 5 n_magic = 7 6 db_magic = 1502558514 7 len = 268435456 8 free = 7222784 9 clsn = 33282 10 clsn_fil = 0 11 clsn_off = 7222784 12 pemnt_magic = 429000718 13 fil_id = 0 15 next_seq = 3622 16 g_next_seq = 3622 17 arch_lsn = 0 18 arch_seq = 0 19 dbversion = 0x7000c 20 min_exec_version = V8.1.1.1 21 min_dct_version = 4 22 p_db_magic = 0 23 n_apply_ep = 0 24 apply_info_lsn = 0pkg_seq_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)apply_lsn_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) 25 recv_p_db_magic = 0 26 recv_n_apply_ep = 0recv_pkg_seq_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)recv_apply_lsn_arr: (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) ********************************************************** Do you want to quit and save the change to file (y/n): y Save to file success! [dmdba@dsc3 bin]$

修改魔數成功后,重啟數據庫服務
[dmdba@dsc3 bin]$ ./DmServiceDMSERVER start

Starting DmServiceDMSERVER: [ OK ]

數據庫啟動成功

更多資訊請上達夢技術社區了解:https://eco.dameng.com

總結

以上是生活随笔為你收集整理的达梦redo log损坏的处理办法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。