如何解决 InnoDB: Unable to lock ./ibdata1 mysql 错误?

How to solve InnoDB: Unable to lock ./ibdata1 mysql error?

2016-03-14 02:30:29 58150 [ERROR] InnoDB: Unable to lock ./ibdata1, error: 35 2016-03-14 02:30:29 58150 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.

首先,使用ps命令列出MySQL个进程:

ps aux | grep mysql

然后杀掉进程

sudo kill 56311

信不信由你,解决方案在别处。问题显然源于 AppArmor 配置错误。

那就这样吧:

$ apt install apparmor-profiles

然后重启 MySQL(注意重启的速度)。

我在执行以下操作时发现缺少与 AppArmor 相关的文件:

$ systemctl status mysql.service

瞧。

应该是"There is another solution: the problem might be AppArmor"。如果您 没有 看到 /var/log/apport.log 中的条目,那么 AppArmor 可能不是问题所在。

然而,这是一个有趣的解决方案。