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

相关推荐
q***465219 小时前
Win10下安装 Redis
数据库·redis·缓存
p***924821 小时前
深入理解与实战SQL IFNULL()函数
数据库·sql·oracle
q***81641 天前
MySQL:数据查询-limit
数据库·mysql
p***92481 天前
DBeaver连接本地MySQL、创建数据库表的基础操作
数据库·mysql
JIngJaneIL1 天前
社区互助|社区交易|基于springboot+vue的社区互助交易系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·社区互助
晚风吹人醒.1 天前
缓存中间件Redis安装及功能演示、企业案例
linux·数据库·redis·ubuntu·缓存·中间件
Y***98511 天前
DVWA靶场通关——SQL Injection篇
数据库·sql
Yawesh_best1 天前
告别系统壁垒!WSL+cpolar 让跨平台开发效率翻倍
运维·服务器·数据库·笔记·web安全
蒋士峰DBA修行之路1 天前
实验二十八 SQL PATCH调优
数据库·sql·gaussdb
I***t7161 天前
一条sql 在MySQL中是如何执行的
数据库·sql·mysql