您的位置:首页 > 财经 > 金融 > 推广公司如何找客户_海淀_怎样搭建网站_国际新闻最新消息今天 新闻

推广公司如何找客户_海淀_怎样搭建网站_国际新闻最新消息今天 新闻

2025/2/26 4:17:00 来源:https://blog.csdn.net/yuanjinshenglife/article/details/144516321  浏览:    关键词:推广公司如何找客户_海淀_怎样搭建网站_国际新闻最新消息今天 新闻
推广公司如何找客户_海淀_怎样搭建网站_国际新闻最新消息今天 新闻

PostgreSQL17.x数据库备份命令及语法说明

文章目录

  • PostgreSQL17.x数据库备份命令及语法说明
  • 1. 备份命令
    • 1. pg_dump命令参数
    • 2. pg_dumpall命令参数
  • 2. `pg_dump` 备份单库语法
  • 3. `pg_dumpall` 备份所有数据库语法
  • 4. 备份案例
    • 1. pg_dump单库备份
    • 2.pg_dumpall单库备份
  • 4. 备份案例
    • 1. pg_dump单库备份
    • 2.pg_dumpall单库备份

1. 备份命令

在 PostgreSQL 17 中,备份数据库的常用命令是 pg_dumppg_dumpall

1. pg_dump命令参数

D:\Programs\PG17数据库备份>pg_dump --help
pg_dump 把一个数据库转储为纯文本文件或者是其它格式.使用方法:pg_dump [选项]... [数据库名字]一般选项:-f, --file=FILENAME          输出文件或目录名-F, --format=c|d|t|p         输出文件格式 (定制, 目录, tar明文 (默认值))-j, --jobs=NUM               执行多个并行任务进行备份转储工作-v, --verbose                详细模式-V, --version                输出版本信息, 然后退出-Z, --compress=METHOD[:DETAIL]compress as specified--lock-wait-timeout=TIMEOUT  在等待表锁超时后操作失败--no-sync                    不用等待变化安全写入磁盘--sync-method=METHOD         set method for syncing files to disk-?, --help                   显示此帮助, 然后退出控制输出内容选项:-a, --data-only              只转储数据,不包括模式-b, --large-objects          include large objects in dump--blobs                      (same as --large-objects, deprecated)-B, --no-large-objects       exclude large objects in dump--no-blobs                   (same as --no-large-objects, deprecated)-c, --clean                  在重新创建之前,先清除(删除)数据库对象-C, --create                 在转储中包括命令,以便创建数据库-e, --extension=PATTERN      仅转储指定的扩展名-E, --encoding=ENCODING      转储以ENCODING形式编码的数据-n, --schema=PATTERN         只转储指定的模式-N, --exclude-schema=PATTERN 不转储指定的模式-O, --no-owner               在明文格式中, 忽略恢复对象所属者-s, --schema-only            只转储模式, 不包括数据-S, --superuser=NAME         在明文格式中使用指定的超级用户名-t, --table=PATTERN          dump only the specified table(s)-T, --exclude-table=PATTERN  不转储指定的表-x, --no-privileges          不要转储权限 (grant/revoke)--binary-upgrade             只能由升级工具使用--column-inserts             以带有列名的INSERT命令形式转储数据--disable-dollar-quoting     取消美元 (符号) 引号, 使用 SQL 标准引号--disable-triggers           在只恢复数据的过程中禁用触发器--enable-row-security        启用行安全性(只转储用户能够访问的内容)--exclude-extension=PATTERN  do NOT dump the specified extension(s)--exclude-table-and-children=PATTERNdo NOT dump the specified table(s), includingchild and partition tables--exclude-table-data=PATTERN 不转储指定的表中的数据--exclude-table-data-and-children=PATTERNdo NOT dump data for the specified table(s),including child and partition tables--extra-float-digits=NUM     覆盖extra_float_digits的默认设置--filter=FILENAME            include or exclude objects and data from dumpbased on expressions in FILENAME--if-exists                  当删除对象时使用IF EXISTS--include-foreign-data=PATTERN包含外部服务器上与模式匹配的外部表的数据--inserts                    以INSERT命令,而不是COPY命令的形式转储数据--load-via-partition-root    通过根表加载分区--no-comments                不转储注释--no-publications            不转储发布--no-security-labels         不转储安全标签的分配--no-subscriptions           不转储订阅--no-table-access-method     do not dump table access methods--no-tablespaces             不转储表空间分配信息--no-toast-compression       不转储TOAST压缩方法--no-unlogged-table-data     不转储没有日志的表数据--on-conflict-do-nothing     将ON CONFLICT DO NOTHING添加到INSERT命令--quote-all-identifiers      所有标识符加引号,即使不是关键字--rows-per-insert=NROWS      每个插入的行数;意味着--inserts--section=SECTION            备份命名的节 (数据前, 数据, 及 数据后)--serializable-deferrable    等到备份可以无异常运行--snapshot=SNAPSHOT          为转储使用给定的快照--strict-names               要求每个表和()schema包括模式以匹配至少一个实体--table-and-children=PATTERN dump only the specified table(s), includingchild and partition tables--use-set-session-authorization使用 SESSION AUTHORIZATION 命令代替ALTER OWNER 命令来设置所有权联接选项:-d, --dbname=DBNAME      对数据库 DBNAME备份-h, --host=主机名        数据库服务器的主机名或套接字目录-p, --port=端口号        数据库服务器的端口号-U, --username=名字      以指定的数据库用户联接-w, --no-password        永远不提示输入口令-W, --password           强制口令提示 (自动)--role=ROLENAME          在转储前运行SET ROLE如果没有提供数据库名字, 那么使用 PGDATABASE 环境变量
的数值.臭虫报告至<pgsql-bugs@lists.postgresql.org>.
PostgreSQL 主页: <https://www.postgresql.org/>D:\Programs\PG17数据库备份>

