RHEL4U2 升级mysql的问题及解决

今天对rhel4 u2系统中的mysql进行了一下升级,本来很简单的事情,却遇到了一个意想不到的问题。
原系统中,mysql的版本是4.1.12升级为4.1.18。升级文件是从官方网关下载的针对rhel4的现成rpm包。

mysql默认的数据文件$datadir的路径是/var/lib/mysql,由于/var下的空间已经比较小了,重新做了一个分区/mysql,然后将/var/lib/mysql中的数据移到/mysql下,为了避免修改配置文件用ln -s /mysql /var/lib/mysql做了链接。

结果问题就出在这里了,mysql升级完成后,/etc/init.d/mysql start 执行失败,经跟踪发现,/usr/sbin/mysqld_safe 出现如下错误:

Starting MySQL
Starting mysqld daemon with databases from /var/lib/mysql
STOPPING server from pid file /var/lib/mysql/www.aaaaa.com.cn.pid
060416 21:14:25  mysqld ended

查看 /var/log/mysqld.log,只提示
060416 17:06:12  mysqld started
060416 17:06:12  mysqld ended

系统日志message中,显示
Apr 16 16:59:39 www kernel: audit(1145177979.106:127549): avc:  denied  { search } for  pid=27355 co
mm="mysqld" name="/" dev=sdb7 ino=2 scontext=root:system_r:mysqld_t tcontext=system_u:object_r:file_
t tclass=dir

但是,在root用户下手动的运行
/usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/www.aaaaa.com.cn.pid &
却是一切正常,mysql可以正常启动起来,但是把这个命令放到 /etc/init.d/mysql脚本里,就是不能成功。


对这个问题百思不得其解,在google上多次搜索,终于在http://www.linuxquestions.org中发现高人解答,原来是rhel4中的selinux惹的祸!!

解决方式: setsebool -P mysqld_disable_trans=1
看来该抽点时间学习学习selinux了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值