-
对于早期dba用户数据库恢复到imc用户数据库失败的解决方法
-
一、组网:
-
无
-
二、问题描述:
-
对于 iMC PLAT 3.20-R2602及其之前版本升级上来的iMC,部分数据库使用dba用户,使用dbman进行备份,将dba用户对应的数据库文件作为原始文件,试图恢复到目标数据库iMC PLAT 3.20-R2602及以上版本时,会提示恢复失败。主要原因为iMC PLAT 3.20-R2602及之后的版本的这些数据库不再使用dba用户,而是使用imc用户。
-
三、过程分析:
-
判断此类问题的方法:
-
首先,使用dbman备份出来的原始数据库文件存在名为“数据库名_dba_db_时间_full.db”的文件。
-
其次,iMC安装目录下\iMC\common\conf\server-addr.xml文件中dbname字段存在一个以上的dba用户。
-
存在以上两种情况的时候,使用dbman将原始数据库文件恢复到目标数据库时提示恢复失败,查看日志文件“iMC\dbman\log\dbman_debug.log”, 其中提示“File prefix invalid:*******”。
-
四、解决方案:
-
1、将工具dbatool.zip拷贝到“iMC\dbman\bin”目录下并解压;
-
2、停止iMC;
-
3、点击“监控代理”->“运行环境”->“配置”,以重新生成配置信息。
-
4、通过执行命令行dbatool -dba2imc “Backup File Location + Backup filename”,来逐一手工恢复dba数据库文件到目标数据库,以恢复config数据库为例.
-
5、对于非dba用户对应的数据库文件(EAD/DAM数据库除外),也需要使用该工具进行逐个恢复。
-
6、对于EAD和DAM的数据库文件请使用监控代理中的立即恢复功能恢复。