簡體   English   中英

如何恢復PostgreSQL 8.0數據庫

[英]How to Recover PostgreSQL 8.0 Database

在我的PostgreSQL 8.0數據庫上,我開始收到“錯誤:無法打開關系1663/17269/16691:沒有這樣的文件或目錄”消息,現在無法訪問我的數據。 關於如何恢復至少一些數據的任何想法? 專業支持是一種選擇。

問候。

RP

如果您希望盡快恢復數據並且值得您一試,那么專業支持選項應該足夠簡單。

現在,您已經檢查了所有數據庫(這是基礎數據庫,pg_clog,pg_xlog和該級別的所有其他文件夾)的完整備份。

  1. 該文件實際存在嗎? 這可能是權限問題,而不是文件丟失。

  2. 檢查您的防病毒/安全軟件包-他們是否錯誤地隔離了文件? 如果您可以從掃描/活動掃描中排除PostgreSQL的數據庫目錄,那也是值得的。

  3. 記下您可以記住的所有信息,以了解何時發生以及之前發生了什么。 這將有助於您或顧問進行故障排除。

  4. 同樣檢查日志-將記錄此錯誤,找到第一次出現的錯誤,然后查看是否有任何奇怪的地方。

  5. 仔細檢查您是否確實已備份了所有現有文件,然后重新啟動PostgreSQL。

  6. 嘗試以用戶postgres身份連接到數據庫postgres或數據庫template1。 如果可行,則該文件是您的數據庫文件之一,而不是用戶的全局列表或某些此類文件。

  7. 嘗試使用正確的名稱(和權限-檢查其他文件)創建一個空文件。 如果您真的很幸運,那只是一個索引。 否則,它可能是您無法使用的數據表。 然后,您可以單獨轉儲其他表。

  8. OK-如果您在這里,則可以連接到數據庫。 文件路徑中的這些數字是PostgreSQL的標識系統對象的OID。 您可以在此處嘗試幾個有用的查詢。 這兩個查詢應為您提供數據庫的ID,然后為您提供缺少文件的對象。 這對於您的專業人士也是有用的信息。

    從pg_database選擇SELECT oid,datname,dattablespace; SELECT * FROM pg_class其中relfilenode = 16691;

修補之前,請記住確保已備份文件系統

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM