pg_dump 详解/使用举例
pg_dump是一个用于备份PostgreSQL数据库的实用工具。即使当前数据库正在使用,也能够生成一致性的备份,且不会阻塞其他用户访问数据库(包括读、写)
pg_dump只能备份一个数据库。如果要备份Cluster中数据库共有的全局对象,例如角色和表空间,需要使用pg_dumpall。
备份文件以文本或存档文件格式输出。Script dumps是一个普通文本文件,包含将数据库重构到保存时的状态所需的SQL命令。
要从这样的脚本恢复,需要将其提供给psql。脚本文件甚至可以用来在其他机器或者其他架构上重构数据库;进行一些必要的修改,甚至可以在其他数据库上使用。
其他归档文件格式必须与pg_restore一起使用进行数据库的重建。pg_restore可以选择要还原的内容,甚至可以在还原之前对待还原项进行重新排序。归档文件格式可以在不同的架构中使用。
归档文件格式与pg_restore组合使用时,pg_dump提供了一个灵活的归档传递机制。可以使用pg_dump备份整个数据库。pg_restore可用于检查存档和选择要还原数据库的哪些部分。
最灵活的输出文件格式是“自定义”格式(-Fc)和“目录”格式(-Fd)。它们允许选择和重新排序所有存档项,支持并行恢复,以及默认情况下是压缩的。“目录”格式是唯一支持并行备份的格式。
To dump a database called mydb into a SQL-script file:
$ pg_dump mydb > db.sql
To reload such a script into a (freshly created) database named newdb:
$ psql -d newdb -f test.sql
To dump a database into a custom-format archive file:
$ pg_dump -Fc test > test.dump
To dump a database into a directory-format archive:
$ pg_dump -Fd test -f dumpdir
To dump a database into a directory-format archive in parallel with 5 worker jobs:
$ pg_dump -Fd test -j 5 -f dumpdir5
To reload an archive file into a (freshly created) database named newdb:
$ pg_restore -d dump_test test.dump
To dump a single table named mytab:
$ pg_dump -t mytab mydb > db.sql
To dump all tables whose names start with emp in the detroit schema, except for the table named
employee_log:
$ pg_dump -t 'journal*' -T journal_10 test > test_journal.sql
To dump all schemas whose names start with east or west and end in gsm, excluding any schemas
whose names contain the word test:
$ pg_dump -n 'eastgsm' -n 'westgsm' -N 'test' mydb > db.sql
The same, using regular expression notation to consolidate the switches:
$ pg_dump -n '(east|west)gsm' -N 'test*' mydb > db.sql
To dump all database objects except for tables whose names begin with ts_:
$ pg_dump -T 'ts_*' mydb > db.sql
To specify an upper-case or mixed-case name in -t and related switches, you need to double-quote
the name; else it will be folded to lower case (see Patterns). But double quotes are special to the
shell, so in turn they must be quoted. Thus, to dump a single table with a mixed-case name, you need something like
$ pg_dump -t ""MixedCaseName"" mydb > mytab.sql
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里云十年再出发,边缘计算已启航
3月21日,阿里云峰会北京站正式召开,边缘计算专场邀请到了中国移动、阿里云、英特尔等行业专家以及众多边缘计算行业的先行者,和观众分享在MEC、IoT、视频、边缘AI等多个方向的布局与边缘计算最新技术探索和实践,引起来自运营商、硬件和芯片厂商、边缘计算应用等众多现场观众的强烈关注。 5G时代万物智联即将成为现实,但对于计算结构提出了新的要求,需要更低延时、大带宽、高并发和本地化,云、端协同计算将可能无法满足新场景的计算需求,所以云、边、端三体协同成为最佳解决方案——拥有高效、实时、安全特性的边缘计算,未来将成为不可或缺的基础设施之一。 中国移动王军博士:让边缘计算无处不在! 首先,中国移动技术部的王军博士为大家分享了中国移动在边缘计算领域的探索和对于5G+边缘计算未来的畅想,他认为这十年中,网络和云是在独立演进,互不可见。而边缘计算,则在
- 下一篇
阿里云发布边缘节点服务2.0,建立“融合、开放、联动”的边缘计算新形态
“5G时代,边缘计算将发挥更大价值。”阿里云边缘计算技术负责人杨敬宇表示,边缘计算作为5G时代的一项关键技术,未来将成为不可或缺的基础设施之一。那么云的能力是如何深入每个计算场景的?用户如何享受技术红利?阿里云ENS从1.0到2.0时代又完成了怎样的升级蜕变?在刚刚落幕的阿里云峰会北京站-边缘计算专场中,杨敬宇对以上问题做了解答。 一场计算体系架构的巨大革命,需要更多行业玩家进入 在5G和边缘计算到来之后,云、端二体协同向着云边端三体协同去发展,毋庸置疑,这是未来架构的新形态,杨敬宇将整个过程称之为一场计算体系架构的巨大革命。低延迟、大带宽、自定义、高效能、高安全成为了行业颇为关注的几大趋势。 据Gartner预测,2021年将有40%的大型企业在项目中纳入边缘计算原则。而到2022年,边缘计算将成为所有数字业务的必要需求。 而谈到行业,
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装