Mysql服务器无法启动AssertionError

时间:2018-08-13 12:48:09

标签: mysql

最近几周一切正常,但今天Mysql服务器突然停止了运行。现在,当我尝试重新启动它时,关于我启动服务器的方式会出现不同的错误。
如果使用mysqld从终端启动,命令将卡住,而不会发生任何事情:

2018-08-13T11:03:56.774310Z 0 [System] [MY-010116] [Server] /usr/local/mysql-8.0.11-macos10.13-x86_64/bin/mysqld (mysqld 8.0.11) starting as process 2226
2018-08-13T11:03:56.779744Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /usr/local/mysql-8.0.11-macos10.13-x86_64/data/ is case insensitive
[warn] kq_init: detected broken kqueue; not using.: Invalid argument
2018-08-13T11:03:57.171805Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2018-08-13T11:03:57.226017Z 0 [System] [MY-010931] [Server] /usr/local/mysql-8.0.11-macos10.13-x86_64/bin/mysqld: ready for connections. Version: '8.0.11'  socket: '/tmp/mysql.sock'  port: 3306  MySQL Community Server - GPL.

如果从MacOs系统偏好设置启动mysql服务器,则在单击start按钮时没有任何反应。
我检查了错误日志,并认为找到了服务器突然崩溃的堆栈。

2018-08-13T08:44:48.973396Z 55 [ERROR] [MY-012592] [InnoDB] InnoDB: Operating system error number 13 in a file operation.
2018-08-13T08:44:48.974902Z 55 [ERROR] [MY-012595] [InnoDB] InnoDB: The error means mysqld does not have the access rights to the directory.
2018-08-13T08:44:48.975064Z 55 [ERROR] [MY-000000] [InnoDB] InnoDB: Assertion failure: fil0fil.cc:2423:success
InnoDB: thread 123145375252480
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/8.0/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
08:44:48 UTC - mysqld got signal 6 ;
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=131072
max_used_connections=3
max_threads=151
thread_count=2
connection_count=1
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 67862 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x7fe5cfaec200
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...
stack_bottom = 70000458fe90 thread_stack 0x46000
0   mysqld                              0x000000010664ce3c my_print_stacktrace(unsigned char*, unsigned long) + 60
1   mysqld                              0x0000000105ab7786 handle_fatal_signal + 678
2   libsystem_platform.dylib            0x00007fff6ef86f5a _sigtramp + 26
3   ???                                 0x000000010bffd5f8 0x0 + 4496283128
4   libsystem_c.dylib                   0x00007fff6ed241ae abort + 127
5   mysqld                              0x00000001069d06bc ut_dbg_assertion_failed(char const*, char const*, unsigned long) + 252
6   mysqld                              0x00000001067d5f90 Fil_system::close_file_in_all_LRU(bool) + 0
7   mysqld                              0x00000001067d835c Fil_shard::prepare_file_for_io(fil_node_t*, bool) + 268
8   mysqld                              0x00000001067e478e Fil_shard::do_io(IORequest const&, bool, page_id_t const&, page_size_t const&, unsigned long, unsigned long, void*, void*) + 814
9   mysqld                              0x00000001067e55f3 fil_io(IORequest const&, bool, page_id_t const&, page_size_t const&, unsigned long, unsigned long, void*, void*) + 195
10  mysqld                              0x00000001067719c6 buf_read_page_low(dberr_t*, bool, unsigned long, unsigned long, page_id_t const&, page_size_t const&, bool) + 406
11  mysqld                              0x0000000106771aa8 buf_read_page(page_id_t const&, page_size_t const&) + 56
12  mysqld                              0x0000000106754745 buf_page_get_gen(page_id_t const&, page_size_t const&, unsigned long, buf_block_t*, unsigned long, char const*, unsigned long, mtr_t*, bool) + 869
13  mysqld                              0x00000001067348ad btr_cur_search_to_nth_level(dict_index_t*, unsigned long, dtuple_t const*, page_cur_mode_t, unsigned long, btr_cur_t*, unsigned long, char const*, unsigned long, mtr_t*) + 4413
14  mysqld                              0x000000010696f698 row_search_mvcc(unsigned char*, page_cur_mode_t, row_prebuilt_t*, unsigned long, unsigned long) + 4664
15  mysqld                              0x000000010684fc61 ha_innobase::index_read(unsigned char*, unsigned char const*, unsigned int, ha_rkey_function) + 657
16  mysqld                              0x00000001056cbfd6 handler::index_read_idx_map(unsigned char*, unsigned int, unsigned char const*, unsigned long, ha_rkey_function) + 86
17  mysqld                              0x00000001056c4027 handler::ha_index_read_idx_map(unsigned char*, unsigned int, unsigned char const*, unsigned long, ha_rkey_function) + 167
18  mysqld                              0x0000000105933304 read_const(TABLE*, TABLE_REF*) + 324
19  mysqld                              0x0000000105932f40 join_read_const_table(JOIN_TAB*, POSITION*) + 304
20  mysqld                              0x00000001059714cd JOIN::extract_func_dependent_tables() + 333
21  mysqld                              0x0000000105968f53 JOIN::make_join_plan() + 995
22  mysqld                              0x0000000105964b53 JOIN::optimize() + 2579
23  mysqld                              0x00000001059c341b SELECT_LEX::optimize(THD*) + 123
24  mysqld                              0x00000001059c4022 Sql_cmd_dml::execute_inner(THD*) + 146
25  mysqld                              0x00000001059c3e66 Sql_cmd_dml::execute(THD*) + 934
26  mysqld                              0x0000000105980ce3 mysql_execute_command(THD*, bool) + 3203
27  mysqld                              0x000000010597eeb6 mysql_parse(THD*, Parser_state*) + 886
28  mysqld                              0x000000010597d7c8 dispatch_command(THD*, COM_DATA const*, enum_server_command) + 7544
29  mysqld                              0x000000010597e723 do_command(THD*) + 467
30  mysqld                              0x0000000105aa09e4 handle_connection(void*) + 372
31  mysqld                              0x0000000106a3859c pfs_spawn_thread(void*) + 316
32  libsystem_pthread.dylib             0x00007fff6ef90661 _pthread_body + 340
33  libsystem_pthread.dylib             0x00007fff6ef9050d _pthread_body + 0
34  libsystem_pthread.dylib             0x00007fff6ef8fbf9 thread_start + 13

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (7fe5cf27a828): select mentorprof0_.user_id as user_id1_23_0_, mentorprof0_.approach_way as approach2_23_0_, mentorprof0_.is_willing as is_willi3_23_0_, mentorprof0_.mentee_details as mentee_d4_23_0_ from mentor_profile mentorprof0_ where mentorprof0_.user_id=1
Connection ID (thread ID): 55
Status: NOT_KILLED

The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.

我浏览了日志中建议的链接,发现

  1. 这可能是由错误引起的
  2. 或者可能是一些损坏的数据错误。

但是表中的数据几乎没有5-6行,即文本和数字。那么“损坏的数据”在这里是什么意思?
我是MYSQL的新手,如何确定是错误还是其他原因。 MYSQL版本-8.0.11

0 个答案:

没有答案