1、問題描述
使用gpfdist往集羣中導入大量數據, 一段時間後鏈接退出,集羣沒法鏈接數據庫
2、問題定位
使用以下命令查看:服務器
gpstate -s mdw-1:gpadmin-[INFO]:- Segment Info mdw-1:gpadmin-[INFO]:- Hostname = sdw-1 mdw-1:gpadmin-[INFO]:- Address = sdw-1 mdw-1:gpadmin-[INFO]:- Datadir = /home/mirror/gpseg2 mdw-1:gpadmin-[INFO]:- Port = 50000 mdw-1:gpadmin-[INFO]:- Mirroring Info mdw-1:gpadmin-[INFO]:- Current role = Mirror mdw-1:gpadmin-[INFO]:- Preferred role = Mirror mdw-1:gpadmin-[WARNING]:- Mirror status = Out of Sync <<<<<<<< mdw-1:gpadmin-[INFO]:- Status mdw-1:gpadmin-[INFO]:- PID = 10227 mdw-1:gpadmin-[WARNING]:- Configuration reports status as = Down <<<<<<<< mdw-1:gpadmin-[WARNING]:- Segment status = Down in configuration <<<<<<<<
鏈接到相應機器,查看磁盤情況:oracle
說明此時磁盤佔用滿了,沒法啓動的問題就在這裏了spa
3、問題解決
處理這種狀況有以下幾種方式:.net
3.1 擴容磁盤
因爲本人是將數據目錄直接放在根目錄下,能夠經過添加一塊新磁盤的方式直接擴容空間日誌
3.2 清理文件
每每,線上的環境不會有足夠的時間進行磁盤的擴容,甚至一些其餘因素致使根本你就接觸不到服務器。那麼這時候只能進行文件的清除。code
3.2.1 清理日誌文件
系統長時間運行後,pg_log文件夾下日誌文件會佔用必定的空間,這裏能夠直接刪除該目錄下的文件,或者是備份到其餘地方,讓系統正常啓動。blog
3.2.2 清理pg_xlog文件(慎重!慎重!)
該操做須要在數據庫停機的狀況下作。事務
在segment下,會有pg_xlog文件夾,這個文件夾裏存儲的是wal日誌信息,記錄事務信息,相似oracle的redo日誌,數據在進入greenplum數據庫前,都是先進入到該日誌文件中,因此該文件很是重要,千萬不能手工操做該目錄下的文件,若是直接手工刪除了該文件,數據庫就沒法啓動。因此刪除該文件要謹慎,可使用該命令:pg_resetxlog 。只有在xlog佔用了大量空間的狀況下才考慮清理,不然不建議清理。操做步驟:io
1)中止greenplum集羣(或者是數據庫已經因爲磁盤空間不夠而中止了)
2)使用pg_controldata命令
pg_controldata $segment_directory ...... Latest checkpoint's NextXID: 0/72023 Latest checkpoint's NextOID: 25175 ......
這裏$segment_directory是segment目錄,也就是gpstate -s命令看到的Datadir的路徑,若是找不到能夠搜索pg_control,該文件所在的位置即爲須要的目錄位置,經過上述命令獲取到標紅的兩處關鍵性信息
3)執行以下命令:
pg_resetxlog -o 25175 -x 72023 -f $segment_directory
注意,通常狀況下pg_xlog 和 pg_clog 目錄是不能夠動的,除非是沒有其餘手段能讓數據庫起來,這裏做爲清理數據的最後手段,清理前也強烈建議把文件備份到其餘目錄,以防萬一。
另外,以上命令須要數據庫管理員帳戶執行,上述命令完成後,根據你的使用的空間大小,通常可以有很多的空間釋放出來,可讓你的系統先起來。
因爲任何緣由致使pg_controldata不可用的時候,可使用下面的方式人工計算出來相應的值:
4)啓動greenplum集羣
4、實踐建議
一、清理xlog日誌是在不得已的狀況下才這麼作,待集羣正常啓動後,須要謹慎驗證數據的完整性
二、須要有本身的一套監控機制監控磁盤使用率,儘量的避免磁盤使用100%的狀況發生,一旦因爲這種狀況致使了集羣崩潰,甚至丟失數據,多是災難性的
三、若是是因爲誤刪了pg_logs的文件致使集羣沒法啓動,也可使用pg_resetxlog命令使集羣恢復啓動,但必定要謹慎驗證數據的完整性
5、參考文章
https://blog.csdn.net/w1992wishes/article/details/82631240