更新后,apparmor无法启动mysql服务器

分享于 

6分钟阅读

ubuntu

  繁體

问题

今天我更新了系统,无法启动mysql服务器:

我得到以下错误:


Aug 14 14:32:09 VULTURUS kernel: [ 1996.413190] init: mysql main process (14122) terminated with status 1


Aug 14 14:32:09 VULTURUS kernel: [ 1996.413262] init: mysql main process ended, respawning


Aug 14 14:32:10 VULTURUS kernel: [ 1997.373479] init: mysql post-start process (14123) terminated with status 1


Aug 14 14:32:10 VULTURUS kernel: [ 1997.391012] type=1400 audit(1344947530.964:242): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=14156 comm="apparmor_parser"


Aug 14 14:32:11 VULTURUS kernel: [ 1997.453824] type=1400 audit(1344947531.028:243): apparmor="DENIED" operation="open" parent=1 profile="/usr/sbin/mysqld" name="/media/WESYS_DATA/MySql_LX/" pid=14160 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=115 ouid=0


Aug 14 14:32:11 VULTURUS kernel: [ 1997.456707] init: mysql main process (14160) terminated with status 1


Aug 14 14:32:11 VULTURUS kernel: [ 1997.456775] init: mysql respawning too fast, stopped



但我已经在/etc/apparmor.d/usr.sbin.mysqld中添加了异常


# vim:syntax=apparmor


# Last Modified: Tue Jun 19 17:37:30 2007


#include <tunables/global>



/usr/sbin/mysqld {


 #include <abstractions/base>


 #include <abstractions/nameservice>


 #include <abstractions/user-tmp>


 #include <abstractions/mysql>


 #include <abstractions/winbind>



 capability dac_override,


 capability sys_resource,


 capability setgid,


 capability setuid,



 network tcp,



 /etc/hosts.allow r,


 /etc/hosts.deny r,



 /etc/mysql/*.pem r,


 /etc/mysql/conf.d/ r,


 /etc/mysql/conf.d/* r,


 /etc/mysql/*.cnf r,


 /usr/lib/mysql/plugin/ r,


 /usr/lib/mysql/plugin/*.so* mr,


 /usr/sbin/mysqld mr,


 /usr/share/mysql/** r,


 /var/log/mysql.log rw,


 /var/log/mysql.err rw,


 /var/lib/mysql/ r,


 /var/lib/mysql/** rwk,


 /var/log/mysql/ r,


 /var/log/mysql/* rw,


 /var/run/mysqld/mysqld.pid w,


 /var/run/mysqld/mysqld.sock w,


 /run/mysqld/mysqld.pid w,


 /run/mysqld/mysqld.sock w,



 /sys/devices/system/cpu/ r,



 /media/WESYS_DATA/MySql_LX/** rwk,


 /media/WESYS_DATA/MySql_LX/** rwk,



 # Site-specific additions and overrides. See local/README for details.


 #include <local/usr.sbin.mysqld>


}




答案1

/etc/apparmor.d/usr.sbin.mysqld中的以下两行重叠。


/media/WESYS_DATA/MySql_LX/** rwk,


/media/WESYS_DATA/MySql_LX/** rwk,



当你将这些行替换成下面的行时,你的问题得到解决。


/media/WESYS_DATA/MySql_LX/ r,


/media/WESYS_DATA/MySql_LX/** rwk,




答案2

在例子中,消息:


mysql respawning too fast 



重启服务器后,mysql启动正常。


答案3


Sep 24 21:50:05 soft kernel: [ 4926.795768] type=1400 audit(1380048605.174:160): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=10215 comm="apparmor_parser"


Sep 24 21:50:05 soft kernel: [ 4926.954977] type=1400 audit(1380048605.334:161): apparmor="DENIED" operation="mknod" parent=1 profile="/usr/sbin/mysqld" name="/srv/mysql/soft.lower-test" pid=10219 comm="mysqld" requested_mask="c" denied_mask="c" fsuid=0 ouid=0


Sep 24 21:50:05 soft kernel: [ 4926.955011] type=1400 audit(1380048605.334:162): apparmor="DENIED" operation="mknod" parent=1 profile="/usr/sbin/mysqld" name="/srv/mysql/soft.lower-test" pid=10219 comm="mysqld" requested_mask="c" denied_mask="c" fsuid=0 ouid=0


Sep 24 21:50:05 soft kernel: [ 4927.043602] type=1400 audit(1380048605.424:163): apparmor="DENIED" operation="open" parent=1 profile="/usr/sbin/mysqld" name="/srv/mysql/mysql/plugin.frm" pid=10219 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=102 ouid=102


Sep 24 21:50:05 soft kernel: [ 4927.087869] type=1400 audit(1380048605.464:164): apparmor="DENIED" operation="open" parent=1 profile="/usr/sbin/mysqld" name="/srv/mysql/ibdata1" pid=10219 comm="mysqld" requested_mask="rw" denied_mask="rw" fsuid=102 ouid=102


Sep 24 21:50:05 soft init: mysql main process (10219) terminated with status 1



解决方案:我在单独的窗口中登录


sudo /etc/init.d/mysql stop


sudo /etc/init.d/mysql start




相关文章