kingbase教程FG035-kingbase物理备份基础与配置实战
目录大纲
- 5.1 物理备份最佳实践
- 5.2 常见问题与解决方案,风哥提示:
内容简介
本文档详细介绍kingbase数据库的物理备份基础与配置方法,包括物理备份概念、配置方法、备份策略等操作。风哥教程参考kingbase官方文档《KingbaseES备份恢复指南》。
Part01-基础概念与理论知识
1.1 物理备份概念与作用
物理备份是kingbase数据库中直接备份数据文件的备份方式,主要作用包括:
- 快速恢复
- 完整备份
- 增量备份
- 时间点恢复,学习交流加群风哥微信: itpux-com
1.2 物理备份类型
kingbase数据库中的物理备份类型:
- 冷备份:关闭数据库后备份
- 热备份:数据库运行时备份
- 增量备份:只备份变化的数据
- 差异备份:备份自上次全量备份以来的变化
Part02-生产环境规划与建议
2.1 物理备份使用场景
- 灾难恢复
- 系统迁移,学习交流加群风哥QQ113257174
- 数据安全
- 高可用性
2.2 备份策略建议
- 全量备份:定期执行全量备份
- 增量备份:根据业务需求执行增量备份
- 备份频率:根据数据重要性设置备份频率
- 备份存储:将备份存储在安全的位置,更多视频教程www.fgedu.net.cn
Part03-生产环境项目实施方案
3.1 物理备份配置
物理备份的配置步骤:
- 配置归档模式
- 设置备份目录
- 配置备份参数
- 测试备份
3.2 备份参数设置
备份参数设置:
- archive_mode:启用归档模式,更多学习教程公众号风哥教程itpux_com
- archive_command:设置归档命令
- wal_level:设置WAL级别
- max_wal_senders:设置最大WAL发送进程数
Part04-生产案例与实战讲解
4.1 物理备份配置实战
配置物理备份:
# 启用归档模式
su – kingbase -c “psql -d fgedudb -c ‘ALTER SYSTEM SET archive_mode = on; ALTER SYSTEM SET archive_command = ”cp %p /kingbase/archive/%f”; ALTER SYSTEM SET wal_level = replica; ALTER SYSTEM SET max_wal_senders = 10; SELECT pg_reload_conf();'”
ALTER SYSTEM
ALTER SYSTEM
ALTER SYSTEM
ALTER SYSTEM
pg_reload_conf | t
# 创建归档目录
mkdir -p /kingbase/archive
chown -R kingbase:kingbase /kingbase/archive
su – kingbase -c “psql -d fgedudb -c ‘ALTER SYSTEM SET archive_mode = on; ALTER SYSTEM SET archive_command = ”cp %p /kingbase/archive/%f”; ALTER SYSTEM SET wal_level = replica; ALTER SYSTEM SET max_wal_senders = 10; SELECT pg_reload_conf();'”
ALTER SYSTEM
ALTER SYSTEM
ALTER SYSTEM
ALTER SYSTEM
pg_reload_conf | t
# 创建归档目录
mkdir -p /kingbase/archive
chown -R kingbase:kingbase /kingbase/archive
4.2 备份执行实战
执行物理备份:
# 使用pg_basebackup执行全量备份
su – kingbase -c “pg_basebackup -h fgedu.localhost -p 54321 -U system -D /kingbase/backup/basebackup -F p -X s -P”
Password:
# 输入密码后执行
31700/31700 kB (100%), 1/1 tablespace
# 验证备份目录
ls -la /kingbase/backup/basebackup/
total 128
drwxr-xr-x 19 kingbase kingbase 4096 Jan 1 12:00 .
drwxr-xr-x 3 kingbase kingbase 4096 Jan 1 11:00 ..
drwx—— 5 kingbase kingbase 4096 Jan 1 12:00 base
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 global
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_commit_ts
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_dynshmem
-rw——- 1 kingbase kingbase 372 Jan 1 12:00 pg_hba.conf
-rw——- 1 kingbase kingbase 163 Jan 1 12:00 pg_ident.conf
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_logical
drwx—— 4 kingbase kingbase 4096 Jan 1 12:00 pg_multixact
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_notify
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_replslot
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_serial
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_snapshots
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_stat
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_stat_tmp
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_subtrans
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_tblspc
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_twophase
-rw——- 1 kingbase kingbase 3 Jan 1 12:00 PG_VERSION
drwx—— 3 kingbase kingbase 4096 Jan 1 12:00 pg_wal
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_xact
-rw——- 1 kingbase kingbase 2211 Jan 1 12:00 postgresql.auto.conf
su – kingbase -c “pg_basebackup -h fgedu.localhost -p 54321 -U system -D /kingbase/backup/basebackup -F p -X s -P”
Password:
# 输入密码后执行
31700/31700 kB (100%), 1/1 tablespace
# 验证备份目录
ls -la /kingbase/backup/basebackup/
total 128
drwxr-xr-x 19 kingbase kingbase 4096 Jan 1 12:00 .
drwxr-xr-x 3 kingbase kingbase 4096 Jan 1 11:00 ..
drwx—— 5 kingbase kingbase 4096 Jan 1 12:00 base
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 global
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_commit_ts
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_dynshmem
-rw——- 1 kingbase kingbase 372 Jan 1 12:00 pg_hba.conf
-rw——- 1 kingbase kingbase 163 Jan 1 12:00 pg_ident.conf
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_logical
drwx—— 4 kingbase kingbase 4096 Jan 1 12:00 pg_multixact
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_notify
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_replslot
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_serial
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_snapshots
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_stat
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_stat_tmp
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_subtrans
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_tblspc
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_twophase
-rw——- 1 kingbase kingbase 3 Jan 1 12:00 PG_VERSION
drwx—— 3 kingbase kingbase 4096 Jan 1 12:00 pg_wal
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 pg_xact
-rw——- 1 kingbase kingbase 2211 Jan 1 12:00 postgresql.auto.conf
4.3 备份验证
验证备份:,from DB视频:www.itpux.com
# 检查备份文件完整性
su – kingbase -c “ls -la /kingbase/backup/basebackup/pg_wal/”
total 16
drwx—— 3 kingbase kingbase 4096 Jan 1 12:00 .
drwx—— 5 kingbase kingbase 4096 Jan 1 12:00 ..
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 archive_status
su – kingbase -c “ls -la /kingbase/backup/basebackup/pg_wal/”
total 16
drwx—— 3 kingbase kingbase 4096 Jan 1 12:00 .
drwx—— 5 kingbase kingbase 4096 Jan 1 12:00 ..
drwx—— 2 kingbase kingbase 4096 Jan 1 12:00 archive_status
Part05-风哥经验总结与分享
5.1 物理备份最佳实践
- 定期执行全量备份
- 启用归档模式,确保可以进行时间点恢复
- 将备份存储在安全的位置,如异地存储
- 定期验证备份的完整性
- 建立备份策略和恢复测试
5.2 常见问题与解决方案
- 备份失败:检查数据库连接和权限
- 备份文件过大:使用压缩格式,或考虑增量备份
- 备份时间过长:优化备份参数,选择合适的备份时间
- 恢复失败:确保备份文件完整,检查数据库版本兼容性
- 风哥提示:物理备份是数据库安全的重要保障,需要定期执行和验证
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
