建议:每周1-2次全量备份,其他天以上一次全量做增量
1、全量一次备份:
# innobackupex --defaults-file=/etc/my.cnf --no-timestamp --host=127.0.0.1 --user=root --password='pwd123456' --port=3306 --tmpdir=/tmp /dbbk/db/allbk_`date +%Y%m%d`
2、执行一次增量备份,以上一次全量备份为节点基础进行备份(注意:增量备份是使用--incremental参数加增量备份的目录 , --incremental-basedir指定为上一次全量基础目录),例如:
# innobackupex --defaults-file=/etc/my.cnf --no-timestamp --host=127.0.0.1 --user=root --password='pwd123456' --port=3306 --incremental=/dbbk/db/incrbk_`date +%Y%m%d%M`/ --incremental-basedir=/dbbk/db/allbk_`date +%Y%m%d`/
//此处加了一个分钟为时间戳方便演示,实际情况可以按天即可
3、完成一次增量后,查看目录内容:
# ls /dbbk/db/
allbk_20210518 incrbk_2021051820
4、二次增量备份将以上一次增量备份为节点来进行增量 (注意:--incremental-basedir参数为: incrbk_2021051820)
# innobackupex --defaults-file=/etc/my.cnf --no-timestamp --host=127.0.0.1 --user=root --password='pwd123456' --port=3306 --incremental=/dbbk/db/incrbk_`date +%Y%m%d%M`/ --incremental=/dbbk/db/incrbk_2021051820/
5、完成二次增量后,查看目录内容:
# ls /dbbk/db/
allbk_20210518 incrbk_2021051820 incrbk_2021051823
6、还原数据
1、) 停止目标数据库实例;
2、) 确定my.cnf中datadir目录位置,因为数据恢复到这个目录中;
3、) 首先对全量备份使用--apply-log 和 --redo-only参数进行恢复前操作,如事物回滚;
4、) 将第一次增量备份应用到完全备份,需要使用--apply-log 和 --redo-only参数;
5、) 将第二次增量备份应用到完全备份,使用--apply-log参数,但不要--redo-only参数,最后一次增量不用--redo-only参数。
6、) 所有备份数据合在一起后进行一次apply操作,回滚未提交的数据;
7、) 使用--copy-back对目标目录进行恢复;
8、) 修改数据库my.cnf中datadir目录权限,最后启动数据库。
1、)恢复最近全量完整:
innobackupex --apply-log --redo-only /dbbk/db/allbk_20210518/
2、)增加第一次增量
# innobackupex --apply-log --redo-only /dbbk/db/allbk_20210518/ --incremental-dir=/dbbk/db/allbk_2021051820/
3、)增加第二次增量
# innobackupex --apply-log /dbbk/db/allbk_20210518/ --incremental-dir=/dbbk/db/allbk_2021051823/
4、)最后完整回滚未提交的数据:
# innobackupex --apply-log /dbbk/db/allbk_20210518/
7、使用--copy-back 参数恢复拷贝到data目录
# innobackupex --defaults-file=/etc/my.cnf --copy-back /dbbk/db/allbk_20210518/
8、权限调整和启动:
# chown -R mysql:mysql /data/mysql/
# systemctl start mysqld
9、查看验证数据
内容版权声明:【蓝色网居】部分资源来源于网络,如有侵犯您的所有权,请随时告知我们,我们将立即删除!感谢配合!
转载请注明出处:https://blog.ff56.cn/shujuku/1657870122.html