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)及其适用场景。同时也对恢复过程中的关键注意事项进行了总结,避免在实际操作中因参数配置不当造成恢复失败。通过科学的备份机制与规范的恢复流程,不仅能够有效应对突发的数据故障,还能为系统迁移、数据脱敏等工作提供技术保障。建议在生产环境中定期执行备份演练,确保备份数据的可用性与恢复过程的可控性。

相关推荐
陈天伟教授26 分钟前
关系数据库-07. 关系操作
数据库·达梦数据库·国产数据库
zzhongcy27 分钟前
复合索引 (item1, item2, item3 ) > (?, ?, ?) 不起作用,EXPLAIN 后type=ALL(全表扫描)
android·数据库
Elastic 中国社区官方博客31 分钟前
Elastic:DevRel 通讯 — 2026 年 1 月
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
可观测性用观测云34 分钟前
AWS RDS 可观测性最佳实践
数据库
程序员小白条34 分钟前
面试 Java 基础八股文十问十答第八期
java·开发语言·数据库·spring·面试·职场和发展·毕设
汗流浃背了吧,老弟!1 小时前
向量数据库在RAG中的非必需场景及替代方案
数据库
brevity_souls1 小时前
SQL 中 BETWEEN 和 IN 的区别
数据库·sql
产幻少年2 小时前
redis位图
数据库·redis·缓存
短剑重铸之日2 小时前
《7天学会Redis》Day 4 - 高可用架构设计与实践
数据库·redis·缓存
NineData3 小时前
第三届数据库编程大赛-八强决赛成绩揭晓
数据库·算法·代码规范