我在EC2上运行的CentOS 7上设置了标准主/多从设备。
我实际上有三个相同的奴隶(都是在同一个AMI中产生的),但每天只有一个人崩溃。我已经在下面的error.log中发布了转储,以及在错误转储中引用连接ID的查询日志。
我已经尝试过查看MariaDB文档了,但所有它指向的是resolve_stack_dump,但没有真正的帮助,试图从那里弄清楚。
正在崩溃的从属运行许多类似批处理的查询,但根据转储日志,最后一个连接ID永远不是运行查询的连接之一。
对于这个从站,我让系统关闭从站更新(SQL_THREAD),运行查询15分钟,停止查询,启动从站直到赶上,停止从站更新,然后重新启动查询。重复。多年以来,当我在迁移到AWS之前设置了colo时,这段代码几乎不间断/无崩溃。
我的其他两个克隆的从属服务器只运行复制查询作为主服务器的热备份(我从未需要使用它)。那些服务器永远不会崩溃。
感谢。
Error.log崩溃转储:
180618 13:12:46 [错误] mysqld收到信号11;这可能是因为 你遇到了一个bug。这也可能是二进制或其中之一 它所链接的图书馆是腐败的,不正确的,或者 配置错误。此错误也可能由故障引起 硬件。
要报告此错误,请参阅https://mariadb.com/kb/en/reporting-bugs
我们会尽力挖掘一些有希望提供帮助的信息 诊断问题,但由于我们已经崩溃,有些事情是 肯定是错的,这可能会失败。
服务器版本:10.1.33-MariaDB
的key_buffer_size = 268431360
read_buffer_size = 268431360
max_used_connections = 30
max_threads的= 42
thread_count = 11
mysqld可能最多可以使用 key_buffer_size +(read_buffer_size + sort_buffer_size)* max_threads = 22282919 K字节的内存希望没问题;如果没有,减少一些 等式中的变量。
线程指针:0x7f4209f1c008尝试回溯。你可以使用 以下信息,以找出mysqld死亡的地方。如果你看不到 在此之后的消息,出现了严重的错误... stack_bottom = 0x7f4348db90b0 thread_stack 0x48400
/ usr / sbin目录/ mysqld的(my_print_stacktrace +器0x2E)[0x55c19a7be10e]
/ usr / sbin目录/ mysqld的(handle_fatal_signal + 0x305)[0x55c19a2e1295]
sigaction.c:0(__ restore_rt)[0x7f4348a835e0]
sql / sql_class.h:3406(sql_set_variables(THD *,List , 布尔))[0x55c19a0d2ecd]
SQL / sql_list.h:179(base_list ::空())[0x55c19a14bcb8]
sql / sql_parse.cc:2007(dispatch_command(enum_server_command,THD , char *,unsigned int))[0x55c19a15e85a]
SQL / sql_parse.cc:1122(do_command(THD *))[0x55c19a160f37]
SQL / sql_connect.cc:1330(do_handle_one_connection(THD *))[0x55c19a22d6da]
SQL / sql_connect.cc:1244(handle_one_connection)[0x55c19a22d880]
pthread_create.c:0(start_thread)[0x7f4348a7be25]
/lib64/libc.so.6(clone+0x6d)[0x7f4346e1f34d]
试图获取一些变量。
某些指针可能无效并导致 转储中止。
查询(0x0):连接ID(线程ID):15894
状态:NOT_KILLED
优化开关: index_merge =开,index_merge_union =上,index_merge_sort_union =上,index_merge_intersection =开,index_merge_sort_intersection =关,engine_condition_pushdown =关,index_condition_pushdown =开,derived_merge =上,上,物化derived_with_keys =开,firstmatch =开,loosescan = =开,in_to_exists =上,半连接=上,partial_match_rowid_merge =上,partial_match_table_scan =上,subquery_cache =开,MRR =关,mrr_cost_based = OFF,ON,join_cache_incremental =上,join_cache_hashed =开,join_cache_bka = mrr_sort_keys =关,outer_join_with_cache =开,semijoin_with_cache =开, optimize_join_buffer_size =关,table_elimination =开,extended_keys =上,exists_to_in =开,orderby_uses_equalities =关
查询连接ID的日志:
180618 13:11:01
15894以***为匿名连接**** @ piper **** 15894查询显示状态
15894准备显示完整进程列表/ * m6clone1 /
15894执行show完整进程列表/ m6clone1 * /
15894关闭stmt
15894查询显示从站状态
15894查询显示变量
15894退出