(1)“导出”表 导出表是在备份的prepare阶段进行的,因此,一旦完全备份完成,就可以在prepare过程中通过--export选项将某表导出了: innobackupex --apply-log --export /backup/xbackup/full/ #这个需要在备份的目录下面执行. 后面的路径是备份的目录.(重要) 不是自己定义的目录. # innobackupex --apply-log --export /path/to/backup innobackupex --apply-log --export /backup 此命令会为每个innodb表的表空间创建一个以.exp结尾的文件,这些以.exp结尾的文件则可以用于导入至其它服务器。 (2)“导入”表 要在mysql服务器上导入来自于其它服务器的某innodb表,需要先在当前服务器上创建一个跟原表表结构一致的表,而后才能实现将表导入: mysql> CREATE TABLE mytable (...) ENGINE=InnoDB; #这里要新建表结构 #create table test(id int,name varchar(20),age int) ENGINE=InnoDB; #mysql> show variables like '%autocommit%'; 然后将此表的表空间删除: mysql> ALTER TABLE mydatabase.mytable DISCARD TABLESPACE; 接下来,将来自于“导出”表的服务器的mytable表的mytable.ibd和mytable.exp文件复制到当前服务器的数据目录, 然后使用如下命令将其“导入”:(记得改权限) 这里需要改权限很重要 mysql> ALTER TABLE mydatabase.mytable IMPORT TABLESPACE;
mysql -uroot -poldboy123 <all_2017-12-25.sql