- 
					vm1> scp /data/mysql/test/tts.{ibd,cfg} user@vm2:/data/mysql/test
 
				 
				- 
					user@vm2's password: 
 
				 
				- 
					tts.ibd					100%   92MB  46.0MB/s   00:02    
 
				 
				- 
					tts.cfg					100%  380     0.4KB/s   00:00  
 
				 
				- 
					 
				
 
			
		 
⑤ 将mysql1的test.tts表做UNLOCK操作(此时可发现cfg文件已被删除):
		
			
				
					- 
						mysql1> UNLOCK TABLES;
 
					 
					- 
						Query OK, 0 rows affected (0.00 sec)
					 
					- 
						
					 
					- 
						mysql1> \! du -sh /data/mysql/test/tts*
					 
					- 
						12K /data/mysql/test/tts.frm
					 
					- 
						92M /data/mysql/test/tts.ibd 
					
 
				
			 
⑥ 在vm2上将传过来的ibd和cfg文件修改权限:
			
				
					
						- 
							vm2> chown mysql:mysql /data/mysql/test/tts.{ibd,cfg} 
						
 
					
				 
			 
		 
⑦ 将上述ibd文件IMPORT到tts表中:
		
			
				
					- 
						mysql2> ALTER TABLE tts IMPORT TABLESPACE;
 
					 
					- 
						Query OK, 0 rows affected (0.93 sec)
					 
					- 
						
					 
					- 
						mysql2> SELECT count(*) FROM tts;
					 
					- 
						+----------+
					 
					- 
						| count(*) |
					 
					- 
						+----------+
					 
					- 
						| 524288   |
					 
					- 
						+----------+
					 
					- 
						1 row in set (0.94 sec) 
					
 
				
			 
至此,已经将mysql1实例上的tts表中数据快速地迁移到mysql2实例上了。
			
		 
〇 上述几个步骤的解释:
操作②中的discard tablespace会在表上加上MDL锁,删除change buffer所有相关的缓存项,设置表元数据信息,标志tablespace为删除状态,重新生成表的id,保证基于表id的操作后续均会失败,再将idb文件干掉,在②中的两次du可以看到.idb文件已经被删除了。这是一个十分危险的操作,慎重;此操作也会被记录到binlog中,若在复制结构可能会有很大的影响,切记先临时关闭binlog。