评论

收藏

[MySQL] 苹果系统Sequel Pro—MySQL客户端工具一个大坑

数据库 数据库 发布于:2021-07-04 09:50 | 阅读数:609 | 评论:0

  软件名称:Sequel Pro(MySQL客户端工具)
官网地址:http://www.sequelpro.com/

  

  该工具在导出表数据的时候,会产生一条坑爹的SQL:
/*!40000 ALTER TABLE `sbtest` DISABLE KEYS */;
  这条SQL是针对MyISAM引擎批量插入,为了加快插入速度,会加上ALTER TABLE t1 DISABLE KEYS;来关闭索引, 这里存在一定的风险,因为在插入完毕后,要再执行ALTER TABLE t1 ENABLE KEYS;来开启索引,这里开启索引相当于索引重建了,非常耗时,而且会锁表。应禁止使用该功能。

而InnoDB引擎因采用内存型缓冲写,设计上不同于MyISAM引擎,对此不受影响。
  

  下面是一个测试,截图如下:
DSC0000.jpg

  如果你有一张很大的MyISAM表,会非常耗费时间,在开启索引的时候,会全表锁,坑死你没商量。
  

  知识回顾:
  MySQL注释符有三种:
1、#...
2、"-- ..."  (注:“--”错了,需要一个空格,应该是“-- ”。)
3、/*...*/  (注释多行)

而/*!40000 ..... */并非注释,意思为MySQL4.00.00版本以上可以执行,低于则不能执行。
  

  例:
DSC0001.jpg

  

  使用苹果笔记本的同学,可得小心了,如果哪天你看走了眼,没有把/*!40000 ALTER TABLE t1 DISABLE KEYS;*/给删掉,且你导入数据的表还是MyISAM引擎,那么我相信,你可以把你的苹果笔记本给砸了。 DSC0002.gif
  

  


  
关注下面的标签,发现更多相似文章