达梦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
將原數據庫備份后,初始化新的數據庫
[dmdba@dsc3 bin]$ ./dminit path=/dmdata PAGE_SIZE=32 EXTENT_SIZE=16
將新生產的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
數據庫啟動成功
更多資訊請上達夢技術社區了解:https://eco.dameng.com
總結
以上是生活随笔為你收集整理的达梦redo log损坏的处理办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鸿蒙开发(2)---Button组件
- 下一篇: 2006年完形填空