大约一周前,我终于找到了导致我的服务器不断崩溃的原因。
在查看我的mysqld.log后,我一直看到同样的错误,
101210 5:04:32 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
以下是错误报告的链接,http://bugs.mysql.com/bug.php?id=35346有人建议您将my.cnf中的max_join_size vaule设置为4M,我做了。我认为这解决了这个问题,并且它工作了大约一个星期,直到今天都没有问题......
我检查了MySQL,现在又回来了,
101216 06:35:25 mysqld restarted
101216 6:38:15 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
101216 6:38:15 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
101216 06:40:42 mysqld ended
任何人都知道如何才能真正解决这个问题?我不能让像这样的mysql崩溃。
编辑:我忘了提到每次发生这种情况我收到来自linode的电子邮件,我有一个高磁盘io率您的Linode在过去2小时内平均2483.68超过了磁盘io速率的通知阈值(1000)。
答案 0 :(得分:0)
你真的想尝试4GiB加入吗?您是否正在购买完整的笛卡尔产品,特别是您不打算购买的产品? (SELECT *whatever* from big_table, bigger_table WHERE whatever > 5 /* oops, forgot the join criteria */
)
我建议记录活动,尝试查找导致崩溃的查询。然后,您可以更改查询,并提交带有MySQL的错误报告。
答案 1 :(得分:0)
我认为在 scripts / mysql_install_db.sh 运行之前,在MySQL数据库中将max_join_size定义为4294967295:
<强>脚本/ mysql_system_tables.sql 强>
<强>脚本/ fill_help_tables.sql 强>
可以修正警告。