Percona MySQL 5.5无法启动

试图在这里设置新的服务器,但不断得到这个错误日志:

mysqld_safe Starting mysqld daemon with databases from /data/mysql/myisam [Warning] Can't create test file /data/mysql/myisam/hostname.lower-test [Warning] Can't create test file /data/mysql/myisam/hostname.lower-test [Note] Flashcache bypass: disabled [Note] Flashcache setup error is : setmntent failed /usr/sbin/mysqld: File '/var/mysql/bin/bin-log.index' not found (Errcode: 13) [ERROR] Aborting [Note] /usr/sbin/mysqld: Shutdown complete mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended 

/data/mysql (它是ibdata和myisam文件夹)下的所有内容都属于我的mysql:mysql,并具有适当的权限

/var/mysql下有与bin和中继日志的文件夹也是一样的

apparmor从服务器清除

有任何想法吗?

PS

似乎除了apparmor之外的其他东西正在影响访问mysql文件的权限

之后,我改变了数据目录更多的默认一个 – / var / lib / mysql和“无法创buildtesting文件”错误消失了,但''/var/mysql/bin/bin-log.index'未find(错误代码: 13)“还在那里

PPS

所以我安装了apparmor,并将所有文件夹添加到mysqld的configuration文件,上面提到的错误现在已经不存在了(或者mysql现在甚至没有到这一点)

我现在所拥有的是:/ usr / sbin / mysqld:加载共享库时出错:libpthread.so.0:无法打开共享目标文件:没有这样的文件或目录

把我的头撞在墙上。

这个问题现在有点老了,但是如果其他人遇到这个页面(就像我做的那样),下面是让我工作的东西:

就我而言,答案是肯定的。

解决scheme:编辑文件/etc/apparmor.d/usr.sbin.mysqld

添加以下行:

 /path/to/new/data/ r, /path/to/new/data/** rwk, /path/to/new/logs/ r, /path/to/new/logs/ rw, 

然后重新启动apparmor:

 sudo /etc/init.d/apparmor restart 

AppArmor阻止了mysql访问这些文件的新位置。 这就是为什么这些权限都是正确的。 “某些东西”阻止mysql访问新的位置是正确的。 那个“东西”是“apparmor”:-)

Apparmor似乎是Ubuntu 11.10的标准,这是我遇到这个问题的地方。 10.04似乎没有默认安装Apparmor。

希望这可以帮助别人,我一直在这个头发上扯了太多时间!

如果这是全新安装,则需要运行mysql_install_db脚本来创build所需的表/文件。

这是一个全新的安装?

bin-log.index是二进制日志文件名的索引文件。 作为临时解决方法,您可以在my.cnf注释log-bin=行,然后重试。

如果没有帮助,尝试使用mysqld_safe --user=root &来启动MySQL,login到MySQL并运行以下命令:

 mysql> FLUSH LOGS; mysql> RESET MASTER; 

然后再次启动MySQL:

 sudo killall mysqld_safe sudo /etc/init.d/mysqld start