日志:
Oct 03 22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:字节偏移0,len 16384,i / o类型10。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:如果你在mysqld启动时遇到这个错误,请检查一下 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:你的my.cnf匹配你在的ibdata文件 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:MySQL服务器。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:2017-10-03 22:00:46 7fe26c4fd780 InnoDB:文件fil0fil.cc第5601行中的线程140610456508288中的断言失败 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:我们故意生成一个内存陷阱。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:向http://bugs.mysql.com提交详细的错误报告。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:如果你反复断言失败或崩溃,甚至 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:mysqld启动后立即出现,可能有 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:InnoDB表空间中的损坏。请参阅 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:InnoDB:关于强制恢复。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:171003 22:00:46 [错误] mysqld得到信号6; 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:这可能是因为你遇到了一个bug。这个二进制文件也有可能 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:或者它所链接的其中一个库是腐败的,不正确的构建, 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:或配置错误。此错误也可能由硬件故障引起。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]: 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:要报告此错误,请参阅https://mariadb.com/kb/en/reporting-bugs 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]: 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:我们会尽力挖掘一些有希望帮助的信息 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:诊断问题,但既然我们已经崩溃了, 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:肯定是错的,这可能会失败。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]: 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:服务器版本:10.0.31-MariaDB-0ubuntu0.16.04.2 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:key_buffer_size = 16777216 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:read_buffer_size = 131072 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:max_used_connections = 0 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:max_threads = 153 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:thread_count = 0 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:有可能mysqld最多可以使用 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:key_buffer_size +(read_buffer_size + sort_buffer_size)* max_threads = 352327 K字节的内存 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:希望没问题;如果不是,减少等式中的一些变量。 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]: 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:线程指针:0x0 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:尝试回溯。您可以使用以下信息查找 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:mysqld死在哪里。如果你在此之后没有看到任何消 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:非常错误...... 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:stack_bottom = 0x0 thread_stack 0x30000 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld(my_print_stacktrace + 0x3d)[0xc1d4ad] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld(handle_fatal_signal + 0x3bf)[0x7449df] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ lib / x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7fe26b613390] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ lib / x86_64-linux-gnu/libc.so.6(gsignal+0x38)[0x7fe26abe2428] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ lib / x86_64-linux-gnu/libc.so.6(abort+0x16a)[0x7fe26abe402a] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xab1c8b] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa7a4ec] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa7b4f4] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa5f4c5] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa236e2] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa17fad] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa18b2d] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa1997e] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0xa03d28] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0x9364c5] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld(_Z24ha_initialize_handlertonP13st_plugin_int + 0x5e)[0x746ade] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0x5d7f15] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld(_Z11plugin_initPiPPci + 0x530)[0x5d8600] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld [0x528c13] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld(_Z11mysqld_mainiPPc + 0x570)[0x52ea30] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ lib / x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7fe26abcd830] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:/ usr / sbin / mysqld(_start + 0x29)[0x523f09] 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:http://dev.mysql.com/doc/mysql/en/crashing.html的手册页包含 10月03日22:00:46 ip-172-31-3-124 mysqld [4294]:可以帮助您找出导致崩溃的原因的信息。 10月03日22:00:46 ip-172-31-3-124 mysqld_safe [4311]:来自pid文件/var/run/mysqld/mysqld.pid的mysqld已结束 10月03日22:01:17 ip-172-31-3-124 /etc/init.d/mysql[4590]:0进程活着和' / usr / bin / mysqladmin --defaults-file = / etc /mysql/debian.cnf ping'结果 10月03日22:01:17 ip-172-31-3-124 /etc/init.d/mysql[4590]:[61B blob数据] 10月03日22:01:17 ip-172-31-3-124 /etc/init.d/mysql[4590]:错误:'无法通过socket'连接到本地MySQL服务器/var/run/mysqld/mysqld.sock' (2"没有这样的文件或目录")'
系统是Ubuntu 16.04。
我备份了数据库文件并添加了:
的[mysqld] innodb_force_recovery = 6
我仍然无法启动mysql。
有什么建议吗?
答案 0 :(得分:0)
从MySQL自己的页面: Forcing InnoDB recovery
他们说不要使用高于3的值,因为:
如果您能够使用innodb_force_recovery值为3或更低版本转储表,那么您相对安全,只有损坏的单个页面上的某些数据会丢失。值为4或更高被认为是危险的,因为数据文件可能会永久损坏。值6被认为是极端的,因为数据库页面处于过时状态,这反过来可能会在B树和其他数据库结构中引入更多损坏。
不幸的是,InnoDB的my.cnf
值似乎是正确的(这让我遇到了麻烦)。
我讨厌将此作为正式答案,但您可能需要在某些关键文件损坏之前找到备份。
InnoDB文件与ISAM不同,您不能只是重新创建表格,然后用您拥有的副本覆盖文件。在innodb_data_file_path
{。}}提交的文件中保留了大量信息。
IF 您有innodb_file_per_table
并且没有备份,那么您可能必须“重新安装”mysql并重新创建数据库并从当前文件备份中移动表并使用此恢复程序。我曾经用过这个。