最近几周一切正常,但今天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.
我浏览了日志中建议的链接,发现
但是表中的数据几乎没有5-6行,即文本和数字。那么“损坏的数据”在这里是什么意思?
我是MYSQL的新手,如何确定是错误还是其他原因。
MYSQL版本-8.0.11