Quantcast
Channel: 容器云计算,Devops,DBA,网络安全。
Viewing all articles
Browse latest Browse all 780

MySQL8采用xtrabackup8备份与恢复方案

$
0
0

MySQL8采用xtrabackup8备份与恢复方案

v2023.02.17.r3

一,环境介绍

1,主机信息

主机系统:Centos7,数据库:mysql8,IP: 192.168.1.240 ,备份目录: /data/backup备用系统:openeuler 2203,数据库:mysql8,IP: 192.168.1.33 备份目录: /data/backup

2,方案简介

生产环境使用 192.168.1.240 主机,将数据库的备份文件同步到 备份机上,生产环境有问题后,可以在备用机上紧急恢复数据库。

二,备份方案。

1,安装MySQL8数据库

两台主机安装mysql8尽量采用相同参考文档进行安装。这里不再详解。

2,安装xtrabackup8软件

#数据库主机Centos7安装xtrabackup8软件

[root@wx]$ yum  -y install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
[root@wx]$ yum  -y install percona-xtrabackup-80


#数据库备机openeuler2203系统安装xtrabackup软件
[root@os33]$ wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.31-24/binary/tarball/percona-xtrabackup-8.0.31-24-Linux-x86_64.glibc2.17-minimal.tar.gz

#官网有不同的版本,这里采用最小软件包版本

[root@os33]$ tar -zxvf percona-xtrabackup-8.0.31-24-Linux-x86_64.glibc2.17-minimal.tar.gz
[root@os33]$ mv percona-xtrabackup-8.0.31-24-Linux-x86_64.glibc2.17-minimal /data/xtrabackup8

#配置软件执行文件的变量
[root@os33]$ echo "PATH=/data/xtrabackup8:\$PATH" > /etc/profile.d/xtrabackup.sh


#重新进入系统
# 执行命令查看软件安装版本
[root@os33]# xtrabackup --version
xtrabackup version 8.0.31-24 based on MySQL server 8.0.31 Linux (x86_64) (revision id: f0754edb)

3,备份mysql8

#第一次备份采用全备份
#配置备份账号与权限,当然可以直接使用root账号


    CREATE USER 'xtrabk'@'127.0.0.1' IDENTIFIED BY 'Xtrabk#123';
    ALTER USER 'xtrabk'@'127.0.0.1' IDENTIFIED BY 'Xtrabk#123';
    GRANT BACKUP_ADMIN, PROCESS, RELOAD, LOCK TABLES, REPLICATION CLIENT ON *.* TO 'xtrabk'@'127.0.0.1';
    GRANT SELECT ON performance_schema.log_status TO 'xtrabk'@'127.0.0.1';
    FLUSH PRIVILEGES;


[root@os33]# mysql_config_editor set --login-path=xtrlogin -uxtrabk -h127.0.0.1 -P3306 -p
#或是以下命令
[root@os33]# mysql_config_editor set --login-path=xtrlogin --user=xtrabk  --host=127.0.0.1 --port=3306 --password
#上面命令回车后,需要输入密码
[root@os33]#  mysql_config_editor print --login-path=xtrlogin
[root@os33]#  mysql_config_editor reset 
#打印与重置登陆信息


[root@os33]# mkdir /data/backup
# 首次采用全备份
[root@os33]# xtrabackup -uxtrabk -pXtrabk#123 -S /tmp/mysql.sock --backup --target-dir=/data/backup/base 
# 基于全备的首次差异备份


[root@os33]# xtrabackup --login-path=xtrlogin --backup -S /tmp/mysql.sock --target-dir=/data/backup/base
#也可以使用以上命令全备,这样不用输密码


[root@os33]# xtrabackup -uxtrabk -pXtrabk#123 -S /tmp/mysql.sock --backup --target-dir=/data/backup/inc1 --incremental-basedir=/data/backup/base
# 进行第二次增量备份
[root@os33]# xtrabackup -uxtrabk -pXtrabk#123 -S /tmp/mysql.sock --backup --target-dir=/data/backup/inc2 --incremental-basedir=/data/backup/inc1


# 备份过程生成三个备份目录,/data/backup/{base,inc1,inc2}


[root@os33]# xtrabackup -uxtrabk -pXtrabk#123  -S /tmp/mysql.sock --databases="phoenix" --backup --target-dir=/data/backup/phoenix

4,将备份文件传到备机

#可以使用SCP命令
#备机的目录结构最好也是一样的。 
scp -r root@192.168.1.240:/data/backup/* /data/backup

5,还原过程

# 关闭备机的mysql服务 
# 清空data目录

# 预准备完成备份,此选项--apply-log-only 阻止回滚未完成的事务

[root@os33]# xtrabackup --prepare --apply-log-only --target-dir=/data/backup/base


# 合并第1次增量备份到完全备份

[root@os33]#  xtrabackup --prepare --apply-log-only --target-dir=/data/backup/base --incremental-dir=/data/backup/inc1


# 合并第2次增量备份到完全备份:最后一次还原不需要加选项--apply-log-only

[root@os33]#  xtrabackup --prepare --target-dir=/data/backup/base --incremental-dir=/data/backup/inc2


# 还原数据库,当然也可以使用mv命令

[root@os33]#  xtrabackup --defaults-file=/data/mysql8/my.cnf --copy-back --target-dir=/data/backup/base


[root@os33]#  chown -R mysql:mysql /data/mysql8/data

# 还原文件权限

6,启动mysql服务

[root@os33]# /etc/init.d/mysqld restart


#根据日志与报错信息,修改mysql的配置文件


Viewing all articles
Browse latest Browse all 780

Trending Articles


Vimeo 10.7.1 by Vimeo.com, Inc.


UPDATE SC IDOL: TWO BECOME ONE


KASAMBAHAY BILL IN THE HOUSE


Girasoles para colorear


Presence Quotes – Positive Quotes


EASY COME, EASY GO


Love with Heart Breaking Quotes


Re:Mutton Pies (lleechef)


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


Vimeo 10.7.0 by Vimeo.com, Inc.


FORECLOSURE OF REAL ESTATE MORTGAGE


FORTUITOUS EVENT


Pokemon para colorear


Sapos para colorear


Smile Quotes


Letting Go Quotes


Love Song lyrics that marks your Heart


RE: Mutton Pies (frankie241)


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...


Long Distance Relationship Tagalog Love Quotes