pg逻辑备份,主要有pg_dump ,pg_dumpall,copy ,以及数据加载插件工具pg_bulkload。而在不同场景选择合适的备份工具。现在简单对比一下各自的使用场景,及优缺点.
pg_dump :把一个数据库转储为纯文本文件或者是其它格式.
优点:可以选择一个数据库或部分表进行备份 , 备份灵活
缺点:对用户权限不能备份。
文档连接:http://postgres.cn/docs/14/app-pgdump.htmlpg_dumpall:低层还是调用的pg_dump
优点:对用户权限不能备份。
缺点:只能备份集簇服务所有数据库
文档连接:https://www.postgresql.org/docs/current/app-pg-dumpall.htmlcopy : 命令用于表与文件(和标准输出,标准输入)之间的相互拷贝;
优点:对表,字段,部份数据备份更灵活 。
\copy 命令在客户端执行导入客户端的数据文件
缺点:一次一个表
文档连接:https://www.postgresql.org/docs/14/sql-copy.htmlpg_bulkload :是一种用于PostgreSQL的高速数据加载工具(不备份)
优点:最大的优势就是速度。优势在让我们跳过shared buffer,wal buffer。直接写文件。
缺点:安装插件,只能加载
文档连接:https://github.com/ossc-db/pg_bulkload
注意:逻辑备份的文本方式, IO 不可控,和操作系统命令 大批量写文件一样,对IO有冲击
二进制方式, IO 相对比较平稳
文章转载自AsherHu,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




