【YashanDB 知识库】非 YCM 方式的自动备份方案示例
本文内容来自 YashanDB 官网,原文内容请见 https://www.yashandb.com/newsinfo/7281310.html?templateId=1718516
概述
如果有 YCM,推荐使用 YCM 自动备份,详情请参考 YCM 官方文档。但是如果没有 YCM,则可通过 crontab 实现自动备份。目前示例的自动备份方案是每周的周 3、周 6 的凌晨 0 点做全量备份;每天的凌晨 2 点做增量备份;每天的凌晨 4 点删除 15 天以上的备份,可根据项目需求灵活调整。
步骤
下载脚本
下载附件的脚本:backup_scripts.tar.gz
部署脚本
su - yashan
cd $HOME
## 把软件包放到 yashan 用户的 $HOME 目录
tar -zxvf backup_scripts.tar.gz
cd backup_scripts
chmod 750 *.sh
chmod 640 db_backup.ini yashan.cron
配置 yashandb 连接信息
根据数据库连接串替换 DB_HOST 和 DB_PORT 即可
[yashan@yashandb backup_scripts]$ cat db_backup.ini
DB_HOST=127.0.0.1
DB_PORT=1688
DB_USER=DBBAK
DB_PASSWORD="UDIwMjRaR0ppWVdzXzA0MDI="
初始化****catalog 和创建备份用户
前提条件是要求能够免密登陆 yasdb,执行 yasql "/ as sysdba",否则请修改脚本。备份用户和密码是 dbbak/P2024ZGJiYWs_0402,"UDIwMjRaR0ppWVdzXzA0MDI="是 dbbak 用户密码 P2024ZGJiYWs_0402 的 base64 加密结果,加密命令是 echo -n ${DB_PASSWORD} | base64
./init_yasrman.sh
初始化 cron 任务
crontab yashan.cron
检查 cron 任务
crontab -l 应该有如下输出:每周的周 3、周 6 的凌晨 0 点做全量备份;每天的凌晨 2 点做增量备份;每天的凌晨 4 点删除 15 天以上的备份(yasrman_clean_backup.sh 脚本中存在 KEEP_DURATION=1296000 设置,意味着最大保留时长 15 天)
[yashan@yashandb backup_scripts]$ crontab -l
0 0 * * 3,6 /home/yashan/backup_scripts/yasrman_level_0_full.sh
0 2 * * * /home/yashan/backup_scripts/yasrman_level_1_incr.sh
0 4 * * * /home/yashan/backup_scripts/yasrman_clean_backup.sh
目前示例的自动备份方案是每周的周 3、周 6 的凌晨 0 点做全量备份;每天的凌晨 2 点做增量备份;每天的凌晨 4 点删除 15 天以上的备份,可根据项目需求灵活调整。
人工备份确认脚本正常运行
/home/yashan/backup_scripts/yasrman_level_0_full.sh # level 0 的全量备份
/home/yashan/backup_scripts/yasrman_level_1_incr.sh # level 1 的增量备份
/home/yashan/backup_scripts/yasrman_clean_backup.sh # 删除 15 天以上的备份
检查人工备份是否符合预期
对上一步的人工备份检查备份是否符合预期
yasrman "dbbak/P2024ZGJiYWs_0402" -c "list backup" -D /home/yashan/catalog
检查自动备份是否符合预期
按照自动备份方案的时间设置,检查自动备份是否符合预期
yasrman "dbbak/P2024ZGJiYWs_0402" -c "list backup" -D /home/yashan/catalog
问题处理
在麒麟操作系统,执行 crontab yashan.cron 可能报错
You (yashan) are not allowed to use this program (crontab)
See crontab(1) for more information
解决方法是用 root 执行以下命令即可
echo "yashan" >> /etc/cron.allow
版权声明: 本文为 InfoQ 作者【YashanDB】的原创文章。
原文链接:【http://xie.infoq.cn/article/23d0c6247e74fa9cc75b4b3cb】。文章转载请联系作者。
评论