紅旗linux 雙機問題解決

anycall2010發表於2008-09-18

使用者紅旗LINUX HA 故障現象:

  機器如果將監聽設定為浮動IP的地址時候,機器老自動切換,每隔3分鐘切換一次。

按照紅旗技術支援給的建議:

1、HA監控ORACLE時仍然報錯ORA-12514: TNS:listener does not currently know
of service requested in connect descriptor,這需要聽過修改ORACLE的
listener.ora和tnsnames.ora來解決
在兩臺機器上做如下修改:
用oracle使用者修改
/opt/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora,將其中的
主機名改為浮動IP
用oracle使用者修改
/opt/app/oracle/product/10.2.0/db_1/network/admin/listener.ora,將其中的
主機名改為浮動IP,然後新增如下一段
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /data/app/oracle/product/10.2.0/db_1)
(SID_NAME = orcl)
)

以上兩處修改,可以參見附件admin.tgz中的兩個檔案內容。也可以將附件
admin.tgz中的兩個檔案覆蓋原有檔案,但是覆蓋之後,要修改此兩個檔案的屬主
和屬主以及許可權。注意,兩臺機器都要做如此修改。

分析了紅旗技術工程師意圖:

1.手動編輯監聽和本地監聽,將每臺機器的本地監聽指向監聽程式,將監聽程式指定到浮動監聽

2.建立浮動監聽LINSTENER,這個是個全域性監聽。
從思路來講,是完全正確的。可是,怎麼回出現每3分鐘故障切換呢?

挺HA工程師的意見,說有可能好可能是SYSTEM使用者被鎖上了,我立刻查SYSTEM使用者:

select user_id,username,account_status from dba_users;

發現system 使用者lock(time out;經查明是system 使用者因輸入密碼次數錯誤過多被鎖上了。經分析:使用者每3分鐘進行一次故障切換,而且指令碼中設定system密碼不正確導致。修改指令碼中system登陸密碼。

但是還是出現隔三分鐘,故障切換一次。這個是什麼問題呢?使用lsnrctl status,發現本地監聽和lintener沒有連線上,也就是本地監聽沒有找到linstener監聽。檢視/etc/hosts檔案,發現是VIP沒有設定,哎。。。。當時是誰安裝的HA,連VIP地址都不設定,無語中。。。。。。。。。。

設定完VIP的IP地址後,本地監聽和linstener 能夠解析。察看監聽的狀態是“unknow'的,這個是由於手動註冊的,因此係統無法識別。不放心,然後使用tnsping,狀態OK。

就這樣問題解決。這裡面一環套一環,解決起來有點意思。

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

相關文章