功能描述
使用pg_dumpall命令可以抽取一个postgresql数据库进一个SQL脚本文件
命令语法
pg_dumpall [选项]
选项含义
| 选项 | 含义 |
| -f<文件名> | 指定输出文件 |
| -s | 只转储模式,不包括数据 |
| -x | 不要转储权限 |
| -a | 只转储数据,不包括模式 |
| -t | 只转储表空间,而不转储数据库或角色 |
| -r | 只转储角色,不包括数据库或表空间 |
| -g | 只转储全局对象,不包括数据库 |
| -c | 在重新创建之前,先删除数据库对象 |
| -O | 不恢复对象所属者 |
| –disable-triggers | 在只恢复数据的过程中禁用触发器 |
| -S<用户名> | 在转储中,指定的超级用户名 |
| -h<主机名> | 数据库服务器的主机名 |
| -l<数据库名> | 另一个默认数据库 |
| -p<端口号> | 数据库服务器端口号 |
| -U<名字> | 以指定的数据库用户连接 |
| -w | 永远不提示输入口令 |
| -W | 强制口令提示 |
| –inserts | 以INSERT命令,而不是COPY命令的形式转储数据 |
| –column-inserts | 以带有列名的INSERT命令形式转储数据 |
| –no-tablespaces | 不转储表空间分配信息 |
例
备份postgresql服务器上的所有数据库
[root@linuxlz.com~]# su – postgres
-bash-4.1$ pg_dumpall >db.sql
备份postgresql服务器上的所有数据库,只转储模式,不包括数据
-bash-4.1$ pg_dumpall -s >db2.sql
备份postgresql服务器上的所有数据库,只转储数据,不包括模式
-bash-4.1$ pg_dumpall -a >db3.sql
正文完