PostGre热备份数据库

用法: pg_dump [选项]... [数据库名字]

备份表
/home/postgres/pgsql/bin/pg_dump -h 10.8.87.7 -p 5478 -U postgres -t 表名  wechart_ares  > /home/fanyl/wechart_ares`date +%Y%m%d`.sql
备份数据库
/home/postgres/pgsql/bin/pg_dump -h 10.8.87.7 -p 5478 -U postgres --column-inserts wechart  > /home/fanyl/wechartdb`date +%Y%m%d`.sql
恢复数据库
/home/postgres/pgsql/bin/pg_dump -h 10.8.87.7 -p 5478 -U postgres -d wechart  > /home/fanyl/wechartdb`date +%Y%m%d`.sql
一般选项:
  -f, --file=FILENAME         output file or directory name
  -F, --format=c|d|t|p        output file format (custom, directory, tar, plain text)
  -v, --verbose            详细模式
  -Z, --compress=0-9       被压缩格式的压缩级别
--lock-wait-timeout=TIMEOUT 在等待表锁超时后操作失败
  --help                       显示此帮助信息, 然后退出
  --versoin                    输出版本信息, 然后退出
控制输出内容选项:
  -a, --data-only          只转储数据,不包括模式
  -b, --blobs              在转储中包括大对象
  -c, --clean              在重新创建之前,先清除(删除)数据库对象
  -C, --create             在转储中包括命令,以便创建数据库
  -E, --encoding=ENCODING     转储以ENCODING形式编码的数据
  -n, --schema=SCHEMA      只转储指定名称的模式
 -N, --exclude-schema=SCHEMA     不转储已命名的模式
  -o, --oids               在转储中包括 OID
  -O, --no-owner           在明文格式中, 忽略恢复对象所属者
  -s, --schema-only        只转储模式, 不包括数据
  -S, --superuser=NAME     在转储中, 指定的超级用户名
  -t, --table=TABLE        只转储指定名称的表
  -T, --exclude-table=TABLE       只转储指定名称的表
  -x, --no-privileges      不要转储权限 (grant/revoke)
  --binary-upgrade         只能由升级工具使用
  --column-inserts          以带有列名的INSERT命令形式转储数据
  --disable-dollar-quoting     取消美元 (符号) 引号, 使用 SQL 标准引号
  --disable-triggers         在只恢复数据的过程中禁用触发器
  --inserts                 以INSERT命令,而不是COPY命令的形式转储数据
  --no-security-labels        do not dump security label assignments
  --no-tablespaces           不转储表空间分配信息
  --no-unlogged-table-data    do not dump unlogged table data
  --quote-all-identifiers     quote all identifiers, even if not key words
  --serializable-deferrable   wait until the dump can run without anomalies
 --use-set-session-authorization
   使用 SESSION AUTHORIZATION 命令代替ALTER OWNER 命令来设置所有权
联接选项:
  -h, --host=主机名        数据库服务器的主机名或套接字目录
  -p, --port=端口号        数据库服务器的端口号
  -U, --username=名字      以指定的数据库用户联接
  -w, --no-password        永远不提示输入口令
  -W, --password           强制口令提示 (自动)
  --role=ROLENAME          do SET ROLE before dump
如果没有提供数据库名字, 那么使用 PGDATABASE 环境变量的数值.

参考博客
pg_dump实例详解

推荐阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 3,924评论 0 9
  • <<编程基础-语言SQL.Git.Docker>>SQL.PLSQLhttp://docs.pythontab.c...
    燕京麒麟阅读 196评论 0 0
  • 数据库的基本是概念名词解释: 数据库名词解释 元组:可以理解为表的每一行就是一个元组 候选码:若关系中的某一属性组...
    杰伦哎呦哎呦阅读 754评论 0 6
  • 小八用早早孕试纸测出来怀孕了。 软件:宝宝树孕育,妈妈帮 早期:叶酸,保灵孕宝口服液 记性不好,帮不上什么忙哎。 ...
    朝花夕露阅读 69评论 0 0
  • 从5月起直到今日,加班时间相对而言都是比较多的,但是相对于每天闲散的上班时间,我更喜欢现在,这种充实的感觉 这种日...
    会飞的斑马阅读 60评论 0 0
  • “祝这世界继续热闹,祝我仍是我。”
    NLF_62阅读 65评论 0 0
  • pip升级pip show pippython -m pip install --upgrade pip pip安...
    beeworkshop阅读 588评论 0 0
  • 从前真的很慢,从前还没有汽车,还没有高速公路,还没有手机电脑,最快乐的事情便是和伙伴疯跑着玩耍,不远万里只为见上最...
    闵阿朱阅读 641评论 0 0