來源:互聯網網民 2008-06-14 05:54:12
評論問題:爲什麽修改機器名後實例無法啓動,並且報SQL6031N錯誤。
環境:
産品 DB2
平台 跨平台
版本8.1
解答:
DB2版本8開始,原來的DB2企業版和企業擴展版合並爲企業服務器版,無論對于分區數據庫和非分區數據庫,在實例目錄下都會有db2nodes.cfg文件,該文件記錄了服務器節點信息。
以Windows平台爲例,對于機器名爲TSSTEST1上的一個單分區數據庫實例DB2,在..SQLLIB\DB2目錄下db2nodes.cfg文件中記錄了下面一行:
0 TSSTEST1 TSSTEST1 0
如果修改了機器的機器名,則需要修改該文件。比如如果修改機器名爲TSCTEST1,則上面的文件需要修改爲
0 TSCTEST1 TSCTEST1 0
否則,啓動實據庫實例時會報SQL6031N錯誤,原因碼爲10。
原因碼10的解釋是:
(10) 確保在 db2nodes.cfg 的第 "<行>"
行中定義的主機名值在系統上都定義了,並且可操作。
在Windows平台,如果定義實例爲自動啓動,或習慣在服務中啓動實例,需要特別注意這個問題。
問題:爲什麽修改機器名後實例無法啓動,並且報SQL6031N錯誤。
環境:
産品 DB2
平台 跨平台
版本8.1
解答:
DB2版本8開始,原來的DB2企業版和企業擴展版合並爲企業服務器版,無論對于分區數據庫和非分區數據庫,在實例目錄下都會有db2nodes.cfg文件,該文件記錄了服務器節點信息。
以Windows平台爲例,對于機器名爲TSSTEST1上的一個單分區數據庫實例DB2,在..SQLLIB\DB2目錄下db2nodes.cfg文件中記錄了下面一行:
0 TSSTEST1 TSSTEST1 0
如果修改了機器的機器名,則需要修改該文件。比如如果修改機器名爲TSCTEST1,則上面的文件需要修改爲
0 TSCTEST1 TSCTEST1 0
否則,啓動實據庫實例時會報SQL6031N錯誤,原因碼爲10。
原因碼10的解釋是:
(10) 確保在 db2nodes.cfg 的第 "<行>"
行中定義的主機名值在系統上都定義了,並且可操作。
在Windows平台,如果定義實例爲自動啓動,或習慣在服務中啓動實例,需要特別注意這個問題。