我刚刚重启了我的开发机器,现在 MySQL 拒绝启动。当我启动服务时,它立即抛出异常并死机……
我想不出在重新启动之前我可以更改什么以任何方式影响 MySQL......
这是在 Windows 2003 Server 上运行的 MySQL Server 5.1。
日志文件的内容如下:
090703 14:11:17 - 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.
We will try our best to scrape up some info that will hopefully help diagnose
the problem, but since we have already crashed, something is definitely wrong
and this may fail.
key_buffer_size=26214400
read_buffer_size=65536
max_used_connections=0
max_threads=100
threads_connected=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 58231 K
bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
thd: 0x0
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...
006B8853 mysqld.exe!srv_parse_data_file_paths_and_sizes()[srv0start.c:211]
006A7E18 mysqld.exe!innobase_init()[ha_innodb.cc:1536]
00442748 mysqld.exe!ha_initialize_handlerton()[handler.cc:434]
00561253 mysqld.exe!plugin_initialize()[sql_plugin.cc:1002]
00565AE5 mysqld.exe!plugin_init()[sql_plugin.cc:1209]
004CE1B4 mysqld.exe!init_server_components()[mysqld.cc:3831]
004CE8C6 mysqld.exe!win_main()[mysqld.cc:4267]
004CECDB mysqld.exe!mysql_service()[mysqld.cc:4439]
00724593 mysqld.exe!_callthreadstart()[thread.c:293]
0072462C mysqld.exe!_threadstart()[thread.c:275]
77E6482F kernel32.dll!GetModuleHandleA()
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.
有什么想法吗?
我应该卸载并重新安装 MySQL 吗?
还有什么比我能做的更快的吗?
谢谢!
答案1
在开始之前尝试删除 innodb 日志文件(数据目录中的 ib_logfileXX)。
答案2
我最终只是卸载并重新安装了 MySQL,现在它运行正常。
谢谢!
答案3
我在硬盘空间不足后出现此错误。我最终通过从 C:\Windows\temp 中删除 ib*.tmp 文件解决了此问题,因为这些文件导致启动失败,甚至对于之前正常运行的数据目录也是如此。
答案4
0xc0000005 是什么,是“访问冲突”错误吗?听起来像是 (a) 有一个错误 - 一个坏指针触发了对受保护内存的“触摸”尝试,导致操作系统失灵,或者 (b) 您安装了一些坏 RAM,坏点触发了指针访问受保护内存,导致与 (a) 相同的结果。
如果重新安装 MySQL,是否可以安装 v5.0 而不是 v5.1?最初有报告称,与 5.0 相比,5.1 存在一些稳定性问题,尽管我确信这些问题现在已经得到解决……当然,如果您正在使用 5.1 特有的功能,那就不可能了……