目录

  • 数据文件恢复
    • 1.测试环境准备
    • 2.删除数据文件
    • 3.恢复步骤
    • 4.使用限制
    • 5.官方资料
  • redo日志恢复
    • 1. 删除redo日志
    • 2.启动数据库
    • 3.查看建库参数
    • 4.初始化新实例
    • 5.拷贝redo文件
    • 6.修改db_magic值
    • 7.启动数据库
    • 8.错误示范
    • 9.迁移数据
  • 官方社区

数据文件恢复

1.测试环境准备

1.1准备好测试环境,创建表空间data_test和用户user_test。

[dmdba@localhost bin]$ ./disql SYSDBA/SYSDBA@localhost:5238服务器[localhost:5238]:处于普通打开状态
登录使用时间 : 1.408(ms)
disql V8
SQL> create tablespace data_test datafile 'data_test01.dbf' size 128;
操作已执行
已用时间: 14.355(毫秒). 执行号:800.
SQL> alter tablespace data_test add datafile 'data_test02.dbf' size 128;
操作已执行
已用时间: 7.214(毫秒). 执行号:801.
SQL> create user user_test IDENTIFIED BY "dameng123" default tablespace data_test;
操作已执行
已用时间: 4.485(毫秒). 执行号:802.
SQL> grant dba to user_test;
操作已执行
已用时间: 2.397(毫秒). 执行号:803.

1.2创建表tab01并插入测试数据。

SQL> create table user_test.tab01 (id int,name varchar(10));
操作已执行
已用时间: 9.242(毫秒). 执行号:1000.
SQL> begin
for i in 1..10000 LOOP
insert into user_test.tab01 values(i,'test'||i);
end loop;
commit;
end;2   3   4   5   6
7   /
DMSQL 过程已成功完成
已用时间: 52.839(毫秒). 执行号:1001.
SQL> commit;
操作已执行
已用时间: 0.311(毫秒). 执行号:1002.

2.删除数据文件

手动删除数据文件,模拟误删除的情况。

[dmdba@localhost bin]$ ls /dmdata/DMOA/
bak      data_test01.dbf  dm.ctl  dminit20221017195519.log  DMOA02.log         HMAIN     rep_conflict.log  sqllog.ini  TEMP.DBF
ctl_bak  data_test02.dbf  dm.ini  DMOA01.log                dm_service.prikey  MAIN.DBF  ROLL.DBF          SYSTEM.DBF  trace
[dmdba@localhost bin]$ rm -rf /dmdata/DMOA/data_test02.dbf
[dmdba@localhost bin]$ ps -ef | grep dms
dmdba       2241    1911  0 20:00 pts/0    00:00:01 ./dmserver /dmdata/DMOA/dm.ini
dmdba       2406    2110  0 20:17 pts/1    00:00:00 grep dms

3.恢复步骤

3.1 检查数据文件

在数据库运行中删除数据文件后,在数据库未进行数据文件前,仍可正常查询表tab01。在手动调用存储过程检查数据文件后,再次查询表tab01时出错,提示表空间处于脱机状态。

--手动检查数据文件
SP_FILE_SYS_CHECK();

3.2 表空间恢复准备

--执行过程进行恢复前的准备,参数为表空间名。
SQL> SP_TABLESPACE_PREPARE_RECOVER('DATA_TEST');
DMSQL 过程已成功完成
已用时间: 2.835(毫秒). 执行号:1300.

3.3 数据文件恢复

这里只介绍误删除文件进程还在的恢复方式,如果删除文件进程已不存在需要借助第三方工具恢复。

--查看删除的文件是否还在
lsof | grep deleted

--查看被删除的文件副本
ls -l /proc/1336/fd

恢复使用DM服务的进程号和文件副本的标识号,如下所示,2241是DM服务进程号,47是文件副本标识号。

将文件副本拷贝至源目录即可。

3.4 表空间恢复

