最近工做中遇到pg數據庫data文件夾大小達到32G,大體的排查流程以下:數據庫
1.首先查看是哪一個文件或者那些文件比較大;權限
2.根據文件的名稱找到對應的數據表a;數據
3.確認數據表a中數據實際上只有3000條左右,數據量沒有這麼大;文件
4.通過對實際業務場景排查,這個表a是用來記錄數據庫表數據變化的表,其餘的表中數據發生增刪改,表中的觸發器都會插入一條數據到表a中;備份
5.平臺會輪詢這個表中的數據,並作出一些相應的處理;並且平臺會按期刪除表a中的數據;工作
6.因爲整個系統的業務量不是很大,頻繁進行數據操做的數據表只有表b,其對應的表a的數據沒有實際做用,徹底能夠不須要觸發器,故直接將表b中觸發器刪除,觀察一天查看錶a中的數據量基本上沒有變化;data
7.後來才知道雖然平臺按期刪除了表a中的數據,可是在數據庫中並不會刪除實際的數據,這也就是爲何表a文件那麼大,可是實際的數據很小的緣由;系統
8.備份data文件和表a的數據,將表a刪除掉,而後從新建表a,把備份的數據導入到表a中,data文件的大小正常了,平臺正常運行;
9.須要注意的是,pg建立數據庫的時候,用的帳號須要平臺使用的帳號一致,不然會出現平臺沒有權限操做表a;