mysql日志
一:错误日志
开启错误日志
vim /etc/my.cnf
增加:
log-error=/user/zzp/app/5629/3311.err
查看错误日志:
more xiaoxiao.err
不指定错误日志的filename 则默认为 localhost.err
二:二进制日志
1.日志的读取 ]# mysqlbinlog mysql-bin.*
2.日志的删除
1>查看删除前的日志 mysql > system ls -ltr mysql-bin*;
2>删除日志 mysql > reset master; (日志全部清空 从000001开始编号)
#### 3>指定日志删除
mysql > purge master logs to ‘mysql-bin.000005‘;
(删除000005 之前的所有日志 不包括000005)
mysql > purge master logs before ‘2016-01-01 10:11:00‘;
(删除某个时间之前的所有日志)
4>在配置文件中设置日志过期天数
[mysqld]
expire_logs_day=2
(规定2天后前面的日志自动删除)
!!! ] # flush logs ====>这条命令可以触发日志文件自动更新
mysqlbinlog -vv --base64-output=decode-rows mysql-bin.000009
(解决binlog日志出现乱码!!!)
4>规定数据库的是否更新记录到二进制日志
vim my.cnf
增加:
binlog-do-db=db_name 1 (指定数据库更新记录到二进制日志)
binlog-do-db=db_name 2
binlog-ignore-db=db_name (指定数据库not更新记录到二进制日志)
三:查询日志
1.查询日志和慢查询日志都可以选择保存在文件或者表中
在配置文件中设置:
log-output=TABLE,FILE,NONE
2.启动查询日志:
general_log=0/1 0是开启 1是关闭
general_log_file=file_name 不指定路径则默认host_name.log
3.查看查询日志: more xiaoxiao.log
四:慢查询日志:
1> 开启慢查询日志:slow_query_log=0/1 0是开启 1是关闭
2> 规定慢查询日志的时间:long_query_time=1
3> 规定慢查询日志记录的位置: log-slow-queries=file_name
4> 查看慢查询日志: more xiaoxiao-slow.log
Time=2.79s (5s) 中(5s)是指这类型的语句执行总共花费的时间