使用WebSphere中介軟體構建資料庫環境故障排除

CloudSpace發表於2008-09-05
退回主要計算機

    在退回主要計算機之前,需要確保已在主要計算機上成功啟動了 DB2 UDB 伺服器,然後在主要計算機上發出以下命令,以便從備用計算機接管資料庫。

db2 takeover hadr on db

    仔細檢查主要計算機上的資料庫是否具有正確的角色:

db2 get snapshot for database on | grep Role

    它會返回“Primary”狀態。而且,備用計算機和主要計算機上資料庫的狀態現在都應該處於“Peer”狀態。

    故障排除

    作為參考,下面列出了在使用 DB2 HADR 時可能遇到的問題的原因和解決辦法:

SQL1768N 無法啟動 HADR。原因程式碼 =“7”(在啟動主要資料庫或備用資料庫時)。

    此問題的可能原因是,在 HADR 超時間隔內主要資料庫無法建立與其備用資料庫的連線。您可以通過調整時間間隔來適應您的環境。

SQL1768N 無法啟動 HADR。原因程式碼 =“8”(在啟動主要資料庫或備用資料庫時)。

    檢查下面所需的 HADR 變數(參見清單 3)這些變數必須正確而且不能為空:

HADR 資料庫角色
HADR 本地主機名稱
HADR 遠端主機名稱
HADR 遠端服務名稱
遠端伺服器的 HADR 例項名稱
HADR 超時值
HADR 日誌寫入同步模式
SQL1768N 無法啟動 HADR。原因程式碼 =“99”(在啟動主要資料庫或備用資料庫時)。

    在 /etc/services 檔案中檢查用於每個資料庫的 HADR 埠和名稱。它們應具有相同的 hadr_remote_svc 和 hard_local_svc 設定(如上文所述)。

    SQL1769N 停止 HADR 無法完成。原因程式碼 =“2”(在停止主要資料庫或備用資料庫時)。

    在此情況下,您可以先禁用資料庫,然後再停止 HADR: db2 deactivate db
db2 stop hadr on db


    SQL30081N 在主要計算機或備用計算機上啟動 HADR 時檢測到通訊錯誤。

    檢查關鍵引數,確保這些引數在所有 DB2 UDB 伺服器計算機上的配置都正確。使用 DB2 UDB 使用者帳戶登入到資料庫計算機(例如:db2inst1),然後在使用者提示符處鍵入下列命令: db2start (if DB2 is not running)
db2set DB2COMM=TCPIP
db2set DB2AUTOSTART=YES
db2 update dbm cfg using SVCENAME DB2_db2inst1
db2stop
db2start


    (SVCENAME 是您的配置中 TCP/IP 服務的名稱,位於 /etc/services 檔案中。)

SQL2406N 由於資料庫需要前滾,無法執行備份。SQLSTATE=57019(在備份資料庫時)。

    您需要使用此命令前滾資料庫(請參閱清單 17)。

db2 rollforward db to end of logs and stop
    清單 17. 資料庫前滾 >db2 rollforward db sample to end of logs and stop

Rollforward Status

Input database alias = sample
Number of nodes have returned status = 1

Node number = 0
Rollforward status = not pending
Next log file to be read =
Log files processed = S0000000.LOG - S0000006.LOG
Last committed transaction = 2006-10-06-16.22.35.000000

DB20000I The ROLLFORWARD command completed successfully


    接管在主要計算機或備用計算機上不能正常執行。您可以強制發出接管命令:

db2 takeover hard on db by force

    結束語

    DB2 Universal Database (UDB) 高可用性災難恢復 (HADR) 為其客戶端應用程式提供了一種高可用性解決方案。作為客戶端應用程式,WebSphere Application Server 能夠區分資料庫失敗和接管情況。當 DB2 HADR 接管發生時,WebSphere Application Server 將利用 DB2 自動客戶端重新路由功能自動重新建立與備用 HADR 伺服器的連線。

    本文使用 WebSphere Application Server Network Deployment V6.1 和 DB2 UDB HADR 演示了在這兩種產品之間是如何發生接管的。您已經瞭解到啟用 DB2 和 HADR 以及配置 WebSphere Application Server ND 以便連線到 DB2 HADR 的步驟。還學習了有關接管的行為以及接管過程中在 WebSphere Application Server 日誌檔案中記錄的預期訊息。另外,還向您介紹了有關若干常見錯誤情況的一些疑難解答提示和技巧。

    在 WebSphere Application Server 上不需要任何額外配置步驟即可成功進行 HADR 故障轉移。WebSphere Application Server 利用了 DB2 UDB HADR 提供的技術和自動客戶端重新路由功能為您的應用程式提供了高可用性環境。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14789789/viewspace-442010/,如需轉載,請註明出處,否則將追究法律責任。

相關文章