剛從山東回來,一堆麻煩事情。這不,快要下班了,客戶說oracle rac掛了。
650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/19233051N-0.jpg" border="0" alt="" />
這是有兩個節點和一個共用儲存群組成的rac系統,安裝了oracle 11g r2.我試著登入系統查看,發現一個伺服器不能聯通。另一個上去了,執行df -h ,發現一個分區 /tmp被塞滿了。再進子目錄查看,發現一堆0926.dmp這樣的檔案,每個檔案大小都在600M左右。看來是程式員在執行exp備份操作,一問,果然如此。
再從rac的私人網路,試著登入另一個節點,居然進去了。這說明心跳檢查是正常的。
在跟其他人溝通後,我採取如下步驟:
1、清理/tmp空間,手動刪除陳舊的檔案,釋放出至少50%的空間。
2、關閉所有oracle執行個體 srvctl stop instance -d sery_db -i sery1 , srvctl stop instance -d sery_db -i sery2.
3、查看不能從外面訪問的那個伺服器的網路狀態,檢查方法為:
1)ip add 檢查地址是否存在
2)mii-tool 檢查網線是否正常
3)service network start 重啟網路.嘿嘿,居然正常了。
4、檢查asm檔案系統,步驟為:
1)ps aux | grep asm檢查進程
2) su - grid ; asmcmd 進去查看記錄檔、資料檔案是否存在。還好它們都在呢。
5、啟動執行個體,然後用sqlplus登入檢查資料檔案等。
主要原因:oracle會根據需要往/tmp分區寫入資料比如排序等中間過程),如果檔案系統滿了,則寫入失敗,可能導致會話掛起。
本文出自 “sery” 部落格,請務必保留此出處http://sery.blog.51cto.com/10037/1008477