2. pg_dumpall命令参数

D:\Programs\PG17数据库备份>pg_dumpall --help
pg_dumpall 抽取一个 PostgreSQL 数据库簇进一个 SQL 脚本文件.使用方法:pg_dumpall [选项]...一般选项:-f, --file=FILENAME          输出文件名-v, --verbose                详细模式-V, --version                输出版本信息, 然后退出--lock-wait-timeout=TIMEOUT  在等待表锁超时后操作失败-?, --help                   显示此帮助, 然后退出控制输出内容选项:-a, --data-only              只转储数据,不包括模式-c, --clean                  在重新创建数据库前先清除(删除)数据库-E, --encoding=ENCODING      转储以ENCODING形式编码的数据-g, --globals-only           只转储全局对象, 不包括数据库-O, --no-owner               不恢复对象所属者-r, --roles-only             只转储角色,不包括数据库或表空间-s, --schema-only            只转储模式, 不包括数据-S, --superuser=NAME         在转储中, 指定的超级用户名-t, --tablespaces-only       只转储表空间,而不转储数据库或角色-x, --no-privileges          不要转储权限 (grant/revoke)--binary-upgrade             只能由升级工具使用--column-inserts             以带有列名的INSERT命令形式转储数据--disable-dollar-quoting     取消美元 (符号) 引号, 使用 SQL 标准引号--disable-triggers           在只恢复数据的过程中禁用触发器--exclude-database=PATTERN   排除名称与PATTERN匹配的数据库--extra-float-digits=NUM     覆盖extra_float_digits的默认设置--filter=FILENAME            exclude databases based on expressions in FILENAME--if-exists                  当删除对象时使用IF EXISTS--inserts                    以INSERT命令,而不是COPY命令的形式转储数据--load-via-partition-root    通过根表加载分区--no-comments                不转储注释--no-publications            不转储发布--no-role-passwords          不转储角色的密码--no-security-labels         不转储安全标签的分配--no-subscriptions           不转储订阅--no-sync                    不用等待变化安全写入磁盘--no-table-access-method     do not dump table access methods--no-tablespaces             不转储表空间分配信息--no-toast-compression       不转储TOAST压缩方法--no-unlogged-table-data     不转储没有日志的表数据--on-conflict-do-nothing     将ON CONFLICT DO NOTHING添加到INSERT命令--quote-all-identifiers      所有标识符加引号,即使不是关键字--rows-per-insert=NROWS      每个插入的行数;意味着--inserts--use-set-session-authorization使用 SESSION AUTHORIZATION 命令代替ALTER OWNER 命令来设置所有权联接选项:-d, --dbname=CONNSTR     连接数据库使用的连接串-h, --host=主机名        数据库服务器的主机名或套接字目录-l, --database=DBNAME    另一个缺省数据库-p, --port=端口号        数据库服务器的端口号-U, --username=名字      以指定的数据库用户联接-w, --no-password        永远不提示输入口令-W, --password           强制口令提示 (自动)--role=ROLENAME          在转储前运行SET ROLE如果没有使用 -f/--file,那么将把SQL脚本写到标准输出.臭虫报告至<pgsql-bugs@lists.postgresql.org>.
PostgreSQL 主页: <https://www.postgresql.org/>D:\Programs\PG17数据库备份>

2. pg_dump 备份单库语法

pg_dump 是一个用于备份单个数据库的工具。它创建一个可以使用 psqlpg_restore 还原的 SQL 脚本文件,或者创建一个自定义格式的归档文件。

基本语法:

pg_dump -U 用户名 -F 格式 -f 输出文件 数据库名称
  • -U 指定连接到PostgreSQL时使用的用户名。
  • -F 指定输出文件的格式,可以是 p (纯文本SQL脚本, 默认), c (自定义归档), d (目录归档), 或 t (tar归档)。
  • -f 指定输出文件的路径和名称。
  • 最后指定要备份的数据库名称。
pg_dump -U dbuser -F p -f /path/to/backupfile.sql mydatabase

这将创建一个名为 backupfile.sql 的纯文本SQL脚本文件,其中包含重建 mydatabase 所需的所有SQL命令。

3. pg_dumpall 备份所有数据库语法

pg_dumpall 用来转储一个PostgreSQL服务器上的所有数据库。它还会转储全局对象(如角色和表空间),这些对象不属于任何单独的数据库。

基本语法:

pg_dumpall -U 用户名 -f 输出文件
  • -U 指定连接到PostgreSQL时使用的用户名。
  • -f 指定输出文件的路径和名称。
pg_dumpall -U myuser -f /path/to/all_databases_backup.sql

这将创建一个名为 all_databases_backup.sql 的纯文本SQL脚本文件,其中包含重建所有数据库以及全局对象所需的所有SQL命令。

4. 备份案例

以用户名dbuser为例

1. pg_dump单库备份

pg_dump -U dbuser -F p -f D:/my-db001.sql my-db

2.pg_dumpall单库备份

pg_dumpall -U dbuser -F p -f D:/my-db-all.sql

件,其中包含重建所有数据库以及全局对象所需的所有SQL命令。

4. 备份案例

以用户名dbuser为例

1. pg_dump单库备份

pg_dump -U dbuser -F p -f D:/my-db001.sql my-db

2.pg_dumpall单库备份

pg_dumpall -U dbuser -F p -f D:/my-db-all.sql

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com