环境准备
- 测试环境:centos7
- 下载mysql源:wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
- 安装mysql源:rpm -ivh mysql-community-release-el7-5.noarch.rpm
- 安装mysql:yum install mysql-server (如果报错,可以尝试yum remove -y mariadb-libs后再尝试)
- 启动mysql:service mysqld start
- 登录设置root用户权限并赋值密码:GRANT USAGE ON *.* TO 'root'@'localhost' IDENTIFIED BY '123' WITH GRANT OPTION;
- 下载percona-xtrabackup源:wget https://repo.percona.com/yum/percona-release-latest.noarch.rpm
- 安装percona-xtrabackup源:rpm -ivh percona-release-latest.noarch.rpm
- 安装percona-xtrabackup:yum -y install percona-xtrabackup-24.x86_64
全备:
innobackupex -uroot -p123 /home/mysql/bak_dir (生成了2023-04-26_17-23-55目录)
或者
xtrabackup --backup --target-dir=/home/mysql/bak_dir/full_clone -uroot -p123 -P3306 --socket /var/lib/mysql/mysql.sock
增备:
- 生成增量文件,innobackupex -uroot -p123 --incremental /home/mysql/bak_dir --incremental-basedir=/home/mysql/bak_dir/2023-04-26_17-23-55 或者 xtrabackup --backup --target-dir=/home/mysql/bak_dir/inc_dir1 --incremental-basedir=/home/mysql/bac_dir/full_clone -uroot -p123 -P3306 --socket /var/lib/mysql/mysql.sock
- 准备合并增量,innobackupex -uroot -p123 --apply-log --redo-only /home/mysql/bak_dir/2023-04-26_17-23-55
- 进行合并增量,innobackupex -uroot -p123 --apply-log --redo-only /home/mysql/bak_dir/2023-04-26_17-23-55 --incremental-dir=/home/mysql/bak_dir/***
- 合并增量结束,innobackupex -uroot -p123 --apply-log /home/mysql/bak_dir/2023-04-26_17-23-55
恢复:
- service mysqld stop
- chown mysql:mysql -R /home/mysql/bak_dir/2023-04-26_17-23-55
- 修改配置文件my.cnf或者my.ini,datadir=/home/mysql/bak_dir/2023-04-26_17-23-55
- service mysqld start