我已经在cent OS RHEL5.5中重新安装了mysql服务器,我收到以下错误
touch: cannot touch `/var/log/mysqld.log': Permission denied
chown: changing ownership of `/var/log/mysqld.log': Operation not permitted
chmod: changing permissions of `/var/log/mysqld.log': Operation not permitted
MySQL Daemon failed to start.
Starting mysqld: [FAILED]
我已经检查了日志文件的权限,它具有作为 mysql 用户的正确权限
-rw-r----- 1 mysql mysql 5931 Mar 9 04:36 mysqld.log
请让我知道这方面的问题以及如何解决。
谢谢
好的。我已经解决了这个问题,
$ /usr/libexec/mysqld --skip-grant &
[1]5388
InnoDB:错误:日志文件./ib_logfile0 的大小不同 0 50331648 字节
InnoDB:比.cnf文件中指定的0 5242880字节! 150312 10:03:28 [注意] /usr/libexec/mysqld:准备连接。 版本:'5.0.95'套接字:'/var/lib/mysql/mysql.sock'端口:3306 源代码分发
$ rm -rf /var/lib/mysql/ib_logfile0
$ rm -rf /var/lib/mysql/ib_logfile1
$ ls -l /var/lib/mysql
我已经删除了日志文件并重新启动了mysql服务器。
谢谢
解决方法是:
$ sudo touch /var/log/mysqld.log
$ sudo chown mysql:mysql /var/log/mysqld.log
$ sudo chcon system_u:object_r:mysqld_log_t:s0 /var/log/mysqld.log
就我而言,这是在降级 AWS EC2 实例后发生的。错误如下:
$ service mysqld start
touch: cannot touch ‘/var/log/mysqld.log’: Permission denied
chown: changing ownership of ‘/var/log/mysqld.log’: Operation not permitted
chmod: changing permissions of ‘/var/log/mysqld.log’: Operation not permitted
chown: changing ownership of ‘/var/lib/mysql’: Operation not permitted
chmod: changing permissions of ‘/var/lib/mysql’: Operation not permitted
MySQL Daemon failed to start.
Starting mysqld: [FAILED]
事实证明,问题是新的降级虚拟机没有足够的内存,因为 MySQL 正在尝试保留内存。
在
etc/my.cnf
上更新为InnoDB保留的值解决了问题:
innodb_buffer_pool_size=4G
无需对文件系统权限进行其他更改。
就我而言,ubuntu apparmor 有问题。
解决方案:
编辑 mysqld 配置文件(通常在 /etc/apparmor.d/usr.sbin.mysqld 中)并确保:
/var/log/mysqld.log rw,
systemctl reload apparmor
touch /var/log/mysqld.log
chown mysql:mysql /var/log/mysqld.log
chmod 0644 /var/log/mysqld.log
systemctl restart mysql
selinux 正在强制执行,禁用它并且它起作用了。