mysqld:File'/var/log/mysql/mysql bin.index';未找到(错误代码:13)
在尝试重新启动MySQL服务器后,我遇到了这个错误mysqld:File'/var/log/mysql/mysql bin.index';未找到(错误代码:13),mysql,mysqlbinlog,Mysql,Mysqlbinlog,在尝试重新启动MySQL服务器后,我遇到了这个错误 root@private:/# mysqld_safe 140618 03:56:53 mysqld_safe Can't log to error log and syslog at the same time. Remove all --log-error configuration options for --syslog to take effect. 140618 03:56:53 mysqld_safe Logging to '
root@private:/# mysqld_safe
140618 03:56:53 mysqld_safe Can't log to error log and syslog at the same time. Remove all --log-error configuration options for --syslog to take effect.
140618 03:56:53 mysqld_safe Logging to '/var/log/mysql/error.log'.
140618 03:56:53 mysqld_safe Starting mysqld daemon with databases from /mysql
140618 03:56:53 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
我遵循的方法(大多数在互联网上找到)是将/var/log/mysql的权限更改为mysql用户但它不起作用
drwxr-s--- 2 mysql mysql 4096 Jun 18 03:31 mysql/
内部:
root@private:/var/log# ll mysql
total 12
drwxr-s--- 2 mysql mysql 4096 Jun 18 03:31 ./
drwxr-xr-x 24 root root 4096 Jun 18 03:27 ../
-rw-r----- 1 mysql mysql 1989 Jun 18 03:34 error.log
-rwxrwxrwx 1 mysql mysql 0 Jun 18 03:13 mysql-bin.index*
我的数据路径:
drwxr-xr-x 3 mysql mysql 4096 Jun 18 03:27 mysql/
我甚至尝试重新安装MySQL,但错误并没有消失
请帮帮我
更新1:关于my.cnf-错误日志配置。我打开了常规日志和错误日志(到error.log)。但常规日志文件中没有任何内容。对于错误日志文件,没有比我上面复制的错误更多的东西了
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# As of 5.1 you can enable the log at runtime!
general_log_file = /var/log/mysql/mysql.log
general_log = 1
#
# Error log - should be very few entries.
#
log_error = /var/log/mysql/error.log
#
# Here you can see queries with especially long duration
#log_slow_queries = /var/log/mysql/mysql-slow.log
#long_query_time = 2
#log-queries-not-using-indexes
更新2:关于apparmor或selinux的问题,我只使用apparmor。我还试图附加:
/var/log/* rw
到
但它也不起作用
更新3:
我相信以下改变对我的案例起到了作用:
- 必须确保mysql帐户对您的mysql日志/数据目录具有足够的权限(rw)。从root或sudoer帐户切换到mysql用户,然后创建/编辑任何测试文件
- 不要删除或禁用apparmor并使用以下内容更新mysql配置文件(通常为usr.sbin.mysqld): /var/log/mysql-bin.index rw /mysql/*rw
- 重新加载mysql配置文件 apparmor_解析器-r/etc/apparmor.d/usr.sbin.mysqld
希望它能帮助任何一个在没有任何运气的情况下通过互联网并为更改权限和安装付费的人。在“my.cnf”文件中的复制配置需要提及 服务器id=1 log_bin=/var/log/mysql/mysql-bin.log 您可以创建自己的目录并授予权限。在/var/log中创建目录“mysql”/
chmod 777 mysql
这适用于配置文件(my.cnf)中的MySQL版本5.7。是否未注释错误日志和系统日志?是否启用了apparmor或selinux?如果您将日志文件放在非默认位置,这些文件可能会阻止对日志文件的访问。这个错误通常是一个像这样的骗局,抱怨它找不到文件,而文件显然就在那里。@BillKarwin:plz请检查我上面的更新。我有一个问题:我附加到mysqld文件的内容是关于日志路径还是关于数据路径?mysqld会自动关闭。请参阅最后一行的“mysqld…end”。此外,常规日志用于查询。如果您没有运行任何查询(并且在mysqld关闭时无法运行),则常规日志将为空。是吗?在任何情况下,我建议进行一项测试,关闭apparmor,然后尝试启动mysqld。
chmod 777 mysql