mysql flush logs时出现ERROR 1105

来源:互联网 发布:札幌住宿 知乎 编辑:程序博客网 时间:2024/06/06 07:34
mysql 5.7.11 on Oracle Linux 5.8
查看eror log所在目录为
mysql> show variables like '%log_error%';
+---------------------+---------------------+
| Variable_name       | Value               |
+---------------------+---------------------+
| binlog_error_action | ABORT_SERVER        |
| log_error           | /var/log/mysqld.log |
| log_error_verbosity | 3                   |
+---------------------+---------------------+
现在想rotate日志,如下动作:
[root@sdb5-11g log]# mv mysqld.log mysqld.log.old
完成后再执行flush logs,但是出现以下错误:


  • mysql> FLUSH LOGS;  
  • ERROR 1105 (HY000): Unknown error
  • 由于日志所在目录只有root有权限新建文件,从mysql客户端执行flush logs其实是以mysql这个账号去执行的,所以会权限不足。
    [root@sdb5-11g log]# ls -ld
    drwxr-xr-x 15 root root 4096 May 27 08:39 .
    解决方法:
    在该目录下新增一个文件mysqld.log
    vi mysqld.log
    修改权限:
    chown mysql:mysql mysqld.log
    chmod o-rmysqld.log
    最后权限如下:
    [root@sdb5-11g log]# ls -l mysqld.log
    -rw-r----- 1 mysql mysql 8284 May 27 09:41 mysqld.log



  • mysql> FLUSH LOGS;  
  • ERROR 1105 (HY000): Unknown error
  • 0 0