mysql 备份文件.xb 数据库备份还原

 今天一位老友跟我说他的mysql备份文件后缀.xb无法还原,或者还原出来只有表格没有数据, 于是我决定尝试进行一下备份还原, 在网上搜了一下 有一个腾讯云的文档, 按照腾讯云的来吧 

 首先

解包备份文件

    1. 由于备份文件先经过 qpress 压缩,后经过 xbstream 打包(xbstream 为 Percona 的一种打包/解包工具),所以下载备份文件后,应该先用 xbstream 将其解包。xbstream 工具可以通过 Percona XtraBackup 官网下载或者直接下载二进制包。

 

 选完对应的系统版本后, 选择在线安装

yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
yum install percona-xtrabackup-24

  其实就是上面两个命令 ,安装完成后

 1.安装好 XtraBackup 之后,使用 xbstream 命令将备份文件解包到目标目录。

xbstream -x -C /data < ./test.xb    /data 是还原文件 在、data  名称是 test.xb

 

 

   2.使用 qpress 命令将目标目录下所有以.qp结尾的文件都解压出来。

xtrabackup --decompress --target-dir=/data   /data

3.Prepare 备份文件

备份解压出来之后,需要执行以下命令进行 apply log 操作。

xtrabackup --prepare  --target-dir=/data

此时 文件夹内如如下  

 

 

修改配置文件

由于存在的版本问题,请将解压文件 backup-my.cnf 中以下参数注释掉。

  • innodb_checksum_algorithm
  • innodb_log_checksum_algorithm
  • innodb_fast_checksum
  • innodb_page_size
  • innodb_log_block_size
  • redo_log_version

 

 

修改文件属性

修改文件属性,并检查文件所属为 mysql 用户。

chown -R mysql:mysql /data

启动 mysqld 进程并登录验证

  1. 启动 mysqld 进程。
    mysqld_safe --defaults-file=/data/backup-my.cnf --user=mysql --datadir=/data &

     这里要说明一下   , 我在使用 mysqld_safe 时报错commond not found, 于是我就 直接使用  mysqld   具体区别请百度

    2.客户端登录 mysql 验证。

    mysql  -uroot -p  

     


    这里我没有拿到 root 账户密码 没办法设置远程登录 于是我直接使用mysqldump 把需要的数据库进行导成sql ,然后在本地导入sql 正常
    腾讯说明文档https://cloud.tencent.com/document/product/236/33363

 

posted @ 2019-09-27 21:36  飘柔2019  阅读(19876)  评论(0编辑  收藏  举报