备份还原操作流程
关键字:
sys_dump、sys_restore、人大金仓
备份还原工具介绍
- sys_dump
sys_dump 是一种用于备份 KingbaseES 数据库的工具。即使数据库正在并发使用,它也能创建一致的备份。sys_dump 不阻塞其他用户访问数据库(读取或写入)。
注:sys_dump 只转储单个数据库。要备份整个集群,或备份集群中所有数据库公共的全局对象(例如角色和表空间),请使用 sys_dumpall 。
使用语法:sys_dump [ connection-option ...] [ option ...] [ dbname ]
常用参数:
Dbname 指定备份的数据库名 如:-d test
-U 初始化数据库的用户名 如:-Usystem
-p 数据库的端口 如:-p54321
-F 选择输出的格式 如:-Fc dmp格式 –Fp sql文件格式 –Ft tar文件格式-Fd 目录格式
-f 将输出发送到指定文件。对于基于输出格式的文件,这个参数可以被忽略,在这种情况下将使用标准输出。但是,对于目录输出格式必须给定这个参数,在目录输出格式中指定的是一个目录而不是一个文件。在这种情况中,该目录会由 sys_dump 创建,并且之前不能存在。
示例:./sys_dump -Usystem –p54321 -dtest -Fc -f test.dmp |
2、sys_restore
sys_restore — 从一个由 sys_dump 创建的归档文件恢复到 KingbaseES 数据库的数据
使用语法:sys_restore [ connection-option ...] [ option ...] [ filename ]
常用参数:
-d 指定恢复的数据库名 如:-d test1
-U 初始化数据库的用户名 如:-Usystem
-p 数据库的端口 如:-p54321
Filename sys_dump备份的文件 如:test.dmp
示例:./sys_restore -Usystem -p54321 –dtest1 test.dmp
使用步骤示例
1. 初始化数据库实例并配置好端口:
2.准备好备份还原基线数据启动数据库灌入基线数据,将基线数据上传至bin路径,命名为XXX.sql,使用ksql执行sql文件:
3.使用sys_dump进行备份
./sys_dump -U system -p 57890 -d test -Fc -f test.dmp |
4.使用sys_restore进行还原
(1)注意可以重新初始化个data1把备份的test.dmp还原到data1的test中,也可以还原在data实例中的另一个database下例如test1
(2)进行还原
./sys_restore -U system -p 57890 -d test1 test.dmp |
注意:没有报错就是还原成功
5.确认还原数据与其原数据的一致性
./ksql -U sytem -p 57890 -d test -a <check_data.sql> check1.out 2>&1 ./ksql -U sytem -p 57890 -d test1 -a <check_data.sql> check2.out 2>&1 |
6.比对check预期文件
到此备份还原流程结束。