MariaDB启动时的一个InnoDB错误


1.?报错环境描述:RHEL7下,在删除了以MariaDB-compat方式安装的mariadb后,再新装数据库无法启动,相关报错与问题信息如下:

210109?14:39:15?mysqld_safe?mysqld?from?pid?file?/var/run/mariadb/mariadb.pid?ended
210109?14:40:37?mysqld_safe?Starting?mysqld?daemon?with?databases?from?/var/lib/mysql
210109?14:40:37?[Note]?/usr/libexec/mysqld?(mysqld?5.5.68-MariaDB)?starting?as?process?3044?...
210109?14:40:37?InnoDB:?The?InnoDB?memory?heap?is?disabled
210109?14:40:37?InnoDB:?Mutexes?and?rw_locks?use?GCC?atomic?builtins
210109?14:40:37?InnoDB:?Compressed?tables?use?zlib?1.2.7
210109?14:40:37?InnoDB:?Using?Linux?native?AIO
210109?14:40:37?InnoDB:?Initializing?buffer?pool,?size?=?128.0M
210109?14:40:37?InnoDB:?Completed?initialization?of?buffer?pool
InnoDB:?Error:?checksum?mismatch?in?data?file?./ibdata1
210109?14:40:37?InnoDB:?Could?not?open?or?create?data?files.
210109?14:40:37?InnoDB:?If?you?tried?to?add?new?data?files,?and?it?failed?here,
210109?14:40:37?InnoDB:?you?should?now?edit?innodb_data_file_path?in?my.cnf?back
210109?14:40:37?InnoDB:?to?what?it?was,?and?remove?the?new?ibdata?files?InnoDB?created
210109?14:40:37?InnoDB:?in?this?failed?attempt.?InnoDB?only?wrote?those?files?full?of
210109?14:40:37?InnoDB:?zeros,?but?did?not?yet?use?them?in?any?way.?But?be?careful:?do?not
210109?14:40:37?InnoDB:?remove?old?data?files?which?contain?your?precious?data!
210109?14:40:37?[ERROR]?Plugin?‘InnoDB‘?init?function?returned?error.
210109?14:40:37?[ERROR]?Plugin?‘InnoDB‘?registration?as?a?STORAGE?ENGINE?failed.
210109?14:40:37?[Note]?Plugin?‘FEEDBACK‘?is?disabled.
210109?14:40:37?[ERROR]?Unknown/unsupported?storage?engine:?InnoDB
210109?14:40:37?[ERROR]?Aborting

可以在报错信息中看到InnoDB相关的错误:checksum mismatch in data file ./ibdata1

原因即为 ibdata1 文件的校验和不匹配

2. 查找以上报错信息相关资料,需要删除此前产生的日志文件

将 /var/lib/mysql/ 目录下的 ibdata1,ib_logfile0,ib_logfile1 几个文件修改文件名后再次尝试启动mariadb成功,服务正常启动后,自动产生了新的文件。

MariaDB启动时的一个InnoDB错误

MariaDB启动时的一个InnoDB错误

上一篇:Unity应用架构设计(2)——使用中介者模式解耦ViewModel之间通信


下一篇:什么是sql注入?如何有效防止sql注入?