--执行过程进行恢复,参数为表空间名。
SQL> SP_TABLESPACE_RECOVER('DATA_TEST');
DMSQL 过程已成功完成
已用时间: 5.933(毫秒). 执行号:1400.

3.5 查询数据

执行表空间恢复后,查询数据进行验证。

4.使用限制

  • 操作系统是:linux平台下系统。
  • 被删除的是用户数据文件,而不是ROLL.DBF、TEMP.DBF或SYSTEM.DBF文件。
  • 数据文件删除后,不要重启数据库服务,不要重启系统,以免进程关闭后文件恢复的难度增加。

5.官方资料

在官方手册《DM8系统管理员手册.pdf》中,存在相关介绍。


redo日志恢复

1. 删除redo日志

找到实例目录,删除默认创建的2个redo日志文件。

[dmdba@localhost bin]$ ls /dmdata/DMOA/
bak/                      data_test02.dbf           dminit20221017195519.log  dm_service.prikey         rep_conflict.log          SYSTEM.DBF
ctl_bak/                  dm.ctl                    DMOA01.log                HMAIN/                    ROLL.DBF                  TEMP.DBF
data_test01.dbf           dm.ini                    DMOA02.log                MAIN.DBF                  sqllog.ini                trace/
[dmdba@localhost bin]$ rm /dmdata/DMOA/DMOA01.log
[dmdba@localhost bin]$ rm /dmdata/DMOA/DMOA02.log
[dmdba@localhost bin]$ ls /dmdata/DMOA/
bak      data_test01.dbf  dm.ctl  dminit20221017195519.log  HMAIN     rep_conflict.log  sqllog.ini  TEMP.DBF
ctl_bak  data_test02.dbf  dm.ini  dm_service.prikey         MAIN.DBF  ROLL.DBF          SYSTEM.DBF  trace

2.启动数据库

前台启动数据库,会提示/dmdata/DMOA/DMOA01.log文件不存在,无法启动。

[dmdba@localhost bin]$ ./dmserver /dmdata/DMOA/dm.ini
file dm.key not found, use default license!
version info: develop
DM Database Server 64 V8 03134283890-20220509-160333-10045 startup...
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
Database mode = 0, oguid = 0
/dmdata/DMOA/DMOA01.log not exist, can not startup

3.查看建库参数

达梦数据库在初始化实例时,会在实例目录下保存建库的参数信息,文件名=dminit+时间字符串。

[dmdba@localhost bin]$ ls /dmdata/DMOA/dminit20221017195519.log
/dmdata/DMOA/dminit20221017195519.log
[dmdba@localhost bin]$ cat /dmdata/DMOA/dminit20221017195519.log
start init database: V8, 2022-10-17 19:55:19
init params:db path: /dmdata/DMOAdb name: DMOAauto overwrite: 0page size: 8192extent size: 16char_fix_storage: 0sql_log_forbid: 0secur_flag: 2time zone: +08:00string case sensitive: 1charset: 0length in char: 0page check mode: 0page check algorithm id: 0priv flag: 0rlog enc flag: 0use new hash: 1blank pad mode: 0sec priv mode: 0huge with delta: 1rlog gen for huge: 0pseg_mgr_flag: 0log file path: /dmdata/DMOA/DMOA01.loglog file path: /dmdata/DMOA/DMOA02.logcreate ini file /dmdata/DMOA/dm.ini success.create rlog file /dmdata/DMOA/DMOA01.log success.create rlog file /dmdata/DMOA/DMOA02.log success.SYSTEM file : /dmdata/DMOA/SYSTEM.DBFMAIN file : /dmdata/DMOA/MAIN.DBFROLL file : /dmdata/DMOA/ROLL.DBFcreate dm database success. 2022-10-17 19:55:22

4.初始化新实例

初始化新实例的目的是,用新创建的redo日志文件替代被删除的redo日志文件。初始化的新实例的建库参数必须与旧实例一致,这也是第3步操作的目的。

