Postgresql
PostgreSQL 因設備空間不足而崩潰
我們
PostgreSQL 11
在CentOS 7
伺服器下執行。最近,我們在日誌中有幾個警告導致 PostgreSQL 伺服器崩潰:2022-05-09 23:26:29 EDT pg_restore db123 132.132.132.32 postgres ERROR: could not extend file "base/71592268/71621568": No space left on device 2022-05-09 23:26:29 EDT pg_restore db123 132.132.132.32 postgres HINT: Check free disk space. (...) 2022-05-09 23:26:33 EDT DETAIL: Could not open file "pg_notify/0000": No space left on device. 2022-05-09 23:26:34 EDT LOG: database system is shut down
目錄下有幾個數據庫
/var/lib/pgsql/11/data/base/
:# du -h /var/lib/pgsql/11/data/base/ 7.7M /var/lib/pgsql/11/data/base/1 7.7M /var/lib/pgsql/11/data/base/13877 8.1M /var/lib/pgsql/11/data/base/13878 0 /var/lib/pgsql/11/data/base/pgsql_tmp 61M /var/lib/pgsql/11/data/base/852671 166M /var/lib/pgsql/11/data/base/852672 699M /var/lib/pgsql/11/data/base/852673 83M /var/lib/pgsql/11/data/base/852674 14M /var/lib/pgsql/11/data/base/852675 476M /var/lib/pgsql/11/data/base/852676 131M /var/lib/pgsql/11/data/base/852677 14G /var/lib/pgsql/11/data/base/1102146 9.9M /var/lib/pgsql/11/data/base/30205118 9.4M /var/lib/pgsql/11/data/base/34117470 274M /var/lib/pgsql/11/data/base/71255881 9.2G /var/lib/pgsql/11/data/base/71501647 9.2G /var/lib/pgsql/11/data/base/71592267 9.8M /var/lib/pgsql/11/data/base/60242430 9.2G /var/lib/pgsql/11/data/base/71423479 8.1G /var/lib/pgsql/11/data/base/71423480 6.5G /var/lib/pgsql/11/data/base/71592268
問題:
- 在不訪問 PostgreSQL 伺服器的情況下,如何知道哪個基目錄對應哪個數據庫名稱?
- 一旦我們知道哪個目錄分配給哪個數據庫,刪除它是否安全?
pg_database
如果不查看該表的文件或該表的文件(可能/var/lib/pgsql/11/data/global/1262
),您將無法知道哪個目錄屬於哪個數據庫。但是您不能開始刪除數據目錄中的文件或目錄。那肯定會破壞您的數據庫集群。唯一的解決方案是增加文件系統中的可用磁碟空間,然後您就可以啟動伺服器了。