XtraBackup基本安装及innobackupex使用方法,远程备份
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,#获得下载地址wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.3.3/binary/redhat/6/x8
千家信息网最后更新 2025年01月24日XtraBackup基本安装及innobackupex使用方法,远程备份#获得下载地址
wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.3.3/binary/redhat/6/x86_64/percona-xtrabackup-2.3.3-1.el6.x86_64.rpm
yum install percona-xtrabackup-2.3.3-1.el6.x86_64.rpm
#完全备份
innobackupex --user=root --password=123456 /db_bak
#恢复,已复制整个结构的方式恢复数据库,执行前必须stop mysql服务,否则会出现不可预知的错误
service mysqld stop
#此时恢复还是会报 /var/lib/mysql/ is not empty,需要删掉/var/lib/mysql/目录下所有的文件
cd /var/lib/mysql/
rm -rf /var/lib/mysql/*
#全量恢复
innobackupex --user=root --password=123456 --apply-log /db_bak/2016-01-13_14-21-24/ ---回写日志这一步 不能少
innobackupex --user=root --password=123456 --copy-back /db_bak/2016-01-13_14-21-24/
#设置权限,恢复之后 发现权限都是root,需要修改成mysql,到了这一步全量还原算是完成了,记得重启服务
chown -R mysql:mysql /var/lib/mysql/
service mysqld start
#增量备份
innobackupex --user=root --password=123456 --incremental-basedir=/db_bak/2016-01-13_14-21-24 --incremental /db_bak
#增量备份恢复:
#将所有的增量备份挨个应用到完整备份的数据文件中,然后再将完整备份中的数据恢复到数据库中
#停止mysql服务(必须)
service mysqld stop
#删除数据文件
cd /var/lib/mysql/
rm -rf /var/lib/mysql/*
#重做全备份的日志
innobackupex --apply-log --redo-only /db_bak/2016-01-13_14-21-24/
#应用第一个增量备份
innobackupex --user=root --password=123456 --apply-log /db_bak/2016-01-13_14-21-24/ --incremental-dir=/db_bak/2016-01-14_11-47-00/
#日志已经写入全备份中,重做全备份即可
innobackupex --user=root --password=123456 --apply-log /db_bak/2016-01-13_14-21-24/ ---回写日志这一步 不能少
innobackupex --user=root --password=123456 --copy-back /db_bak/2016-01-13_14-21-24/
#删除mysql日志,这一步步能少
MySQL目录下的ib_logfile0和ib_logfile1两个文件
cd /var/lib/mysql/
cp ib_logfile0 ib_logfile0_bak
cp ib_logfile1 ib_logfile1_bak
rm -rf ib_logfile0
rm -rf ib_logfile1
#设置权限,恢复之后 发现权限都是root,需要修改成mysql,到了这一步全量还原算是完成了,记得重启服务
chown -R mysql:mysql /var/lib/mysql/
service mysqld start
#出现数据崩溃 或者 如copied innodb but log 不符的情况
需要设置
innodb_force_recovery=6
innodb_purge_thread=0
重启服务,
然后 在mysqldump导出数据库逻辑备份
在将 设置改成默认
innodb_force_recovery=0
innodb_purge_thread=1
重启服务 还原数据库即可,
出现MySQL Plugin 'InnoDB' init function returned error.
删除MySQL目录下的ib_logfile0和ib_logfile1两个文件,就可以解决问题了
mysql 会重新生成这两个日志
#远程备份,备份到10.50.85.104,需要安装sshpass
cd /etc/yum.repos.d
wget http://download.opensuse.org/repositories/home:Strahlex/CentOS_CentOS-6/home:Strahlex.repo
yum install sshpass
#压缩
innobackupex --user=root --password=123456 --stream=tar ./ | gzip | sshpass -p 'WCcj1Fylr5Hc!@' ssh root@10.50.85.104 "cat - > /var/db_bak/backup.tar.gz"
#备份mysiam表
myisam表的备份则是通过发出命令flush tables with read lock,然后拷贝myisam的相关表文件
所以此时 只能进行读 不能进行任何写操作 这里指针对所有库
wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.3.3/binary/redhat/6/x86_64/percona-xtrabackup-2.3.3-1.el6.x86_64.rpm
yum install percona-xtrabackup-2.3.3-1.el6.x86_64.rpm
#完全备份
innobackupex --user=root --password=123456 /db_bak
#恢复,已复制整个结构的方式恢复数据库,执行前必须stop mysql服务,否则会出现不可预知的错误
service mysqld stop
#此时恢复还是会报 /var/lib/mysql/ is not empty,需要删掉/var/lib/mysql/目录下所有的文件
cd /var/lib/mysql/
rm -rf /var/lib/mysql/*
#全量恢复
innobackupex --user=root --password=123456 --apply-log /db_bak/2016-01-13_14-21-24/ ---回写日志这一步 不能少
innobackupex --user=root --password=123456 --copy-back /db_bak/2016-01-13_14-21-24/
#设置权限,恢复之后 发现权限都是root,需要修改成mysql,到了这一步全量还原算是完成了,记得重启服务
chown -R mysql:mysql /var/lib/mysql/
service mysqld start
#增量备份
innobackupex --user=root --password=123456 --incremental-basedir=/db_bak/2016-01-13_14-21-24 --incremental /db_bak
#增量备份恢复:
#将所有的增量备份挨个应用到完整备份的数据文件中,然后再将完整备份中的数据恢复到数据库中
#停止mysql服务(必须)
service mysqld stop
#删除数据文件
cd /var/lib/mysql/
rm -rf /var/lib/mysql/*
#重做全备份的日志
innobackupex --apply-log --redo-only /db_bak/2016-01-13_14-21-24/
#应用第一个增量备份
innobackupex --user=root --password=123456 --apply-log /db_bak/2016-01-13_14-21-24/ --incremental-dir=/db_bak/2016-01-14_11-47-00/
#日志已经写入全备份中,重做全备份即可
innobackupex --user=root --password=123456 --apply-log /db_bak/2016-01-13_14-21-24/ ---回写日志这一步 不能少
innobackupex --user=root --password=123456 --copy-back /db_bak/2016-01-13_14-21-24/
#删除mysql日志,这一步步能少
MySQL目录下的ib_logfile0和ib_logfile1两个文件
cd /var/lib/mysql/
cp ib_logfile0 ib_logfile0_bak
cp ib_logfile1 ib_logfile1_bak
rm -rf ib_logfile0
rm -rf ib_logfile1
#设置权限,恢复之后 发现权限都是root,需要修改成mysql,到了这一步全量还原算是完成了,记得重启服务
chown -R mysql:mysql /var/lib/mysql/
service mysqld start
#出现数据崩溃 或者 如copied innodb but log 不符的情况
需要设置
innodb_force_recovery=6
innodb_purge_thread=0
重启服务,
然后 在mysqldump导出数据库逻辑备份
在将 设置改成默认
innodb_force_recovery=0
innodb_purge_thread=1
重启服务 还原数据库即可,
出现MySQL Plugin 'InnoDB' init function returned error.
删除MySQL目录下的ib_logfile0和ib_logfile1两个文件,就可以解决问题了
mysql 会重新生成这两个日志
#远程备份,备份到10.50.85.104,需要安装sshpass
cd /etc/yum.repos.d
wget http://download.opensuse.org/repositories/home:Strahlex/CentOS_CentOS-6/home:Strahlex.repo
yum install sshpass
#压缩
innobackupex --user=root --password=123456 --stream=tar ./ | gzip | sshpass -p 'WCcj1Fylr5Hc!@' ssh root@10.50.85.104 "cat - > /var/db_bak/backup.tar.gz"
#备份mysiam表
myisam表的备份则是通过发出命令flush tables with read lock,然后拷贝myisam的相关表文件
所以此时 只能进行读 不能进行任何写操作 这里指针对所有库
备份
数据
文件
日志
服务
增量
数据库
权限
两个
目录
应用
命令
地址
情况
拷贝
数据恢复
方式
结构
还是
逻辑
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
特殊的数据库系统
五子棋软件开发步骤
金融网络安全措施
数据库语句点击回车换行怎么改
工控网络安全的挑战
网络安全课程学习感悟200字
光荣使命老是连接服务器超时
金格数据库 中间件
机关单位使用网络安全制度
战雷下载软件开发
迷你西游忘记服务器
vb与excel服务器的连接
各大银行软件开发好进吗
安徽小程序软件开发有限公司
软件开发学校在哪里
陕西政务系统数据库标准
客户端向服务器发送http请求
云自习软件开发
wincc授权管理器服务器
为什么想进入软件开发销售行业
升腾920服务器
网络安全手抄报资料简单
网络安全人才学历不高
辽宁软件开发服务检测中心
欧洲ESTS数据库
开展机房网络安全隐患排查
厦门网络安全执行标准
注册崩坏三出现网络安全
重庆项目软件开发
sip服务器开源