[dmdba@localhost bin]$ #被删除的实例是默认创建的,所以未指定任何参数,实际操作根据情况来。
[dmdba@localhost bin]$ ./dminit path=/dmdata/DMTEST
initdb V8
db version: 0x7000c
file dm.key not found, use default license!
License will expire on 2023-05-09
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLLlog file path: /dmdata/DMTEST/DAMENG/DAMENG01.loglog file path: /dmdata/DMTEST/DAMENG/DAMENG02.logwrite to dir [/dmdata/DMTEST/DAMENG].
create dm database success. 2022-10-18 16:20:00

5.拷贝redo文件

[dmdba@localhost bin]$ #注意文件名和权限
[dmdba@localhost bin]$ cp /dmdata/DMTEST/DAMENG/DAMENG01.log /dmdata/DMOA/DMOA01.log
[dmdba@localhost bin]$ cp /dmdata/DMTEST/DAMENG/DAMENG02.log /dmdata/DMOA/DMOA02.log

6.修改db_magic值

使用dmmdf工具修改redo文件的db_magic值。

[dmdba@localhost bin]$ ./dmmdf type=2 file=/dmdata/DMOA/DMOA01.log
dmmdf V8
**********************************************************
1 sig = DMRLOG
2 ver = 7007
3 chksum = 1823197771
4 sta = 1
5 n_magic = 7
6 db_magic = 2046022852
7 len = 268435456
8 free = 11474432
9 clsn = 81039
10 clsn_fil = 0
11 clsn_off = 11474432
12 pemnt_magic = 1854731134
13 fil_id = 0
15 next_seq = 3975
16 g_next_seq = 3975
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)
27 l_term_id = 0
28 term_id = 0
29 c_seqno = 3974
30 c_lsn = 81039
**********************************************************
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(22) or n_apply_ep(23).
Please input the num which one you want to change, q to quit: 6
Input the new value: 1010653440
**********************************************************
1 sig = DMRLOG
2 ver = 7007
3 chksum = 694503311
4 sta = 1
5 n_magic = 7
6 db_magic = 1010653440
7 len = 268435456
8 free = 11474432
9 clsn = 81039
10 clsn_fil = 0
11 clsn_off = 11474432
12 pemnt_magic = 1854731134
13 fil_id = 0
15 next_seq = 3975
16 g_next_seq = 3975
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)
27 l_term_id = 0
28 term_id = 0
29 c_seqno = 3974
30 c_lsn = 81039
**********************************************************
Do you want to quit and save the change to file (y/n): y
Save to file success!

7.启动数据库

修改db_magic后,立即启动数据库。

[dmdba@localhost bin]$ ./dmserver /dmdata/DMOA/dm.ini
file dm.key not found, use default license!
version info: develop
DM Database Server 64 V8 03134283890-20220509-160333-10045 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 2023-05-09
file lsn: 0
ndct db load finished
ndct second level fill fast pool finished
ndct third level fill fast pool finished
ndct second level fill fast pool finished
ndct third level fill fast pool finished
ndct fill fast pool finished
iid page's trxid[10057]
NEXT TRX ID = 10058
pseg_collect_mgr_items, total collect 0 active_trxs, 0 cmt_trxs, 0 pre_cmt_trxs, 0 to_release_trxs, 0 active_pages, 0 cmt_pages, 0 pre_cmt_pages, 0 to_release_pages, 0 mgr pages, 0 mgr recs!
iid page's trxid[11059]
NEXT TRX ID = 12061.
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
pseg recv finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
systables desc init success.
ndct_db_load_info success.
nsvr_process_before_open begin.
nsvr_process_before_open success.
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
SYSTEM IS READY.

数据库成功启动后,登录数据库检查是否正常。

