Linux下达梦误删除文件后恢复步骤

article/2025/9/17 4:26:59

目录

    • 数据文件恢复
      • 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/


http://chatgpt.dhexx.cn/article/vlINYqUd.shtml

相关文章

windows注册表恢复方法

如果可以进入安全模式,您可以在安全模式内调用命令提示符输入命令修复一下系统组件。 在管理员命令提示符下键入以下命令: Dism /Online /Cleanup-Image /ScanHealth 这条命令将扫描全部系统文件并和官方系统文件对比,扫描计算机中的不一致…

linux环境下恢复rm误删的文件

文章目录 前言rm之后还有救吗使用foremost找回文件使用extundelete找回文件 预防误删引发的事故总结 前言 一提到在 linux 环境下删除文件,那绝对离不开 sudo rm -rf /* 这个梗,每次看到这个命令,我都想到一幅恶搞的图片: 这个『…

如何恢复 Linux 系统下被删除的文件 ?

丢失数据是任何用户都可能经历的最令人不安和痛苦的经历之一。一旦珍贵数据被删除或丢失,就再也找不不回来通常会引发焦虑,让用户感到无助。值得庆幸的是,有几个工具可以用来恢复 Linux 机器上被删除的文件。我们尝试了一些数据恢复工具&…

入门版Linux上恢复误删除的文件

一、被删除的文件正在被进程使用: 当某个文件正在被某个程序使用时,linux针对该文件有回两个计数器: i_count计数器:该文件可能被多个进程使用,每一个进程使用该文件,i_count数值都会加1。反之&#xff0…

不小心误删注册表exe,所有exe程序无法运行

首先我陈述下误删的原因吧,与其说是误删不如说就是自己有 意删除的,电脑Windows7,我在安装CASS10.1的时候,由于一个补丁程序始终不能运行,弹框显示说CASS10.1.6补丁.exe不是有效的Win32应用程序。然而我去寻找解决办法…

如何恢复Linux中的误删文件

写在前面的话 在开始教程之前我有必要提醒大家,使用窗口管理器(GUI)删除文件和使用命令行工具(CLI)删除文件这两种方法之间是有区别的。 当我们使用窗口管理器来删除文件时,我们仅仅只是将文件从某个目录移…

Win11注册表编辑器误删了如何恢复?

​ 注册表编辑器是一个用来更改系统注册表设置的高级工具,与资源管理器的界面很类似。近期有用户将注册表编辑器误删了,那么应该如何恢复呢,下面小编就给大家分享一下详细的恢复方法。遇到同样问题的用户注意了。 更多重装系统教程尽在小白…

注册表中exe被删除后恢复

恢复注册表 如果我们不小心将注册表中的exe删除后,这个时候不管打开什么软件都需我们自己进行指定才能打开使用,这样是及其麻烦的,而且在删除掉.exe之后,原来能在“运行”中搜索的执行文件也都无法执行了,比如果原来我…

LINUX使用rm误删文件后恢复

最近使用centos执行了rm -rf删除了一个文件,后面想恢复。 先关闭selinux vim /etc/selinux/config SELINUXdisabled reboot 重启生效1、使用debugfs命令恢复(此命令为系统自带) 1-1、查看文件系统类型,以下2个命令都可查看&…

电脑注册表误删恢复办法:系统文件和设置还原法

一.起因:为了修改电脑字体一不小心把Control Panel整个注册表给删除了,导致电脑界面变的锯齿,界面变形等各种问题,网上找了许多方法都没成功或者难度较大,最终使用系统恢复还原点将系统变成几个小时前的各种设置&#…

如何每天自动发送心灵鸡汤、正能量语录

为什么要发送心灵鸡汤、正能量语录 许多团队管理者或者行政为了需要鼓励团队,让员工有一个积极饱满的工作状态,需要每天在企业群内发送心灵鸡汤、正能量语录等信息,按照大多数人的办法,是在搜索引擎找到对应的心灵鸡汤或者正能量…

励志心灵鸡汤经典语录,满满都是道理!

1、【人生的幸运是靠努力而来的,世上没有不劳而获,天上掉馅饼的事,所谓种瓜得瓜,种豆得豆。别人可以替你开车,但不能替你走路;可以替你做事,但不能替你感受。人生的路要靠自己去走,成…

隐马尔可夫模型前向算法推导

已知条件有: 状态集合:,观测集合: 已观测到的观测序列 从t时刻的状态到t1时刻的状态的状态转移概率: 从t时刻的状态生成t时刻的观测的概率: 状态初始概率向量 给定隐马尔可夫模型 ,定义到…

隐马尔可夫模型的三个基本问题

目录 写在前面的话隐马尔可夫模型(HMM)隐马尔可夫模型的三个基本问题 写在前面的话 隐马尔可夫模型(HMM)的三个基本问题,我查阅相关资料有一些自己的理解,如有错误请多指正~ 参考资料: 如何用…

隐马尔可夫模型HMM (机器学习模型)

隐马尔科夫模型,Hidden Markov Model,简称HMM,是一个比较经典的机器学习模型。 它在语言识别,自然语言处理,模式识别等领域得到广泛的应用。当然,随着目前深度学习的崛起,尤其是RNN, LSTM等神经…

NILMTK——因子隐马尔可夫之隐马尔可夫

因子隐马尔可夫(FHMM)由Ghahramani在1997年提出,是一种多链隐马尔可夫模型,适合动态过程时间序列的建模,并具有强大的时序模型的分类能力,特别适合非平稳、再现性差的序列的分析。 1. 马尔可夫链 随机过程的研究对象是随时间演变…

隐马尔可夫模型(四)学习问题

学习问题 已知观测序列O,估计模型λ的参数,使得在该模型下观测序列概率P(O|λ)最大。 解决算法 最大似然估计(有监督) 有监督意味着已知在给定的训练集中观测序列O{o1,o2,…,oT}和隐状态序列I{i1,i2,……

隐马尔可夫模型python_隐马尔可夫模型HMM及Python实现

隐马尔可夫模型差不多是学习中遇到的最难的模型了,本节通过对《统计学习方法》进行学习并结合网上笔记,用Python代码实现了隐马模型观测序列的生成、前向后向算法、Baum-Welch无监督训练、维特比算法。比较清晰的了解了隐马尔可夫模型,其实在实际运用中我们只需要调用库就一…

隐马尔可夫模型(三)预测问题

概率计算问题 已知模型λ和观测序列O,求对给定观测序列条件概率P(I|O)最大的状态序列。即给定观测序列,求最有可能的对应的状态序列。 解决算法 近似算法 近似算法的核心思想是在每个时刻t选择在该时刻最有可能出现的状态 it*&…

win10c盘扩容_Win10中无损分区扩容调整大小

各位看官,上回书表到那里小生不记得了。今天咱们表一表在win10中无损分区扩容调整大小的方法。全程图文并茂,深入浅出,谁都可以一看就会。 所需工具:1、win10系统 2、DiskGenius软件 最终目的:你的C盘空间渐小需要扩容。选择C盘外的任何物理分区比如d盘,将之分出10G大小增…