xtrabackup单表备份与恢复

备份:
单表备份主要是使用include参数,格式如下:

--include=name;指定表名,格式:databasename.tablename

具体命令如下:

innobackupex --defaults-file=/data01/3306/conf/my.cnf --socket=/data01/3306/tmp/mysql.sock --user=root --password=password --include=test.testtable --port=3306  /data01/xtrabackup/

备份完之后,会生成对应表的ibd和frm文件,ibd文件主要存放数据,frm文件用于存放表结构tablespace。

恢复:
恢复的话直接将ibd和frm这两个文件cp到mysql的data目录里
然后,这个时候停止mysql服务再重启可能会报错:

Error: tablespace id is 4753 in the data dictionary

可以先删除表空间结构:

ALTER TABLE table DISCARD TABLESPACE;

然后再导入一遍表结构(mysql会自动选择frm文件导入表结构):

ALTER TABLE  table IMPORT TABLESPACE;

重启mysql,问题解决,表恢复完成

posted @ 2020-08-07 16:31  鱼蛋炒饭  阅读(325)  评论(0)    收藏  举报