[root@localhost bin]# ./disql SYSDBA/SYSDBA:5238服务器[LOCALHOST:5238]:处于普通打开状态
登录使用时间 : 1.055(ms)
disql V8
SQL> select * from v$rlogfile;行号     GROUP_ID    FILE_ID     PATH                    CLIENT_PATH CREATE_TIME                RLOG_SIZE            MIN_EXEC_VER MIN_DCT_VER
---------- ----------- ----------- ----------------------- ----------- -------------------------- -------------------- ------------ -----------
1          2           0           /dmdata/DMOA/DMOA01.log DMOA01.log  2022-10-17 19:55:22.000000 268435456            V8.1.1.1     4
2          2           1           /dmdata/DMOA/DMOA02.log DMOA02.log  2022-10-17 19:55:22.000000 268435456            V8.1.1.1     4已用时间: 1.179(毫秒). 执行号:700.

8.错误示范

上面说到修改修改redo文件的db_magic后才能启动数据库。那么测试下不修改db_magic值,是否能启动数据库呢?

重新拷贝redo文件后,立即启动数据库。

[dmdba@localhost bin]$ #重新覆盖redo日志文件
[dmdba@localhost bin]$ cp /dmdata/DMTEST/DAMENG/DAMENG01.log /dmdata/DMOA/DMOA01.log
[dmdba@localhost bin]$ cp /dmdata/DMTEST/DAMENG/DAMENG02.log /dmdata/DMOA/DMOA02.log
[dmdba@localhost bin]$ ./dmserver /dmdata/DMOA/dm.ini
file dm.key not found, use default license!
version info: develop
DM Database Server 64 V8 03134283890-20220509-160333-10045 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 2023-05-09
file lsn: 0
ndct db load finished
ndct second level fill fast pool finished
ndct third level fill fast pool finished
ndct second level fill fast pool finished
ndct third level fill fast pool finished
ndct fill fast pool finished
iid page's trxid[21139]
NEXT TRX ID = 21140
pseg_collect_mgr_items, total collect 0 active_trxs, 0 cmt_trxs, 0 pre_cmt_trxs, 0 to_release_trxs, 0 active_pages, 0 cmt_pages, 0 pre_cmt_pages, 0 to_release_pages, 0 mgr pages, 0 mgr recs!
iid page's trxid[22141]
NEXT TRX ID = 23143.
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
pseg recv finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
trx: 23272 purged 1 pages
trx: 23274 purged 1 pages
trx: 23280 purged 1 pages
trx: 23285 purged 1 pages
trx: 23286 purged 1 pages
trx: 23287 purged 1 pages
trx: 23288 purged 1 pages
trx: 23289 purged 1 pages
trx: 23291 purged 1 pages
trx: 23292 purged 1 pages
trx: 23293 purged 1 pages
trx: 23294 purged 1 pages
trx: 23295 purged 1 pages
trx: 23296 purged 1 pages
trx: 23297 purged 1 pages
trx: 23299 purged 1 pages
trx: 23304 purged 1 pages
trx: 23310 purged 1 pages
trx: 23315 purged 1 pages
trx: 23332 purged 1 pages
trx: 23333 purged 1 pages
trx: 23334 purged 1 pages
trx: 23335 purged 1 pages
trx: 23336 purged 1 pages
trx: 23337 purged 1 pages
trx: 23338 purged 1 pages
trx: 23339 purged 1 pages
trx: 23347 purged 1 pages
trx: 23349 purged 1 pages
trx: 23350 purged 1 pages
trx: 23351 purged 1 pages
trx: 23353 purged 1 pages
trx: 23354 purged 1 pages
trx: 23356 purged 1 pages
trx: 23357 purged 1 pages
trx: 23358 purged 1 pages
trx: 23359 purged 1 pages
trx: 23360 purged 1 pages
trx: 23361 purged 1 pages
trx: 23363 purged 1 pages
trx: 23364 purged 1 pages
trx: 23365 purged 1 pages
trx: 23368 purged 1 pages
trx: 23370 purged 1 pages
trx: 23378 purged 1 pages
trx: 23379 purged 1 pages
trx: 23380 purged 1 pages
trx: 23383 purged 1 pages
trx: 23385 purged 1 pages
trx: 23387 purged 1 pages
trx: 23388 purged 1 pages
trx: 23389 purged 1 pages
trx: 23390 purged 1 pages
trx: 23391 purged 1 pages
trx: 23392 purged 1 pages
trx: 23393 purged 1 pages
trx: 23437 purged 67 pages
trx: 23439 purged 1 pages
trx: 23440 purged 1 pages
trx: 23441 purged 1 pages
trx: 23445 purged 1 pages
trx: 23450 purged 1 pages
trx: 23451 purged 1 pages
trx: 23452 purged 1 pages
trx: 23457 purged 1 pages
trx: 23458 purged 1 pages
trx: 23459 purged 1 pages
trx: 23460 purged 1 pages
trx: 23464 purged 1 pages
trx: 23465 purged 1 pages
trx: 23466 purged 1 pages
trx: 23467 purged 1 pages
trx: 23471 purged 1 pages
trx: 23473 purged 1 pages
trx: 23474 purged 1 pages
trx: 23475 purged 1 pages
trx: 23476 purged 1 pages
trx: 23477 purged 1 pages
trx: 23478 purged 1 pages
trx: 23482 purged 1 pages
trx: 23483 purged 1 pages
trx: 23487 purged 1 pages
trx: 23488 purged 1 pages
trx: 23492 purged 1 pages
trx: 23493 purged 1 pages
trx: 23494 purged 1 pages
trx: 23495 purged 1 pages
trx: 23496 purged 1 pages
trx: 23497 purged 1 pages
trx: 23498 purged 1 pages
trx: 23499 purged 1 pages
trx: 23500 purged 1 pages
trx: 23501 purged 1 pages
trx: 23502 purged 1 pages
trx: 23503 purged 1 pages
trx: 23505 purged 1 pages
trx: 23506 purged 1 pages
trx: 23507 purged 1 pages
trx: 23508 purged 1 pages
trx: 23509 purged 1 pages
trx: 23510 purged 1 pages
trx: 23511 purged 1 pages
trx: 23512 purged 1 pages
trx: 23513 purged 1 pages
trx: 23514 purged 1 pages
trx: 23517 purged 1 pages
trx: 23518 purged 1 pages
trx: 23519 purged 1 pages
trx: 23521 purged 1 pages
trx: 23522 purged 1 pages
trx: 23523 purged 1 pages
trx: 23524 purged 1 pages
trx: 23525 purged 1 pages
trx: 23526 purged 1 pages
trx: 23527 purged 1 pages
trx: 23530 purged 1 pages
trx: 23531 purged 1 pages
trx: 23532 purged 1 pages
trx: 23535 purged 1 pages
trx: 23536 purged 1 pages
trx: 23537 purged 1 pages
trx: 23540 purged 1 pages
trx: 23541 purged 1 pages
trx: 23542 purged 1 pages
trx: 23543 purged 1 pages
trx: 23544 purged 1 pages
trx: 23545 purged 1 pages
trx: 23546 purged 1 pages
trx: 23547 purged 1 pages
trx: 23548 purged 1 pages
trx: 23549 purged 1 pages
trx: 23550 purged 1 pages
trx: 23551 purged 1 pages
trx: 23552 purged 1 pages
trx: 23553 purged 1 pages
trx: 23554 purged 1 pages
trx: 23555 purged 168 pages
trx: 23556 purged 1 pages
trx: 23557 purged 1 pages
trx: 23584 purged 1 pages
trx: 23588 purged 1 pages
trx: 23590 purged 1 pages
trx: 23591 purged 1 pages
trx: 23592 purged 1 pages
trx: 23593 purged 1 pages
trx: 23594 purged 1 pages
trx: 23595 purged 1 pages
trx: 23596 purged 1 pages
trx: 23597 purged 1 pages
trx: 23598 purged 1 pages
trx: 23599 purged 1 pages
trx: 23600 purged 1 pages
trx: 23602 purged 1 pages
trx: 23603 purged 1 pages
trx: 23604 purged 1 pages
trx: 23605 purged 1 pages
trx: 23606 purged 1 pages
trx: 23607 purged 1 pages
trx: 23608 purged 1 pages
trx: 23609 purged 1 pages
trx: 23610 purged 1 pages
trx: 23611 purged 1 pages
trx: 23612 purged 1 pages
trx: 23614 purged 1 pages
trx: 23615 purged 1 pages
trx: 23616 purged 1 pages
trx: 23617 purged 1 pages
trx: 23618 purged 1 pages
trx: 23619 purged 1 pages
trx: 23620 purged 1 pages
trx: 23621 purged 1 pages
trx: 23622 purged 1 pages
trx: 23623 purged 1 pages
trx: 23625 purged 18 pages
systables desc init success.
ndct_db_load_info success.
nsvr_process_before_open begin.
nsvr_process_before_open success.
SYSTEM IS READY.
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end

