Kingbase逻辑备份与恢复标准化实施文档

背景

文章背景

本文结合实际运维经验,围绕 Kingbase 数据库在逻辑层面的备份与恢复方法进行系统性梳理,旨在为运维人员和数据库管理员提供一套清晰、高效、可落地的操作指引,提升数据库系统的可靠性与容灾能力。

第一部分 逻辑部分

1.1 全库备份

默认导出文本文件-Fp:plain text

复制代码
# su - kingbase
$ mkdir -p /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)
$ ls /home/kingbase/backup
sys_dump_2023060615
$ sys_dump -h 127.0.0.1 -p 54321 -U system -d dbtest -f /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)/dbtest.sql

导出自定义文件(二进制格式)-Fc:custom

复制代码
# su - kingbase
$ mkdir -p /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)
$ ls /home/kingbase/backup
sys_dump_2023060615
$ sys_dump -h 127.0.0.1 -p 54321 -U system -d dbtest -Fc -f /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)/dbtest.dmp

导出目录文件(并行备份)-Fd:directory

复制代码
# su - kingbase
$ ll /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H) #如果目录已经存在,需要先删除目录,然后再备份
$ sys_dump -h 127.0.0.1 -p 54321 -U system -d dbtest -Fd -j 4 -f /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)
$ ls /home/kingbase/backup
sys_dump_2023060615

1.2 备份特定的schema

复制代码
# su - kingbase
$ mkdir -p /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)
$ sys_dump -h 127.0.0.1 -p 54321 -U system -d dbtest -n public -f /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)/public.sql

1.3 备份特定的表

复制代码
# su - kingbase
$ mkdir -p /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)
$ sys_dump -h 127.0.0.1 -p 54321 -U system -d dbtest -t test -f /home/kingbase/backup/sys_dump_$(date +%Y%m%d%H)/test.sql

注意:

1、只备份数据,加上 -a 参数。

2、只备份表结构,加上 -s 参数。

3、sys_dump只转储备份执行前的快照,即备份期间的更改不会被备份。

4、只有目录模式(-Fd)支持并行转储。

5、IP地址、端口号、数据库名称、schema名称、表名称,需根据实际情况修改。

第二部分 逻辑恢复

2.1 全库恢复

恢复文本文件

复制代码
# su - kingbase
$ createdb -h 127.0.0.1 -p 54321 -U system dbtest
$ ksql -h 127.0.0.1 -p 54321 -U system -d dbtest -f /home/kingbase/backup/sys_dump_2023060615/dbtest.sql

恢复自定义文件

复制代码
# su - kingbase
$ createdb -h 127.0.0.1 -p 54321 -U system dbtest
$ sys_restore -h 127.0.0.1 -p 54321 -U system -d dbtest /home/kingbase/backup/sys_dump_2023060615/dbtest.dmp

恢复目录文件

复制代码
# su - kingbase
$ createdb -h 127.0.0.1 -p 54321 -U system dbtest
$ sys_restore -h 127.0.0.1 -p 54321 -U system -d dbtest -Fd -j 4 /home/kingbase/backup/sys_dump_2023060615

2.2 恢复特定的schema

复制代码
# su - kingbase
$ ksql -h 127.0.0.1 -p 54321 -U system -d dbtest -f /home/kingbase/backup/sys_dump_2023060615/public.sql

2.3 恢复特定的表

复制代码
# su - kingbase
$ ksql -h 127.0.0.1 -p 54321 -U system -d dbtest -f /home/kingbase/backup/sys_dump_2023060615/test.sql

注意:

1、恢复时,需要先创建用户、数据库。

2、.sql类型的text文件只能使用ksql恢复。

3、sys_restore恢复时-d参数和-f参数无法一起使用,不需要使用-f去特别指出文件位置。

4、IP地址、端口号、数据库名称,需根据实际情况修改。

结论

本文详细介绍了 Kingbase 数据库在逻辑层面进行全库、特定 Schema 及单表的备份与恢复方法,涵盖了常见的三种导出格式(Plain Text、Custom、Directory)及其适用场景。同时也对恢复过程中的关键注意事项进行了总结,避免在实际操作中因参数配置不当造成恢复失败。通过科学的备份机制与规范的恢复流程,不仅能够有效应对突发的数据故障,还能为系统迁移、数据脱敏等工作提供技术保障。建议在生产环境中定期执行备份演练,确保备份数据的可用性与恢复过程的可控性。

相关推荐
xiep14383335103 小时前
Ubuntu 安装带证书的 etcd 集群
数据库·etcd
Java小白程序员3 小时前
Spring Framework:Java 开发的基石与 Spring 生态的起点
java·数据库·spring
老虎06274 小时前
数据库基础—SQL语句总结及在开发时
数据库·sql·oracle
爱掘金的土拨鼠5 小时前
国产化dm数据库锁表解锁
数据库
庖丁解java6 小时前
N个Utils
数据库
Mr. zhihao6 小时前
SQL LEFT JOIN 与 WHERE 条件的隐藏坑
数据库·sql
2301_793086876 小时前
Redis 04 Reactor
数据库·redis·缓存
Sais_Z7 小时前
ClickHouse的学习与了解
数据库·clickhouse
代码的余温7 小时前
MySQL性能优化:10个关键参数调整指南
数据库·mysql·性能优化
silver98868 小时前
sql链接的url中serverTimezone的作用
数据库·sql