1、mysql日志类型
错误日志查询日志
慢查询日志
二进制日志
2、日志文件位置
默认情况下,所有日志创建于mysqld数据目录中。通过刷新日志,你可以强制 mysqld来关闭和重新打开日志文件(或者在某些情况下切换到一个新的日志)。
当你执行一个FLUSH LOGS语句或执行mysqladmin flush -logs或mysqladmin refresh时,出现日志刷新
(1)错误日志文件位置
用--log-error[=file_name]选项来指定mysqld保存错误日志文件的位置。如果没有给定file_name值,mysqld使用错误日志名host_name.err 并在数据目录中写入日志文件。
如果你执行FLUSH LOGS,错误日志用-old重新命名后缀并且mysqld创建一个新的空日志文件。(如果未给出--log-error选项,则不会重新命名)。
如果不指定--log-error,或者使用--console选项,错误被写入标准错误输出stderr。通常标准输出为你的终端。
(2)通用查询日志位置
用--log[=file_name]或-l [file_name]选项启动它。如果没有给定file_name的值,默认名是host_name.log。
(3)慢速查询日志位置
用--log-slow-queries[=file_name]选项启动时,mysqld写一个包含所有执行时间超过long_query_time秒的SQL语句的日志文件.
如果没有给出file_name值,默认未主机名,后缀为-slow.log。如果给出了文件名,但不是绝对路径名,文件则写入数据目录。
(4)在配置文件中指定log的輸出位置
Linux:Linux 的配置文件为 my.cnf ,一般在 /etc 下。(Windows:Windows 的配置文件为 my.ini,一般在 MySQL 的安装目录下或者 c:\Windows 下。)
在配置文件中加入(linux环境)
# 在[mysqld] 中加入
#log
log-error=/usr/local/mysql/log/error.log
log=/usr/local/mysql/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql/log/slowquery.log
3、日志状态选项
(1)更新日志用--log-update[=file_name]选项启动,不推荐使用.
(2)是否启用了日志
mysql>show variables like 'log_%';
4、二进制日志
显示二進制日志数目mysql> show master logs;
看二进制日志文件用mysqlbinlog
shell>mysqlbinlog mail-bin.000001
或者shell>mysqlbinlog mail-bin.000001 | tail