标签:auto only 因此 not 需要 mysql 注意 pac 使用
首先申明:这只是一篇日志,写得不太严谨,毕竟我是将生产环境的数据下载后(部分表)恢复至开发环境,用于历史数据查询。从阿里云下载hins8247923_data_20191118055735_qp.xb,即*_qp.xb数据库,作如下处理:
一、安装开源的Percona XtraBackup备份恢复工具:
操作系统中已安装数据恢复工具Percona XtraBackup,可以从Percona XtraBackup官网下载安装。
MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3,安装指导请参见https://www.percona.com/doc/percona-xtrabackup/2.3/installation.html?spm=a2c4g.11186623.2.13.3f4d30eb5k7pdZ
MySQL 5.7版本需要安装 Percona XtraBackup 2.4,安装指导请参见https://www.percona.com/doc/percona-xtrabackup/2.4/installation.html?spm=a2c4g.11186623.2.14.3f4d30eb5k7pdZ
MySQL 8.0版本需要安装 Percona XtraBackup 8.0,安装指导请参见https://www.percona.com/doc/percona-xtrabackup/8.0/installation.html?spm=a2c4g.11186623.2.15.3f4d30eb5k7pdZ
由于我是CentOS7.6的机器,MySQL为5.7的版本,因此:
yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
yum list | grep percona
yum install percona-xtrabackup-24
另外,innobackupex解压命令需要安装qpress,您可以使用命令yum install qpress -y安装。
二、解压文件
对于xbstream 文件包(_qp.xb 后缀),使用命令:
cat <数据备份文件名>_qp.xb | xbstream -x -v -C /home/mysql/data
saplatformdb
.userstudent
.UserStudent
(Id
int(11) NOT NULL AUTO_INCREMENT COMMENT ‘自增Id‘,idx_et
(EndDate
) USING BTREE5.然后删除表后并重建表:
mysql> drop table UserStudent ;
mysql> CREATE TABLE UserStudent
(
.....(省略,就是上面那一段)
如果出现:ERROR 1808 (HY000): Schema mismatch (Table has ROW_TYPE_DYNAMIC row format, .ibd file has ROW_TYPE_COMPACT row format.)
CREATE TABLE时最后一行要指定:ROW_FORMAT=COMPACT
6.此时看看能不有查询数据:
mysql>select from UserStudent limit 0,10 ;
如果出现:mysql> select from UserStudent limit 0,10;
ERROR 1812 (HY000): Tablespace is missing for table ‘xxxxdb
.UserStudent
‘ .
作如下操作:
mysql>alter table UserStudent discard tablespace;
然后将备份文件里面的 UserStudent.ibd 拷贝至现在的数据库位置后,输入:
mysql> alter table UserStudent import tablespace;
再查询确认,一般此时表能够正常查询了:
mysql>select * from UserStudent limit 0,10;
标签:auto only 因此 not 需要 mysql 注意 pac 使用
原文地址:https://blog.51cto.com/soulful/2451942