达梦数据库中的魔术是一个很重要的数字,在之前讲达梦恢复的时候我们知道恢复有3个步骤:
- restore
- recover
- update db_magic
DM7 达梦数据库 物理备份还原之 脱机备份(DMRMAN工具) 使用手册
https://www.cndba.cn/cndba/dave/article/3612
除了DB_MAGIC之外,在达梦数据库中,还有另外一个参数:PERMANENT_MAGIC,可以通过如下SQL查询:
[dave@www.cndba.cn ~]$ disql / as sysdba
[-2512]:Unauthorized user .
disql V8
username:SYSDBA/SYSDBA
Server[LOCALHOST:5236]:mode is primary, state is mount
login used time : 12.297(ms)
SQL> SELECT PERMANENT_MAGIC;
LINEID PERMANENT_MAGIC
---------- ---------------
1 1472111826
used time: 47.240(ms). Execute id is 200.
SQL> SELECT DB_MAGIC FROM V$RLOG;
LINEID DB_MAGIC
---------- --------------------
1 970504754
used time: 10.775(ms). Execute id is 201.
SQL>
在达梦数据库中,PERMANENT_MAGIC和DB_MAGIC都是用来标识数据库的INTEGER类型值。
DM在初始化数据库时生成PERMANENT_MAGIC和DB_MAGIC值,其中PERMANENT_MAGIC一经生成,永远不会改变(DDL_CLONE还原库的PERMANENT_MAGIC除外),称为数据库永久魔数。只有DDL_CLONE还原库的PERMANENT_MAGIC会发生改变,当一个库使用DDL_CLONE备份集还原并恢复之后,在执行RECOVER DATABASE …… UPDATE DB_MAGIC
时,PERMANENT_MAGIC会发生改变。
DB_MAGIC称为数据库魔数,同样可以用来表示某一个数据库,但DB_MAGIC是可以变化的,每经过一次还原、恢复操作后,DB_MAGIC就会产生变化,用来区分备份源库和还原目标库。
实际上DB_MAGIC 在日志,归档和备份中都存在,可以根据需要进行修改:
DM7 达梦数据库 使用dmmdf 工具 修改 db_magic
https://www.cndba.cn/dave/article/3613
版权声明:本文为博主原创文章,未经博主允许不得转载。