好似数据库也能正常启动,再登录数据库试试。

[root@localhost bin]# ./disql SYSDBA/SYSDBA:5238服务器[LOCALHOST:5238]:处于普通打开状态
登录使用时间 : 1.177(ms)
disql V8
SQL> select * from v$rlogfile;行号     GROUP_ID    FILE_ID     PATH                    CLIENT_PATH CREATE_TIME                RLOG_SIZE            MIN_EXEC_VER MIN_DCT_VER
---------- ----------- ----------- ----------------------- ----------- -------------------------- -------------------- ------------ -----------
1          2           0           /dmdata/DMOA/DMOA01.log DMOA01.log  2022-10-17 19:55:22.000000 268435456            V8.1.1.1     4
2          2           1           /dmdata/DMOA/DMOA02.log DMOA02.log  2022-10-17 19:55:22.000000 268435456            V8.1.1.1     4已用时间: 1.439(毫秒). 执行号:37100.
SQL> create table test(c1 int);
操作已执行
已用时间: 2.741(毫秒). 执行号:37101.
SQL> insert into test values(1);
影响行数 1已用时间: 0.833(毫秒). 执行号:37102.
SQL> commit;
操作已执行
已用时间: 1.044(毫秒). 执行号:37103.

登录数据库查询数据和插入数据都没有问题,是否不修改db_magic也行呢?

