问题描述:利用外部xtrabackup工具来做迁移mysql数据库,或者恢复数据库

xtrabackup迁移mysql

1.环境

mysql源库

mysql目标迁移库

IP

192.168.163.3

196.168.163.16

操作系统

Ceontos7.8

Ceontos7.8

数据库版本

mysql-5.7.32

mysql-5.7.32

mysql实例

db_hzh03

db_hzh03

my.cnf路径

/data/mysql-5.7.32/db_hzh03/conf/hzh03.cnf

/data/mysql-5.7.32/db_hzh03/conf/hzh03.cnf

socket路径

/data/mysql-5.7.32/db_hzh03/mysql.sock

/data/mysql-5.7.32/db_hzh03/mysql.sock

xtrabackup版本

xtrabackup-24

xtrabackup-24

2.Xtrabackup安装

在源库和目标库都安装percona-xtrabackup-24-2.4.21-1.el7.x86_64.rpm

Xtrabackup下载路径

2.1软件安装

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.21/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.21-1.el7.x86_64.rpm

链接:https://pan.baidu.com/s/1mPIcKyleAVKTWk_chPFzZw
提取码:htmy

2.2安装依赖包

yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL

2.3安装软件

rpm -ivh  percona-xtrabackup-24-2.4.21-1.el7.x86_64.rpm --nodeps --force

2.4测试xtrabackup是否安装成功

[root@localhost ~]# xtrabackup -version

两个服务器同样操作

3.源端备份

3.1源端制造测试验证数据

用户创建

数据库创建

mysql> create database test01;

Query OK, 1 row affected (0.01 sec)

3.2备份

创建备份目录

[root@localhost ~]# mkdir -p /mysqlbackup/

[root@localhost ~]# chown -R mysql.mysql /mysqlbackup/

[root@localhost ~]# innobackupex --defaults-file=/data/mysql-5.7.32/db_hzh03/conf/hzh03.cnf --socket=/data/mysql-5.7.32/db_hzh03/mysql.sock --user=root --password=zabbix.9.31   /mysqlbackup

查看备份出来的文件

3.3传输文件到目标服务器

[root@localhost /mysqlbackup]# scp -r 2021-01-18_11-22-21 mysql@192.168.163.16:/data/mysql-5.7.32/

4.目标端恢复

在线恢复数据库备份时,注意一些参数的含义,下面所用到的参数

--defaults-file:目标端数据库的.cnf配置文件

--datadir   :重新规划的恢复数据文件位置

--socket   :目标端数据库的socket文件位置

4.1导入报错

Can't locate Digest/MD5.pm

[root@localhost /data/mysql-5.7.32]# innobackupex --defaults-file=/data/mysql-5.7.32/db_hzh03/conf/hzh03.cnf --socket=/data/mysql-5.7.32/db_hzh03/mysql.sock --user=root --password=zabbix.9.31   /data/mysql-5.7.32/2021-01-18_11-22-21/

xtrabackup: recognized server arguments: --datadir=/data/mysql-5.7.32/db_hzh03/data --tmpdir=/data/mysql-5.7.32/db_hzh03/tmp --log_bin=/data/mysql-5.7.32/db_hzh03/binlog/hzh03-bin --server-id=3330621 --open_files_limit=65000 --innodb_open_files=63000 --innodb_data_home_dir=/data/mysql-5.7.32/db_hzh03/data --innodb_log_group_home_dir=/data/mysql-5.7.32/db_hzh03/data --innodb_log_file_size=500M --innodb_log_files_in_group=3 --innodb_undo_directory=/data/mysql-5.7.32/db_hzh03/data --innodb_undo_tablespaces=3 --innodb_flush_log_at_trx_commit=2 --innodb_flush_method=O_DIRECT --innodb_io_capacity=2000 --innodb_buffer_pool_size=4G --innodb_log_buffer_size=32M --innodb_max_dirty_pages_pct=85 --innodb_adaptive_hash_index=0

xtrabackup: recognized client arguments:

210118 14:34:05 innobackupex: Starting the backup operation

IMPORTANT: Please check that the backup run completes successfully.

           At the end of a successful backup run innobackupex

           prints "completed OK!".

Can't locate Digest/MD5.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at - line 693.

BEGIN failed--compilation aborted at - line 693.

210118 14:34:06 Connecting to MySQL server host: localhost, user: root, password: set, port: not set, socket: /data/mysql-5.7.32/db_hzh03/mysql.sock

Using server version 5.7.32-log

innobackupex version 2.4.21 based on MySQL server 5.7.32 Linux (x86_64) (revision id: 5988af5)

xtrabackup: uses posix_fadvise().

xtrabackup: cd to /data/mysql-5.7.32/db_hzh03/data

xtrabackup: open files limit requested 65000, set to 65000

xtrabackup: using the following InnoDB configuration:

xtrabackup:   innodb_data_home_dir = /data/mysql-5.7.32/db_hzh03/data

xtrabackup:   innodb_data_file_path = ibdata1:12M:autoextend

xtrabackup:   innodb_log_group_home_dir = /data/mysql-5.7.32/db_hzh03/data

xtrabackup:   innodb_log_files_in_group = 3

xtrabackup:   innodb_log_file_size = 524288000

xtrabackup: using O_DIRECT

InnoDB: Number of pools: 1

InnoDB: Operating system error number 2 in a file operation.

InnoDB: The error means the system cannot find the path specified.

InnoDB: File /data/mysql-5.7.32/db_hzh03/data/ib_logfile0: 'open' returned OS error 71. Cannot continue operation

