我有一个 db2 服务器,我需要重命名服务器中的数据库。 我创建了配置文件:
DB_NAME=E2P,E2POLD
DB_PATH=/db2/E2P
INSTANCE=db2e2p
NODENUM=0
然后启动数据库实例并执行 relocationb 命令:
db2relocatedb -f relocate.cfg
但这给了我以下错误:
DBT1006N The file/device "/db2/E2P/db2e2p/NODE0000/SQL00001/" could not be opened.
我已经检查过,配置文件中没有空格。请建议这里出了什么问题?
我也检查了诊断日志,并看到了以下错误:
2015-04-11-04.22.18.593830-240 I481891E628 LEVEL: Error
PID : 26289 TID : 46931183135040PROC : db2sysc 0
INSTANCE: db2e2p NODE : 000 DB : E2P
APPHDL : 0-36 APPID: *LOCAL.DB2.150411082246
AUTHID : DB2Q01
EDUID : 88 EDUNAME: db2evmgi (DB2DETAILDEADLOCK) 0
FUNCTION: DB2 UDB, database monitor, sqmEvmonWriter::initTarget, probe:40
MESSAGE : ZRC=0x800D002C=-2146631636=SQLM_RC_EVPATH "path in use"
DATA #1 : String, 17 bytes
DB2DETAILDEADLOCK
DATA #2 : String with size, 60 bytes
/db2/E2P/db2e2p/NODE0000/SQL00001/db2event/db2detaildeadlock
2015-04-11-04.22.18.594489-240 I482520E528 LEVEL: Error
PID : 26289 TID : 46931183135040PROC : db2sysc 0
INSTANCE: db2e2p NODE : 000 DB : E2P
APPHDL : 0-36 APPID: *LOCAL.DB2.150411082246
AUTHID : DB2Q01
EDUID : 88 EDUNAME: db2evmgi (DB2DETAILDEADLOCK) 0
FUNCTION: DB2 UDB, database monitor, sqmEvmonWriter::activate, probe:40
MESSAGE : ZRC=0x800D002C=-2146631636=SQLM_RC_EVPATH "path in use"
DATA #1 : String, 17 bytes
DB2DETAILDEADLOCK
系统重新启动在这里会有帮助吗?
似乎您需要在类似的 mv 命令下运行:mv/home/db2inst1/db2inst1/NODE0000/E2P/home/db2inst1/db2inst1/NODE0000/E2POLD
在执行 db2relocate 命令之前。
这是适合您情况的好文章之一:
[Db2] 用于 db2relocationb 命令的简单测试用例 shell 脚本
https://www.ibm.com/support/pages/node/1099185
它告诉 db2relocationb 命令的基本用法。
希望这有帮助。