温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

详解docker中如何实现psql数据库备份与恢复

发布时间:2020-07-21 09:11:54 来源:亿速云 阅读:348 作者:小猪 栏目:服务器

小编这次要给大家分享的是详解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数据库备份与恢复的文章,如果觉得文章内容写得不错的话,可以把它分享出去给更多人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI