我得到這個奇怪的錯誤(PostgreSQL的)錯誤:無法打開關係
Caused by: org.postgresql.util.PSQLException: ERROR: could not open
relation base/17369/1684: No such file or directory
我如何恢復它? 任何想法?
謝謝
我得到這個奇怪的錯誤(PostgreSQL的)錯誤:無法打開關係
Caused by: org.postgresql.util.PSQLException: ERROR: could not open
relation base/17369/1684: No such file or directory
我如何恢復它? 任何想法?
謝謝
您丟失了與表1684和數據庫17369相關的文件。檢查目錄庫/ 17369中的名稱爲1684的存在文件 。
你能確定它是表:
1)獲取數據庫名稱:select * from pg_database where oid=17369
2)獲取表名(連接到受影響的數據庫):select * from pg_class where oid=1684
有可能是沒有更多你可以做。只從備份中恢復。
可能有多種原因。如果合理,最好的辦法是在通過診斷程序運行硬件後從備份中恢復。
如果不希望從備份中恢復,那麼您需要停止Postmaster,製作數據庫的副本,並儘快獲得專業幫助。數據可能可以或不可以恢復,你需要知道這件事正在進行。另外,我會建議超出Craig指出的鏈接,在這種情況下(可能會刪除文件),從複製中恢復,最好在另一個系統上的整個文件系統的塊級拷貝。
FWIW我觀察到PostgreSQL在嚴重濫用的硬件上運行,並且在硬件超出限制時出現許多索引損壞問題(例如,數據庫服務器位於熱門,不通風的衣櫃中的門層以上),但這看起來不像一個(索引損壞相對容易修復,但通常錯誤信息有點不同)。
現在,另外,它可以有可能與當前數據庫和備份中恢復數據。很明顯,我們不會知道這一點,直到嘗試它。
由什麼查詢產生?這可能很小,但假設它不是。請閱讀並按照以下說明緊急*:http://wiki.postgresql.org/wiki/Corruption。然後編輯你的問題,包括基本信息,如Pg版本,導致錯誤的命令,PostgreSQL日誌文件的內容,操作系統,文件系統,最近斷電事件,崩潰,磁盤問題等。同時顯示'pg_test_fsync'的輸出和'postgresql.conf'中'fsync'參數的值。 – 2013-04-08 10:54:24
很可能是磁盤故障或文件意外刪除。 – 2013-04-09 15:59:18
做什麼克雷格林格說。 – 2013-05-15 01:18:26