MySQL5.7被一条排序SQL弄宕机

windows2008上,数据库(5.7.17)被一条排序的SQL搞宕机,每次毕现,表只有一条记录(表定义比较长),且表文件既有几百k。

错误日志:

04:58:38 UTC - mysqld got exception 0xc000001d ;

This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
Attempting to collect some information that could help diagnose the problem.
As this is a crash and something is definitely wrong, the information
collection process might fail.

key_buffer_size=8388608
read_buffer_size=65536
max_used_connections=23
max_threads=151
thread_count=9
connection_count=9
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 58347 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.


Thread pointer: 0xa8c9010
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
1407d3343    mysqld.exe!my_wildcmp_mb()
1402a193b    mysqld.exe!?copy_min_to_min@SEL_ARG@@QEAAXPEAV1@@Z()
1402a4d00    mysqld.exe!?free_tree@SEL_ARG@@QEAAXXZ()
1402b14be    mysqld.exe!?test_quick_select@@YAHPEAVTHD@@V?$Bitmap@$0EA@@@_K2_NW4enum_order@st_order@@PEBVQEP_shared_owner@@PEAVItem@@PEAV2@PEAPEAVQUICK_SELECT_I@@@Z()
13fe6736e    mysqld.exe!?get_op_type@Ft_hints@@QEAA?AW4ft_operation@@XZ()
13fe65dcd    mysqld.exe!?estimate_rowcount@JOIN@@AEAA_NXZ()
13fe68b39    mysqld.exe!?make_join_plan@JOIN@@AEAA_NXZ()
13fe6a6ab    mysqld.exe!?optimize@JOIN@@QEAAHXZ()
13feaf179    mysqld.exe!?optimize@st_select_lex@@QEAA_NPEAVTHD@@@Z()
13fecc1c5    mysqld.exe!?optimize@st_select_lex_unit@@QEAA_NPEAVTHD@@@Z()
13ff451bc    mysqld.exe!?optimize_derived@TABLE_LIST@@QEAA_NPEAVTHD@@@Z()
13fe6a336    mysqld.exe!?optimize@JOIN@@QEAAHXZ()
13feaf179    mysqld.exe!?optimize@st_select_lex@@QEAA_NPEAVTHD@@@Z()
13fead19d    mysqld.exe!?handle_query@@YA_NPEAVTHD@@PEAULEX@@PEAVQuery_result@@_K3@Z()
13fd24107    mysqld.exe!?execute_init_command@@YAXPEAVTHD@@PEAUst_mysql_lex_string@@PEAUst_mysql_rwlock@@@Z()
13fd26036    mysqld.exe!?mysql_execute_command@@YAHPEAVTHD@@_N@Z()
13fd29a83    mysqld.exe!?mysql_parse@@YAXPEAVTHD@@PEAVParser_state@@@Z()
13fd22b83    mysqld.exe!?dispatch_command@@YA_NPEAVTHD@@PEBTCOM_DATA@@W4enum_server_command@@@Z()
13fd23b7a    mysqld.exe!?do_command@@YA_NPEAVTHD@@@Z()
13fcf981c    mysqld.exe!handle_connection()
140717392    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
14042fc4b    mysqld.exe!my_thread_once()
1407d9a3f    mysqld.exe!my_wildcmp_mb()
1407d9c8a    mysqld.exe!my_wildcmp_mb()
779bf56d    kernel32.dll!BaseThreadInitThunk()
77bf3281    ntdll.dll!RtlUserThreadStart()

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (ef11b40): SELECT COUNT(t.DEVICE_ID) FROM
 (SELECT DISTINCT DEVICE_ID FROM `energy_airconditioner_info` ) t
Connection ID (thread ID): 59

Status: NOT_KILLED

第一次遇到这种问题,看错误提示好像是参数设置的有问题,查看了一下数据库的这几个参数,都是默认的,于是修改如下,然后验证问题解决:

innodb_buffer_pool_size=200M
key_buffer_size=8M
read_buffer_size=1M
read_rnd_buffer_size=1M

sort_buffer_size=1M

过了一会又宕机了,换到5.7.22,还是有问题,安装了windows6.1-KB976932-X64.exe就好了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值