详解docker中如何实现psql数据库备份与恢复
服務器
小編這次要給大家分享的是詳解docker中如何實現psql數據庫備份與恢復,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
1. Docker 中 Postgres數據庫備份
命令:
docker exec it db_13 pg_dumpall -c -U mrp > mrp217
解釋:
docker exec it [docker中鏡像數據庫名稱] pg_dumpall -c -U [用戶名稱] > [導處的數據庫名稱]
2. Postgres數據庫備份
命令:
pg_dump --host xxxxx --port 5434 --username odoo > odoo217 mrp
解釋:
pg_dump –host [地址] –port [端口] –username [數據庫的用戶名] > [導出的文件] [數據庫名字]
3. 在本地恢復,直接通過命令行恢復到docker
psql -U odoo(用戶名) -h localhost -p 6543(docker映射出的端口) -d odoo(數據庫名) -f /media/liang/_dde_data/mrp217
4. 在恢復到docker中數據庫之前,先把舊庫刪掉,再建新庫,然后恢復(定期的數據庫更新)
docker exec -it db13 bash #進入daocker
psql -U odoo(用戶名)-d postgres # 進入psql數據庫進去之后,執行數據庫操作:
drop databse odoo; # 刪除數據庫
create database odoo; # 新建數據庫
退出dockers再去恢復數據庫即可
4.1 另一種恢復,我的這里不適用
pg_dump -h localhost -p 5432 -U odoo -F c -b -v -f "/usr/20200214.backup" mrp docker內,作用:從docker數據庫內備份到docker內
docker cp db_mrp_sync:/usr/20200214.backup ./ docker外,作用:從docker導到docker外 服務器內
scp xxxxxx:/home/xxx/20200214.backup D:\\ 連接遠程,導到本地位置
pg_restore -d <數據庫名> /path/to/your/file/mrp.sql -c -U <用戶名>
5. 從測試服務器將導到本地
scp xxxx:/home/xxx/mrp217 D:\\ 連接遠程,導到本地位置 未裝shell工具時
scp ip:測試服務器中備份文件的路徑 要導入的本地路徑
看完這篇關于詳解docker中如何實現psql數據庫備份與恢復的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
總結
以上是生活随笔為你收集整理的详解docker中如何实现psql数据库备份与恢复的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 海信集团:于芝涛正式出任海信集团总裁
- 下一篇: 有哪些优秀的打印机品牌