![](/img/trans.png)
[英]Backup & Restore PostgreSQL database and setup localhost environment with laravel in windows 7
[英]How to backup & Restore PostgreSQL database in Windows7?
我是 Postgres 數據庫的新手。 我必須從生產服務器獲取備份(pgAdmin 版本是 9.2.4)並在我的本地機器上恢復它(我有 pgAdmin 版本 9.4)。 我試圖通過右鍵單擊數據庫-> 備份來獲取備份以獲取 .backup 文件。 如下圖所示:
但是當我嘗試恢復備份文件時,出現了很多錯誤。
我還想知道在兩個系統上使用不同的端口是否也會在恢復備份時產生問題。 因為當我嘗試恢復相同系統的備份時沒有問題。
要備份數據庫,您可以使用pg_dump.exe
:
打開 Powershell
轉到 Postgres bin 文件夾。 例如:
cd "C:\\Program Files\\PostgreSQL\\9.6\\bin"
輸入命令以轉儲數據庫。 例如:
./pg_dump.exe -U postgres -d my_database_name -f D:\\Backup\\<backup-file-name>.sql
為您的 postgres 用戶鍵入密碼
要恢復數據庫,您可以使用psql.exe
。 (請注意,以下內容摘自 Alexandr Omelchenko 的有用答案,由於我不清楚原因,該答案已被刪除。)
打開 Powershell
轉到 Postgres bin 文件夾。 例如:
cd "C:\\ProgramFiles\\PostgreSQL\\9.6\\bin"
輸入命令以恢復數據庫。 例如:
./psql.exe -U postgres -d my_database_name -f D:\\Backup\\<backup-file-name>.sql
為您的 postgres 用戶鍵入密碼
由於版本不匹配,我在創建數據庫轉儲文件時被卡在這里。 所以我按照下面的命令來獲取備份和恢復。
pg_dump -h localhost -U postgres -p 5432 YourDbName > BackupFileName.dump
作為替代方案,您可以嘗試下面的 cmd 代碼。 如果您無法從 pgAdmin4 恢復,您可以試試這個。 首先,您應該找到路徑 pg_restore.exe。 它一般在
C:\\Program Files\\PostgreSQL\\12\\bin>
更改數據庫名稱和備份路徑后運行以下代碼
pg_restore.exe --verbose --clean -U "postgres" --dbname databaseName c:\database.backup
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.