默认情况下,InnoDB表不能通过直接复制表文件的方式在mysql服务器之间进行移植,即便使用了innodb_file_per_table选项。而使用Xtrabackup工具可以实现此种功能,不过,此时需要“导出”表的mysql服务器启用了innodb_file_per_table选项(严格来说,是要“导出”的表在其创建之前,mysql服务器就启用了innodb_file_per_table选项),并且“导入”表的服务器同时启用了innodb_file_per_table和innodb_expand_import选项。

(1)“导出”表
导出表是在备份的prepare阶段进行的,因此,一旦完全备份完成,就可以在preparef过程中通过--export选项将某表导出了:
# innobackupex --apply-log --export /path/to/backup

此命令会为每个innodb表的表空间创建一个以.exp结尾的文件,这些以.exp结尾的文件则可以用于导入至其它服务器。

(2)“导入”表
要在mysql服务器上导入来自于其它服务器的某innodb表,需要先在当前服务器上创建一个跟原表表结构一致的表,而后才能实现将表导入:
mysql> CREATE TABLE mytable (...)  ENGINE=InnoDB;

然后将此表的表空间删除:
mysql> ALTER TABLE mydatabase.mytable  DISCARD TABLESPACE;

接下来,将来自于“导出”表的服务器的mytable表的mytable.ibd和mytable.exp文件复制到当前服务器的数据目录,然后使用如下命令将其“导入”:
mysql> ALTER TABLE mydatabase.mytable  IMPORT TABLESPACE;

最新文章

  1. html5 选择元素
  2. java 反序列化PHP
  3. Idea 实时编译 和 热部署
  4. jQuery美化下拉菜单插件dropkick
  5. HDU 5102 The K-th Distance(模拟)
  6. 对象化前端表单(Form)提交
  7. jQuery读取和设定KindEditor的值
  8. SQL Server(一)——数据库基础知识
  9. 原型 prototype
  10. JavaScript 跨域:谈谈跨域之 JSONP
  11. nrf51 SDK自带例程的解读
  12. Symfony没有安装依赖_PHP Fatal error: require(): Failed opening required
  13. 机器学习基石 2 Learning to Answer Yes/No
  14. SpringBoot框架与MyBatis集成,连接Mysql数据库
  15. 深入理解Java虚拟机1-chap1-2-斗之气8段
  16. Oracle入门第三天(上)——多表查询与分组函数
  17. unity状态机实现
  18. django配置虚拟环境-1
  19. CocurrentHashMap和HashTable区别分析
  20. AudioTrack

热门文章

  1. 小白神器 - 一篇博客学会HTML
  2. check_nrpe: ERROR - could not complete SSL handshake
  3. FOJ2250 不可能弹幕结界
  4. 高三感想+跨年感想+OI回忆录
  5. [cogs461] [网络流24题#10] 餐巾 [网络流,最小费用最大流]
  6. pyenv-virtualenv环境搭建
  7. N天学习一个linux命令之ssh-keygen
  8. CF #324 DIV2 C题
  9. 网络基础篇(一)--TCP/IP协议族
  10. MFC 小知识总结四