正当疑惑时,关闭数据库后,再次启动发现启动出错了,提示logfile和dbfile文件的db_magic不一致。

[dmdba@localhost bin]$ ./dmserver /dmdata/DMOA/dm.ini
file dm.key not found, use default license!
version info: develop
DM Database Server 64 V8 03134283890-20220509-160333-10045 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 2023-05-09
rfil grp log file error in (db_magic, permanent_magic), log file /dmdata/DMOA/DMOA01.log is (2046022852, 2050908630), dbfile is(1010653440, 2050908630).
浮点数例外 (核心已转储)

其实在多次尝试后,发现有时能启动,有时会卡在某一环节。
看来还是需要修改redo的db_magic后,再启动数据库。

9.迁移数据

由于redo日志文件是拆借来的,此时启动的数据库无法保证其稳定性。为了避免出现未知问题,建议将数据迁移至新库中。

官方社区

https://eco.dameng.com/community/question/

Linux下达梦误删除文件后恢复步骤相关推荐

  1. LINUX使用rm误删文件后恢复

    最近使用centos执行了rm -rf删除了一个文件,后面想恢复. 先关闭selinux vim /etc/selinux/config SELINUX=disabled reboot 重启生效 1. ...

  2. centos误删除文件如何恢复

    当意识到误删除文件后,切忌千万不要再频繁写入了,否则你的数据恢复的数量将会很少. 而我们要做的是,第一时间把服务器上的服务全部停掉,直接killall 进程名 或者 kill -9 pid . 然后把 ...

  3. SQL SERVER数据库置疑后恢复步骤

    --SQL SERVER数据库置疑后恢复步骤    --1. 恢复步骤:    --a.将smlog_log.ldf文件备份到其它目录下:    --b.将源目录下的smlog_log.ldf文件改名 ...

  4. 计算机怎么设置内存数据恢复,电脑内存不足如何清理?误删除文件怎么恢复?...

    原标题:电脑内存不足如何清理?误删除文件怎么恢复? 电脑每天都储存大量的数据资料,类似于小编这样的大量文字量,图片量的工作,每天的工作的资料都要保存备份,以便以后翻查.日积月累,磁盘空间总是不够用.特 ...

  5. 电脑误删除文件怎么恢复文件,不小心删除了电脑的文件怎么办

    **电脑误删除文件怎么恢复文件,可以从回收站恢复吗?**如果不能从回收站恢复,可以找得到文件的备份吗?如果没有对文件进行备份,也不用惊慌,数据蛙数据恢复专家软件,可以帮助你恢复在电脑上误删的文件. 电 ...

  6. mac误删除文件怎么恢复?

    不管是什么原因,总会有一些朋友会遇到电脑桌面上的文件会因为一些未知的操作而莫名其妙的消失.特别是经常用电脑处理和存储一些重要文件的小伙伴们来说是很痛苦的.文件突然都没了,找不到了,各种文件都打不开了. ...

  7. 误删了php文件怎么恢复,linux中误删了文件怎么恢复

    linux中误删了文件怎么恢复 作为一个多用户.多任务的操作系统,Linux下的文件一旦被删除,是难以恢复的.尽管删除命令只是在文件节点中作删除标记,并不真正清除文件内容,但是其他用户和一些有写盘动作 ...

  8. xshell往linux传文件,Xshell向Linux服务器上传文件的详细步骤

    相信Linux用户对Xshell远程管理软件都不陌生的,不过对于一些新手朋友来讲,向Linux服务器上传文件可能还存在难度,这里小编就分享了Xshell向Linux服务器上传文件的详细步骤,下面一起来 ...

  9. MySQL文件后_MySQL误删除文件后,如何恢复

    MySQL在运行中,如果误删除数据文件,只有服务进程没有退出,那么就有办法将其恢复. 首先介绍Linux下lsof:他可以显示打开的文件和网络连接. 其次/proc目录包含了反映内核和进程树的各种文件 ...

