一、首先进入/etc目录下,打开my.cnf文件,查看log-bin后边的值:
log-bin=mysql-bin
如果是以上设置,表示mysql的binlog是打开的,并且使用了默认路径。
二、查看日志文件
进入mysql,执行:show master logs;
+------------------+------------+
| Log_name | File_size |
+------------------+------------+
| mysql-bin.000001 | 177 |
| mysql-bin.000002 | 479 |
| mysql-bin.000003 | 2975 |
注:以上就是日志文件的名字等信息。
三、查看默认路径:
进入mysql,输入:show variables like 'log_%';
结果:
| Variable_name | Value |
+----------------------------------------+----------------------------------------+
| log_bin | ON |
| log_bin_basename | /usr/local/mysql/data/mysql-bin |
| log_bin_index | /usr/local/mysql/data/mysql-bin.index
注:可以看出,我们的log文件是存储在/usr/local/mysql/data下的
四、进入到/usr/local/mysql/目录下,使用ls -all查看权限,可以看到data是只有mysql可以访问的,这里修改data文件夹的权限。
sudo chmod 777 data (查看完之后,再改回来)
五、进入data文件夹,ls -all查看所有文件:
发现mysql-bin.000001等文件,只有mysql有权限,再次修改权限。
sudo chmod 777 mysql-bin.000001
六、查看日志文件
执行命令:mysqlbinlog --no-defaults mysql-bin.000001,即可查看对应的日志文件。
注:如果不加--no-defaults,
会提示错误:
mysqlbinlog: [ERROR] unknown variable 'default-character-set=utf8',
应该是字符集的问题。
总结,不建议使用该方法直接查看mac中mysql的日志文件,因为修改了很多文件的权限,可能会引起不必要的问题,尤其是安全方面。建议修改/etc/my.cnf中的:
log-bin=日志的路径,
这样做更安全稳妥一些。