Linux Mint触发器在系统启动时慢慢查询mysql

时间:2012-09-24 14:31:36

标签: mysql linux configuration debian mint

我安装了MySQL并在其上导入了一些数据库后,我的基于debian的启动速度很慢。寻找一些陈述,我在启动时找到了这个:

mysql> show full processlist;
+----+------------------+-----------+------+---------+------+----------------+----------------------------------------------------------------------+
| Id | User             | Host      | db   | Command | Time | State          | Info                                                                 |
+----+------------------+-----------+------+---------+------+----------------+----------------------------------------------------------------------+
|  9 | debian-sys-maint | localhost | NULL | Query   |   12 | Opening tables | select count(*) into @discard from `information_schema`.`PARTITIONS` |
| 10 | root             | localhost | NULL | Query   |    0 | NULL           | show full processlist                                                |
+----+------------------+-----------+------+---------+------+----------------+----------------------------------------------------------------------+
2 rows in set (0.00 sec)

这里引起麻烦的陈述:

select count(*) into @discard from `information_schema`.`PARTITIONS`

我有+ -10个数据库,总计超过8GB的数据。

是否有任何配置可以在系统启动时禁用此查询?如果是,为什么要在启动时运行它?

信息

我有一个没有自定义配置的标准MySQL安装。

最好的问候。

1 个答案:

答案 0 :(得分:7)

似乎Debian,其Linux Mint所基于的,具有在启动或重新启动mysql服务器时执行的脚本,以检查损坏的表并对其发出警报。

在我的Debian服务器中,罪魁祸首似乎是/etc/mysql/debian-start bash脚本,后者又调用/usr/share/mysql/debian-start.inc.sh,所以检查两个脚本并注释掉迭代所有表的函数,快速看起来似乎如下:

check_for_crashed_tables;

从我上面提到的debian-start脚本中调用。