We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
在該帳號的家目錄新增檔案「.pgpass」
$ sudo vim ~/.pgpass
修改或輸入以下資料
localhost:5432:database:username:password #「localhost」(表示本機端),輸入127.0.0.1或IP #「5432」為連接埠(PostgreSQL預設連接埠) #「database」為資料庫名稱 #「username」為資料庫帳號,(預設為postgres) #「password」為密碼
修改 .pgpass 的權限為 600
$ sudo chmod 600 ~/.pgpass
新增備份目錄並測試看看,利用 pg_dump 能否匯出資料庫
$ mkdir dbbackup $ pg_dump –h 127.0.0.1 –p 5432 –U postgres 資料庫 > test.dump
如果沒問密碼就備份表示設定成功。反之,如果系統要求你輸入密碼,那可能是哪個步驟做錯了,請回頭一一確認。
在該帳號的 ~/bin/ 新增檔案backupdb.sh,檔案內容如下
$ vim ~/bin/backupdb.sh
#!/bin/bash #設定時間變數 TODAY=`date +%Y%m%d` YESTERDAY=$(date -d "yesterday" +%Y%m%d) #設定備份路徑,請修改到正確路徑 BKDIR="/home/username/backup" #設定專案變數 PROJECT="test" #備份資料庫,請修改資料庫名稱 pg_dump -h localhost -p 5432 -U $PROJECT $PROJECT | gzip > $BKDIR/$PROJECT.$TODAY.gz #刪除舊備份檔 rm $BKDIR/$PROJECT.$YESTERDAY.gz
將backupdb.sh設為執行檔
$ chmod +x backupdb.sh
加入 crontab 排程內,每天凌晨3:30做備份。
$ sudo crontab -e
將下面內容加入檔案內,紅色部分請修改到正確路徑,如要修改備份時間請修改 30(分) 及 3(時)
30 3 * * * /home/username/bin/backupdb.sh
使用 pg_dump 指令。
pg_dump -W -U postgres -h localhost your_db_name > 20150304.sql
其中 -U postgres 是資料庫使用者名稱。
使用 psql 指令。
sudo service nginx stop dropdb -W -U postgres -h localhost your_db_name createdb -W -U postgres -h localhost your_db_name psql -W -U postgres -h localhost your_db_name < 20150304.sql sudo service nginx start
如果要砍掉重現現有的資料庫,用 dropdb 和 createdb 指令,並且需要關閉正在連線的應用,例如 nginx 網站伺服器。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
自動備份
在該帳號的家目錄新增檔案「.pgpass」
修改或輸入以下資料
修改 .pgpass 的權限為 600
新增備份目錄並測試看看,利用 pg_dump 能否匯出資料庫
如果沒問密碼就備份表示設定成功。反之,如果系統要求你輸入密碼,那可能是哪個步驟做錯了,請回頭一一確認。
在該帳號的 ~/bin/ 新增檔案backupdb.sh,檔案內容如下
將backupdb.sh設為執行檔
加入 crontab 排程內,每天凌晨3:30做備份。
將下面內容加入檔案內,紅色部分請修改到正確路徑,如要修改備份時間請修改 30(分) 及 3(時)
備份匯出
使用 pg_dump 指令。
其中 -U postgres 是資料庫使用者名稱。
匯入還原
使用 psql 指令。
如果要砍掉重現現有的資料庫,用 dropdb 和 createdb 指令,並且需要關閉正在連線的應用,例如 nginx 網站伺服器。
The text was updated successfully, but these errors were encountered: