导出所有数据库
GBase 8c 支持使用gs_dumpall 工具导出所有数据库的全量信息,包含GBase 8c 中每个
数据库信息和公共的全局对象信息。可根据需要自定义导出如下信息:
导出所有数据库全量信息,
包含GBase 8c 中每个数据库信息和公共的全局对象信息
(包
含角色和表空间信息)
。
使用导出的全量信息可以创建与当前主机相同的一个主机环境,
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
348
拥有相同数据库和公共全局对象,且库中数据也与当前各库相同。
仅导出数据,
即导出每个数据库中的数据,
且不包含所有对象定义和公共的全局对象信
息。
仅导出所有对象定义,包括:表空间、库定义、函数定义、模式定义、表定义、索引定
义和存储过程定义等。
使用导出的对象定义,
可以快速创建与当前主机相同的一个主机
环境,拥有相同的数据库和表空间,但是库中并无原数据库的数据。
操作步骤
步骤1 以操作系统用户gbase 登录数据库主节点。
步骤2 使用gs_dumpall 一次导出所有数据库信息。
gs_dumpall -U gbase -f /home/gbase/backup/MPPDB_backup.sql -p 15432
Password:
表10-5 常用参数说明
参数
参数说明
举例
-U
连接数据库的用户名。
说明:
不指定连接数据库的用户名时,
默认以安装时创
建的初始系统管理员连接。
-U jack
-W
指定用户连接的密码。
如果主机的认证策略是trust,则不会对数据库管
理员进行密码验证,即无需输入-W 选项;
如果没有-W 选项,并且不是数据库管理员,会提
示用户输入密码。
-W abcd@123
-f
将导出文件发送至指定目录文件夹。
如果这里省略,
则
使用标准输出。
-f
home/gbase/backup/
postgres_backup.tar
-p
指定服务器所侦听的TCP 端口或本地Unix 域套接字后
缀,以确保连接。
-p 15432
其他参数说明请参见《GBase 8c V5_3.0.x_工具参考》中“服务端工具> gs_dumpall”
章节。
----结束
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
349
示例
示例一:执行gs_dumpall,导出所有数据库全量信息(gbase 用户为管理员用户),导出文
件为文本格式。执行命令后,会有很长的打印信息,最终出现total time 即代表执行成功。
示例中将不体现中间的打印信息。
gs_dumpall -U gbase -f /home/gbase/backup/MPPDB_backup.sql -p 15432
Password:
gs_dumpall[port='15432'][2017-07-21 15:57:31]: dumpall operation successful
gs_dumpall[port='15432'][2017-07-21 15:57:31]: total time: 9627 ms
示例二:执行gs_dumpall,仅导出所有数据库定义(gbase 用户为管理员用户),导出文件
为文本格式。执行命令后,会有很长的打印信息,最终出现total time 即代表执行成功。示
例中将不体现中间的打印信息。
gs_dumpall -U gbase -f /home/gbase/backup/MPPDB_backup.sql -p 15432 -s
Password:
gs_dumpall[port='15432'][2018-11-14 11:28:14]: dumpall operation successful
gs_dumpall[port='15432'][2018-11-14 11:28:14]: total time: 4147 ms
示例三:执行gs_dumpall,仅导出所有数据库中数据,并对导出文件进行加密,导出文件为
文本格式。执行命令后,会有很长的打印信息,最终出现total time 即代表执行成功。示例
中将不体现中间的打印信息。
gs_dumpall -f /home/gbase/backup/MPPDB_backup.sql -p 15432 -a --with-encryption AES128
--with-key abcdefg_?1234567
gs_dumpall[port='15432'][2018-11-14 11:32:26]: dumpall operation successful
gs_dumpall[port='15432'][2018-11-14 11:23:26]: total time: 4147 ms