最新文章

  1. 利用c语言找出输入文本最长的一行
  2. 酸了!给湖北籍学生偷偷发慰问金,中文系还不用上网课,这个学校太贴心!...
  3. python库管理_多版本python控制以及python三方库管理
  4. 高级SQL优化(三) 常用优化工具 ——《12年资深DBA教你Oracle开发与优化——性能优化部分》...
  5. [导入]Myeclipse中XML不出智能提示
  6. java多因子认证,Milvus 实战|生物多因子认证系列 (二):人脸识别
  7. 反射生成 INSERT 多个对象的 SQL 语句(批量插入)
  8. UI设计实例|界面设计中,版式实战运用以及设计思路
  9. Oracle数据库备份与还原命令 -- exp/imp
  10. 零零散散的一些知识点(二)
  11. C#中生成随机数的方法和语句
  12. 利用批处理查看dll中的函数
  13. mysql数据怎么提取出来分析_Mysql数据提取器
  14. 企业微信api消息接口调用
  15. 十进制进制法_进制转换方法(进制转换方法的口诀)
  16. 第十八章 数据库服务端设置及操作
  17. srm 592 div 2
  18. 可移动文物快速三维建模
  19. html5源码笔记(三)【爱创课堂专业前端培训】
  20. MATLAB与SolidWorks联合仿真(1)

热门文章

  1. clientWidth offsetWidth innerWidth 区别(窗口尺寸 汇总)
  2. 质数在mysql中怎么表达_质数如何定义
  3. 揭秘站长写博客必备四大实用工具
  4. juqery 总结大全 基础-菜鸟
  5. CB官方推荐AP英语文学与写作必读书目,2023报名中
  6. CCF-数列分段(C语言)
  7. [转]深度学习调参技巧
  8. The Plane.
  9. 基于 J2objc 的跨平台组件化开发实践
  10. 家用计算机做服务器,将服务器CPU安装到家用PC上合适?_服务器_服务器产业-中关村在线...