记录一次MySQL 数据恢复过程,mysqld got exception 0xc0000005,MySQL数据恢复成功
前言
公司数据库服务器:上面应该有六七十个数据库。开发数据库,代码服务器的数据都在里面。很久前备份过,但版本比较老。
操作记录:新建数据库,创建用户,给用户授权数据库。 手贱 手动重启mysql服务,没启动开,又重启服务器主机,依然没启动。各种尝试,折腾好几天。没啥用!innodb_force_recovery= 1 - 6 全部试了。错误依然。
明智之举: 出问题后,服务器用的绿色版,第一时间整个目录mysql-8.0.11及DATA做了备份。然后各种尝试折腾。
问题日志:
2021-07-13T07:50:06.083712Z 0 [Warning] [MY-010915] [Server] ‘NO_ZERO_DATE’, ‘NO_ZERO_IN_DATE’ and ‘ERROR_FOR_DIVISION_BY_ZERO’ sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2021-07-13T07:50:06.084015Z 0 [System] [MY-010116] [Server] D:\mysql-8.0.11\bin\mysqld (mysqld 8.0.11) starting as process 5368
2021-07-13T07:50:12.507130Z 0 [System] [MY-010229] [Server] Starting crash recovery…
2021-07-13T07:50:12.507748Z 0 [System] [MY-010232] [Server] Crash recovery finished.
2021-07-13T07:50:13.897913Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2021-07-13T07:50:13.958114Z 0 [Warning] [MY-010952] [Server] The privilege system failed to initialize correctly. If you have upgraded your server, make sure you’re executing mysql_upgrade to correct the issue.
2021-07-13T07:50:13.985627Z 0 [System] [MY-010931] [Server] D:\mysql-8.0.11\bin\mysqld: ready for connections. Version: ‘8.0.11’ socket: ‘’ port: 3386 MySQL Community Server - GPL.
07:50:14 UTC - mysqld got exception 0xc0000005 ;
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=1
max_threads=200
thread_count=1
connection_count=1
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 445385 K bytes of memory
Hope that’s ok; if not, decrease some variables in the equation.
Thread pointer: 0xd2c06b1170
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…
7ff605282861 mysqld.exe!acl_getroot()[sql_auth_cache.cc:1157]
7ff605532283 mysqld.exe!security_context_lookup()[service_security_context.cc:178]
7ff6063f4c01 mysqld.exe!xpl::Sql_data_context::switch_to_user()[sql_data_context.cc:340]
7ff6063f49c1 mysqld.exe!xpl::Sql_data_context::switch_to_local_user()[sql_data_context.cc:176]
7ff6063e02c5 mysqld.exe!xpl::Server::on_net_startup()[xpl_server.cc:544]
7ff6063dfc1e mysqld.exe!xpl::Server::net_thread()[xpl_server.cc:498]
7ff6063e98c9 mysqld.exe!ngs::Sc