代码之家  ›  专栏  ›  技术社区  ›  Gautam Rai

mysql停止在xampp中工作,错误为InnoDB:File(未知):'read'返回操作系统错误223

  •  2
  • Gautam Rai  · 技术社区  · 7 年前

    当我尝试在Xampp中启动Mysql时出现以下错误

    2019-01-30 8:24:11 6428[错误]InnoDB:文件(未知):'读取' [错误]mysqld出现异常0x8000003;

    2019-01-30  8:23:30 6428 [Note] InnoDB: Using mutexes to ref count buffer pool pages
    2019-01-30  8:23:30 6428 [Note] InnoDB: The InnoDB memory heap is disabled
    2019-01-30  8:23:30 6428 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
    2019-01-30  8:23:30 6428 [Note] InnoDB: _mm_lfence() and _mm_sfence() are used for memory barrier
    2019-01-30  8:23:30 6428 [Note] InnoDB: Compressed tables use zlib 1.2.3
    2019-01-30  8:23:30 6428 [Note] InnoDB: Using generic crc32 instructions
    2019-01-30  8:23:30 6428 [Note] InnoDB: Initializing buffer pool, size = 16.0M
    2019-01-30  8:23:30 6428 [Note] InnoDB: Completed initialization of buffer pool
    2019-01-30  8:23:30 6428 [Note] InnoDB: Highest supported file format is Barracuda.
    2019-01-30  8:23:30 6428 [Note] InnoDB: The log sequence numbers 1835037 and 1835037 in ibdata files do not match the log sequence number 3178968401 in the ib_logfiles!
    2019-01-30  8:23:30 6428 [Note] InnoDB: Database was not shutdown normally!
    2019-01-30  8:23:30 6428 [Note] InnoDB: Starting crash recovery.
    2019-01-30  8:23:30 6428 [Note] InnoDB: Reading tablespace information from the .ibd files...
    2019-01-30 08:24:11 191c  InnoDB: Operating system error number 23 in a file operation.
    InnoDB: Some operating system error numbers are described at
    InnoDB: http://dev.mysql.com/doc/refman/5.6/en/operating-system-error-codes.html
     InnoDB: Operation read to file D:\win32-packages\build\src\storage\xtradb\os\os0file.cc and at line 3203
    2019-01-30  8:24:11 6428 [ERROR] InnoDB: File (unknown): 'read' returned OS error 223. Cannot continue operation
    190130  8:24:11 [ERROR] mysqld got exception 0x80000003 ;
    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.
    

    错误日志文件的附加信息

    Server version: 10.1.21-MariaDB
    key_buffer_size=16777216
    read_buffer_size=262144
    max_used_connections=0
    max_threads=1001
    thread_count=0
    It is possible that mysqld could use up to 
    key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 787106 K  bytes of memory
    Hope that's ok; if not, decrease some variables in the equation.
    
    Thread pointer: 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...
    mysqld.exe!my_parameter_handler()
    mysqld.exe!my_wildcmp_mb_bin()
    mysqld.exe!??2Item_change_record@@SAPAXIPAX@Z()
    mysqld.exe!??2Item_change_record@@SAPAXIPAX@Z()
    mysqld.exe!?get_trg_event_map@Update_rows_log_event@@UAEEXZ()
    mysqld.exe!?get_trg_event_map@Update_rows_log_event@@UAEEXZ()
    mysqld.exe!?get_trg_event_map@Update_rows_log_event@@UAEEXZ()
    mysqld.exe!?get_trg_event_map@Update_rows_log_event@@UAEEXZ()
    mysqld.exe!?get_trg_event_map@Update_rows_log_event@@UAEEXZ()
    mysqld.exe!?get_trg_event_map@Update_rows_log_event@@UAEEXZ()
    mysqld.exe!?set_required_privilege@Settable_routine_parameter@@UAEX_N@Z()
    mysqld.exe!?ha_initialize_handlerton@@YAHPAUst_plugin_int@@@Z()
    mysqld.exe!?plugin_init@@YAHPAHPAPADH@Z()
    mysqld.exe!?plugin_init@@YAHPAHPAPADH@Z()
    mysqld.exe!?init_net_server_extension@@YAXPAVTHD@@@Z()
    mysqld.exe!?win_main@@YAHHPAPAD@Z()
    mysqld.exe!?mysql_service@@YAHPAX@Z()
    mysqld.exe!my_wildcmp_mb_bin()
    KERNEL32.DLL!BaseThreadInitThunk()
    ntdll.dll!VerSetConditionMask()
    ntdll.dll!VerSetConditionMask()
    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
    

    尝试了许多类似的解决方案,但都解决不了我的问题。

    谢谢。

    2 回复  |  直到 7 年前
        1
  •  1
  •   Monkey D. Luffy    7 年前

    曾经我也有过同样的问题。

    尝试这样做:

    打开XAMPP目录并转到XAMPP/mysql/Data。

    1. ibdata*,汽车.cnf, mysql.pid文件 '到另一个文件夹'
    2. 停止mysql并重新启动它
    3. 如果mysql启动,那么移动 ibdata公司 返回原始文件夹
    4. 再重复第二步。

    这对我有用。 ibdata公司* 文件。所以请记住,无论发生什么,都不要删除该文件,否则您将遭受 巨大的 重要数据丢失量。

        2
  •  0
  •   KK Patel    7 年前

    我建议把mysql force_recovery 通过在配置文件中的conf下面放置我的.cnf.

    [mysqld]
    innodb_force_recovery = 1
    

    重启mysql并导出整个数据库。

    导出完成后,请从中删除“强制恢复”选项我的.cnf并重新启动了服务。