MySQL传输表空间小结(r12笔记第2天)

  

  ,在MySQL中如果要迁移一个表导另外一个服务器/环境中,常规的做法就是使用备份工具备份,比如,mysqldump,然后拷贝备份到目标服务器或者环境导入。如果某一个表数据量很大,导出转储文件很大的情况下,使用导出导入工具其实会花费不少的时间。   

  

  ,,   怎么样提高效率呢,可以有一种想法就是直接拷贝数据文件到目标环境,当然在早期版本中这么做是不可取的,因为会有很多关联数据在ibdata中,InnoDB的数据存在对应的数据字典信息,是存放在共享表空间中,无法直接剥离出来,而在5.6/5.7中,就推出了一个很不错的特性,就是迁移表空间,可以把这个配置信息剥离出来,简单来说就是把数据文件直接拷贝到目标环境,在目标端挂载即可。   

  

  ,,这样一个操作的一个基本前提是使用了独立表空间,开启innodb_file_per_table。   

  

  在显示变量如% per_table %的;
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
  | Variable_name ,,,,,,,| |值
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
  | innodb_file_per_table | alt=" MySQL传输表空间小结(r12笔记第2天)">   

MySQL传输表空间小结(r12笔记第2天)