mysql每天在同一时间变得没有响应

我的服务器每天都在同一时间停机。 我发现这个问题是由于MySQL。

我试过显示进程列表; 并发现数据库正在进入睡眠模式。 我看到log_url表中有如此多的插入,如下所示

mysql> show processlist; +-------+---------------+-----------+------------------+---------+------+--------------+------------------------------------------------------------------------------------------------------+ | Id | User | Host | db | Command | Time | State | Info | +-------+---------------+-----------+------------------+---------+------+--------------+------------------------------------------------------------------------------------------------------+ | 72962 | sonicsense_db | localhost | sonicsense_db | Query | 1 | Sending data | SELECT `log_url`.* FROM `log_url` LIMIT 2381 OFFSET 2992917 | | 74069 | sonicsense_db | localhost | sonicsense_db | Query | 4 | Updating | UPDATE `cron_schedule` SET `job_code` = 'captcha_delete_expired_images', `status` = 'error', `messag | | 74073 | sonicsense_db | localhost | sonicsense_db | Query | 51 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528425', '4646727', '2013-08- | | 74074 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 52 | | NULL | | 74077 | sonicsense_db | localhost | sonicsense_db | Query | 41 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528426', '4646728', '2013-08- | | 74078 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 42 | | NULL | | 74079 | sonicsense_db | localhost | sonicsense_db | Query | 36 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528427', '4646729', '2013-08- | | 74080 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 37 | | NULL | | 74081 | sonicsense_db | localhost | sonicsense_db | Query | 34 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528428', '4646730', '2013-08- | | 74082 | sonicsense_db | localhost | sonicsense_db | Query | 31 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528429', '4646731', '2013-08- | | 74084 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 32 | | NULL | | 74085 | sonicsense_db | localhost | sonicsense_db | Query | 30 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528430', '4646732', '2013-08- | | 74086 | sonicsense_db | localhost | sonicsense_db | Query | 31 | Updating | UPDATE `catalogsearch_query` SET `query_text` = 'PreSonus', `num_results` = '154', `popularity` = '3 | | 74087 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 31 | | NULL | | 74088 | sonicsense_db | localhost | sonicsense_db | Query | 20 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528431', '4646734', '2013-08- | | 74089 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 20 | | NULL | | 74090 | sonicsense_db | localhost | sonicsense_db | Query | 12 | update | INSERT IGNORE INTO core_cache_tag (tag, cache_id) VALUES ('MAGE_cache_DEFAULT', 'MAGE_cache_LAYOUT_1 | | 74091 | sonicsense_db | localhost | sonicsense_db | Query | 10 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528432', '4646736', '2013-08- | | 74092 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 11 | | NULL | | 74093 | sonicsense_db | localhost | sonicsense_db | Query | 9 | update | INSERT INTO `log_url` (`url_id`, `visitor_id`, `visit_time`) VALUES ('6528433', '4646737', '2013-08- | | 74094 | sonicsense_db | localhost | sonicsense_wp_db | Sleep | 10 | | NULL | | 74095 | sonicsense_db | localhost | NULL | Query | 0 | NULL | show processlist | +-------+---------------+-----------+------------------+---------+------+--------------+------------------------------------------------------------------------------------------------------+ 

重新启动MySQL解决了我的问题。 我如何检测是什么导致这么多的插入,为什么我的数据库进入睡眠模式。

我也试着去查看mysql日志,发现如下错误1)上一个检查点的年龄是9433987,InnoDB:超过了日志组容量9433498。

2)无法使用/var/log/mysql/mysql.log进行日志logging(错误2)。 closures整个日志

我今天再试一次,我发现睡眠模式下的数据库

 63211 sonicsense_db localhost sonicsense_wp_db Sleep 49 NULL 63215 sonicsense_db localhost sonicsense_wp_db Sleep 37 NULL 63217 sonicsense_db localhost sonicsense_wp_db Sleep 37 NULL 63219 sonicsense_db localhost sonicsense_wp_db Sleep 36 NULL 63221 sonicsense_db localhost sonicsense_wp_db Sleep 16 NULL 

有谁知道我怎样才能解决由于MySQL的网站崩溃问题。

我启用了慢查询日志,我得到了下面的细节

 /usr/libexec/mysqld, Version: 5.1.69-log (Source distribution). started with: Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sock Time Id Command Argument /usr/libexec/mysqld, Version: 5.1.69-log (Source distribution). started with: Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sock Time Id Command Argument /usr/libexec/mysqld, Version: 5.1.69-log (Source distribution). started with: Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sock Time Id Command Argument /usr/libexec/mysqld, Version: 5.1.69-log (Source distribution). started with: Tcp port: 0 Unix socket: /var/lib/mysql/mysql.sock Time Id Command Argument 

仍然无法find任何原因为什么mysql每天都变得无反应

编辑/etc/mysql/my.cnfconfiguration并添加:

  log_slow_queries = /var/log/mysql/mysql-slow.log long_query_time = 2 

第一行启用慢速查询日志(记得旋转它),第二行是关于查询必须花费多less秒才能被认为是慢的。

一旦启用这个,你可以开始调查哪些查询明智地减慢你的MySQL实例。

Magento是一种资源猪。

无论如何,从我记得,有Magento的插件不仅优化网站(PHP),而且还有后台进程,如MySQL。

我说这是因为如果它每天都在同一时间发生,那么它的Magento启动一个查询,它不是一个MySQL问题。

我个人也是

A:

1:在虚拟机上从头开始安装Magento

2:在该MySQL服务器上创build一个新的数据库

3:看看是否发生

或B:

1:将Magento安装克隆到虚拟机

2:在虚拟机中创build一个新的MySQL服务器

3:看看是否发生

我有一种感觉,它会是B,因为MySQL本身并没有做这种从股票这种优化。 虽然这可能无法解决您的问题,但如果它是MySQL问题(不太可能)或Magento问题(很有可能)

如果没有这些,Apache可能是罪魁祸首,但它是罕见的,因为它发生在同一时间。