开源软件Percona Xtrabackup可以用于对数据库进行备份恢复;
数据库:MySQL 5.6
系统:Linux7.6的操作系统
开源软件Percona Xtrabackup可以用于对数据库进行备份恢复,操作系统中已安装数据恢复工具Percona XtraBackup。
MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3,安装指导请参见官方文档Percona XtraBackup 2.3。
安装xtrabackup
yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
yum install percona-xtrabackup-22
yum install qpress
检测是否安装成功
xtrabackup --version
innobackupex --version
MySQL 5.7版本需要安装 Percona XtraBackup 2.4,安装指导请参见官方文档Percona XtraBackup 2.4。
MySQL 8.0版本需要安装 Percona XtraBackup 8.0,安装指导请参见官方文档Percona XtraBackup 8.0。
数据备份文件的格式为xbstream文件包 (_qp.xb 后缀),本地MySQL数据库安装在64位的Linux系统中,且与云数据库MySQL版的版本相同。
wget -c ‘<数据备份文件外网下载地址>’ -O <自定义文件名>.tar.gz
因为生成的文件是xbstream,对于xbstream 文件包 (_qp.xb 后缀),使用命令:
我本地MySQL安装路径:/usr/local/mysql
cat <数据备份文件名>_qp.xb | xbstream -x -v -C /usr/local/mysql/data
innobackupex --decompress /usr/local/mysql/data
ls -l /usr/local/mysql/data
命令执行成功后,系统会返回如下结果,其中蓝色字体为生成备份文件时RDS实例所包含的数据库
innobackupex --defaults-file=/usr/local/mysql/data/backup-my.cnf --apply-log /usr/local/mysql/data
vi /usr/local/mysql/data/backup-my.cnf
chown -R mysql:mysql /usr/local/mysql/data
在/etc目录下创建mysql的配置文件my.cnf,内容如下:
vim /etc/my.cnf
[mysqld]
datadir = /usr/local/mysql/data/
port = 3306
server_id = 1
socket = /usr/local/mysql/data/mysqld.sock
max_allowed_packet=32M
log-error = /usr/local/mysql/data/error.log
default-storage-engine=INNODB
lower_case_table_names=1
group_concat_max_len = 102400
max_allowed_packet = 8M
key_buffer_size = 12M
sort_buffer_size = 1M
read_buffer = 1M
my.cnf文件创建完毕后,我们现在来启动mysql。注意:RDS备份数据库中只有root这一个用户且没有密码,所以无需输入密码直接按回车进入。
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
mysql -h127.0.0.1 -uroot -p
重置mysql数据库密码 参考 https://www.cnblogs.com/itor/p/6339505.html
创建root用户密码,并赋予其他主机其连接权限。这样操作完毕后,可以使用其他客户端连接mysql了。
use mysql;
update user set password=password(‘123456’) where user=‘root’;
update user set host=’%’ where user=‘root’ && host=‘127.0.0.1’;
flush privileges;