如何修改DB2服務(wù)器主機(jī)名
在DB2的管理工作中,有時(shí)可能需要修改DB2數(shù)據(jù)庫服務(wù)器的主機(jī)名,筆者將指導(dǎo)您修改DB2服務(wù)器的主機(jī)名。
產(chǎn)品:DB2 UDB
平臺(tái):AIX,Solaris,HP-UX,Linux,Windows
版本:V8 V9.1V9.5
為了修改服務(wù)器的主機(jī)名,我們可以在DB2數(shù)據(jù)庫服務(wù)器上執(zhí)行以下步驟來實(shí)現(xiàn):
1) 停止DB2管理服務(wù)器(DAS)和DB2實(shí)例
a)db2admin stop
在Windows上,您可以直接執(zhí)行命令來停止DAS,在Linux和UNIX上,您可以執(zhí)行命令來獲取DAS實(shí)例的名稱,然后再停止DAS,如
- db2set-all|grepDB2ADMINSERVER
- [g]DB2ADMINSERVER=das91
然后su – das91后執(zhí)行命令“db2admin stop”
b) db2stop
如果有多個(gè)實(shí)例,需要全部停止??梢杂胐b2ilist命令列出該主機(jī)上所有的實(shí)例,然后一一停止
如果是Windows系統(tǒng),您可以
- setDB2INSTANCE=INST1
- db2stop
這樣來停止實(shí)例
如果是Linux或UNIX系統(tǒng),您可以分別登錄實(shí)例用戶來執(zhí)行”db2stop”
2) 修改服務(wù)器主機(jī)名(各種操作系統(tǒng)如何修改主機(jī)名,請(qǐng)參閱相關(guān)操作系統(tǒng)文檔)
3) 以DB2實(shí)例用戶登錄后,執(zhí)行
- db2set-gDB2SYSTEM=db2terminate
上述命令,在Windows上,應(yīng)該不會(huì)遇到問題,但是如果您的操作系統(tǒng)是Linux或者是UNIX的話,有可能此時(shí)遇到錯(cuò)誤,如:如果是V8、V9.1,
您將遇到如下錯(cuò)誤信息:
- $db2set–gDB2SYSTEM=pirates
- DB2SETprocessingcomplete,rc=-2029059830,SQLCODE=0
如果是V9.5,您將遇到如下錯(cuò)誤信息:
- $db2set-gDB2SYSTEM=privates
- DBI1309ESystemerror.
- Explanation:
- Thetoolencounteredanoperatingsystemerror.
- Userresponse:
- Asystemerrorwasencounteredduringregistryaccess.Ensurethatthere
- isenoughspaceonthefilesystemwheretheregistryislocated,and
- thatthereisavalidLANconnectioniftheregistryisremote.
上述誤的原因是因?yàn)槿肿兞康牟僮魃婕暗较到y(tǒng)級(jí)別的文件,實(shí)例用戶并無相應(yīng)權(quán)限來修改文件,而是需要root權(quán)限。我們可以用以下方法來完成該命令的執(zhí)行:
- $suroot
- root'sPassword:
- $db2set-gdb2system=privates
- $db2terminate
注意:上述su命令用不帶- 的,使得root具有實(shí)例用戶的環(huán)境變量
如果有多個(gè)實(shí)例,上述命令只需執(zhí)行一次
用實(shí)例用戶檢查修改情況,可以確認(rèn)已經(jīng)修改完成。
- $db2set–all|grepDB2SYSTEM
- [g]DB2SYSTEM=privates
4) 編輯db2nodes.cfg文件,該文件位于
- ** Linux和UNIX: /sqllib/db2nodes.cfg
- ** Windows: IBMSQLLIBDB2db2nodes.cfg
把主機(jī)名修改為新的主機(jī)名,如db2node.cfg原內(nèi)容為 0 red01 0
改為新的主機(jī)名 0 privates 0
如果有多個(gè)實(shí)例,請(qǐng)一并修改
5) 更新DB2管理服務(wù)器的配置信息
- a)db2listadminnodedirectoryshowdetail
- b)db2uncatalognode
- c)db2catalogadmintcpipnoderemotesystem
- d)db2updateadmincfgusingDB2SYSTEM
- e)db2updateadmincfgusingSMTP_SERVER
6) 啟動(dòng)DB2管理服務(wù)器(DAS)和DB2實(shí)例
a)db2admin start
在Windows上,您可以直接執(zhí)行命令來啟動(dòng)DAS,在Linux和UNIX上,您可以執(zhí)行命令來獲取DAS實(shí)例的名稱,然后再停止DAS,如
- db2set-all|grepDB2ADMINSERVER
- [g]DB2ADMINSERVER=das91
然后su – das91后執(zhí)行命令“db2admin start”
b) db2start
如果有多個(gè)實(shí)例,需要全部運(yùn)行??梢杂胐b2ilist命令列出該主機(jī)上所有的實(shí)例,然后一一啟動(dòng)
如果是Windows系統(tǒng),可以
- setDB2INSTANCE=INST1
- db2start
這樣來啟動(dòng)實(shí)例。
如果是Linux或UNIX系統(tǒng),您可以分別登錄實(shí)例用戶來執(zhí)行”db2start”
7) 從服務(wù)器上的DB2控制中心刪除舊主機(jī)名的條目,然后單擊“添加系統(tǒng)”菜單,用新主機(jī)名發(fā)現(xiàn)新的主機(jī)名來添加。如果您從來不使用控制中心等GUI工具,此步驟可以忽略。而且,從DB2 V9.1開始,在UNIX系統(tǒng)上將不再提供控制中心等GUI工具。
【編輯推薦】