InnoDB: Cannot continue operation.

系统缺少支持perl-Digest-MD5组件,如果联网的话,可以直接yum安装

[root@localhost /etc/yum.repos.d]# yum -y install perl perl-devel perl-Time-HiRes perl-DBD-MySQL

[root@localhost /etc/yum.repos.d]# yum -y install perl-Digest-MD5

4.2导入恢复

[mysql@localhost ~]$ innobackupex --defaults-file=/data/mysql-5.7.32/db_hzh03/conf/hzh03.cnf --socket=/data/mysql-5.7.32/db_hzh03/mysql.sock --user=root --password=zabbix.9.31  --copy-back /data/mysql-5.7.32/2021-01-18_11-22-21/

4.3重启数据库

[mysql@localhost /data/mysql-5.7.32]$ sh /data/mysql-5.7.32/db_hzh03/bin/shutdown.sh

Enter password:

[mysql@localhost /data/mysql-5.7.32]$ sh /data/mysql-5.7.32/db_hzh03/bin/startup.sh

[mysql@localhost /data/mysql-5.7.32]$ sh /data/mysql-5.7.32/db_hzh03/bin/login.sh

  

4.4验证测试数据

至此恢复完成

mysql迁移:xtrabackup迁移mysql5.7.32的更多相关文章

  1. cmake 编译安装mysql5.5.32

    1.安装cmake 上传tar包 rz cmake-2.8.8.tar.gz 解压tar包,并进入解压后的文件夹 tar xf cmake-2.8.8.tar.gz cd cmake-2.8.8 编译 ...

  2. xtrabackup迁移mysql5.7.32

    问题描述:利用外部xtrabackup工具来做迁移mysql数据库,或者恢复数据库 xtrabackup迁移mysql 1.环境 mysql源库 mysql目标迁移库 IP 192.168.163.3 ...

  3. 从MySQL 5.5迁移到Mariadb 10.1.14

    从MySQL 5.5迁移到Mariadb 10.1.14 迁移计划如下: 1.备份MySQL 5.5的数据库,对指定库进行备份. 2.还原到Mariadb,然后建立复制. 3.然后就可以愿意啥时候切换 ...

  4. MySQL到Greenplum迁移分析

    MySQL到Greenplum迁移分析 1 数据类型对比   MySQL PostgreSQL comments 数值类型 TINYINT SMALLINT gp中无zerofill属性及unsign ...

  5. Saiku数据库迁移H2迁移到Mysql(二十二)

    Saiku数据库迁移H2迁移到Mysql Saiku默认使用H2数据库来存储saiku的用户与角色信息,我们可以根据角色来做saiku的权限控制,然后将角色分配给用户 ,该用户就会有对应的约束了! 由 ...

  6. Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查

    一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...

  7. 源码安装mysql-5.6.32.tar.gz

    http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.32.tar.gz 安装依赖包: #yum install wget bison gcc gcc-c ...

  8. CentOS6.5一键安装MySQL5.5.32(源码编译)

    ###################################################mysql_install.sh                                 ...

  9. MySQL下载与MySQL安装图解(MySQL5.7与MySQL8.0)

    MySQL下载与MySQL安装图解(MySQL5.7与MySQL8.0) 1.MySQL下载(MySQL8.0社区版) mysql下载方法,请根据风哥以下步骤与图示来下载mysql8.0最新社区版本: ...

  10. MySQL-5.5.32 配置文件优化详解

    目录 MySQL-5.5.32 配置文件优化详解 一.配置文件说明 2.my-medium.cnf 3.my-large.cnf 4.my-huge.cnf 5.my-innodb-heavy-4G. ...

随机推荐

  1. Audition导入视频文件出现错误

    错误: We were unable to open this file using any of the currently available importers. If you would li ...

  2. Linux下将普通用户文件移动到root用户下

    步骤: 将普通用户的文件拷贝到tmp目录下 cp /Desktop/1.txt /tmp 从普通用户切到root用户 su - root用户从tmp中取文件到指定目录/var/test cp /tmp ...

  3. 几个Python线程坑,和连接池的坑

    urlretrieve 没有超时,需要通过socket来设置 socket.setdefaulttimeout(10) 而且还需要为他设置连接池,所以直接改用requests来下载文件 def dow ...

  4. dosbox debugger

    通过中断看程序运行过程 最终目的是要找到数据保存位置,如何保存到文件的.

  5. C# 将实体转xml/xml转实体

    xml转实体 /// <summary> /// 把xml转换成实体 /// </summary> /// <typeparam name="T"&g ...

  6. MySQL增加多用户及数据库

    登录MYSQL(有ROOT权限),这里以ROOT身份登录: @>mysql -u root -p @>密码 首先为用户创建一个数据库(yc): mysql>create databa ...

  7. Postman请求Https接口与认证

    http://t.zoukankan.com/embedded-linux-p-12656769.html

  8. 一个struts1框架的小案例

    具体如下: <span style="font-size:18px;"><?xml version="1.0" encoding=" ...

  9. JML

    1.JML规格设计策略 我三次作业采用的方法都是从性能与存储大小方面考虑.在满足规格的条件下尽量做到运行速度最快,所用空间最小.因为这个单元的作业如果单单只是照着jml规格来翻译的话就失去了意义(因为 ...

  10. ASP.NET Core - 配置系统之配置提供程序

    3. 配置提供程序 上面提到,通过 IConfigurationBuilder 的实现类对象,我们可以自由地往配置系统中添加不同的配置提供程序,从而获取不同来源的配置信息..NET Core 中,微软 ...