1.安装资源库
$ yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
2.下载安装包
wget https://www.percona.com/downloads/Percona-XtraBackup-LATEST/Percona-XtraBackup-8.0.11/binary/redhat/7/x86_64/Percona-XtraBackup-8.0-11-r486c270-el7-x86_64-bundle.tar
3.解压安装包
tar -xvf Percona-XtraBackup-8.0-11-r486c270-el7-x86_64-bundle.tar
4.安装
yum -y install percona-xtrabackup-80-8.0.11-1.el7.x86_64.rpm
完全备份
xtrabackup --backup --target-dir=/usr/local/mysql-8.0.19-linux-glibc2.12-x86_64/data/backup -uroot -p123456
xtrabackup: recognized server arguments: --datadir=/usr/local/mysql-8.0.19-linux-glibc2.12-x86_64/data
xtrabackup: recognized client arguments: --backup=1 --target-dir=/usr/local/mysql-8.0.19-linux-glibc2.12-x86_64/data/backup --user=root --password=*
xtrabackup version 8.0.11 based on MySQL server 8.0.18 Linux (x86_64) (revision id: 486c270)
220828 23:40:31 version_check Connecting to MySQL server with DSN ‘dbi:mysql:;mysql_read_default_group=xtrabackup’ as ‘root’ (using password: YES).
Failed to connect to MySQL server: DBI connect(‘;mysql_read_default_group=xtrabackup’,‘root’,…) failed: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2) at - line 1535.
220828 23:40:31 Connecting to MySQL server host: localhost, user: root, password: set, port: not set, socket: not set
Failed to connect to MySQL server: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2).
Xtrabackup在备份时,会使用本地的socket连接到数据库
解决方案:
在/var/lib下新建个文件夹mysql 然后做一个软连接 (因为my.cnf中socket的路径是 /tmp/mysql.sock)
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
[root@localhost lib]# mkdir mysql
[root@localhost lib]# ls
AccountsService bluetooth color dnsmasq fwupdate gssproxy libvirt misc NetworkManager PackageKit pulse rsyslog sss tuned vmware
alsa boltd colord flatpak games initramfs lldpad mlocate nfs plymouth rpcbind samba stateless udisks2 xkb
alternatives certmonger dbus fprint gdm ipa-client logrotate mysql ntp polkit-1 rpm selinux systemd unbound yum
authconfig chrony dhclient fwupd geoclue iscsi machines net-snmp os-prober postfix rpm-state setroubleshoot tpm upower
[root@localhost lib]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
再次执行全备
xtrabackup --backup --target-dir=/usr/local/mysql-8.0.19-linux-glibc2.12-x86_64/data/backup -uroot -p123456
报错
Executing FLUSH NO_WRITE_TO_BINLOG BINARY LOGS
220829 00:18:47 Selecting LSN and binary log position from p_s.log_status
Error: failed to fetch query result SELECT server_uuid, local, replication, storage_engines FROM performance_schema.log_status: Access denied; you need (at least one of) the BACKUP_ADMIN privilege(s) for this operation
220829 00:18:47 >> log scanned up to (20043041)
没有 BACKUP_ADMIN 权限导致的
再次全备 报错 更改下备份的文件夹名字就可以