我有一个简单的选择查询的mysql服务器消失了,错误是:
SQLSTATE[HY000]: General error: 2006 MySQL server has gone away, query was: SELECT `main_table`.* FROM `sales_flat_order` AS `main_table` WHERE (`increment_id` LIKE '%0005254')
此查询是cron预定的,每5分钟执行一次。如果我重新启动mysql服务器,查询正常执行一天,然后再次开始崩溃。
我认为它与RAM有关,但我在服务器上有足够的RAM:
Ubuntu 14.04.5 LTS上的MySql版本为5.7.17
/var/log/mysql/errors.log和syslog中都没有错误
其他一些配置:
max_allowed_packet = 256M
innodb_buffer_pool_size = 2G
你知道它可以是什么吗?
答案 0 :(得分:0)
检查open_files_limit
SHOW VARIABLES LIKE 'open%';
如果少于增加它并检查。还想添加max_allowed_packet
SET GLOBAL max_allowed_packet='figure more then existing one'.