一、mysql日志记录主要用于日常操作和信息的文件,在Mysql当中有4种日志 (1)、二进制日志:以二进制文件的形式记录数据库中,但是不记录查询语句 记录mysql变化,主从也通过二进制进行同步的。 输出文件名字:mysql-bin.000001 (2)、错误日志:记录用户登录以及记录查询的信息以及异常信息 slave.err (3)、慢查询日志:记录执行时间超过指定操作时间。那么就记录 cat slave-slow.log (4)、通用查询日志:用户查询日志以及其它的操作,包括MYSQL启动、关闭,更新、查询等等。 alvin-bin 二、日志分析 (1)二进制日志 启动二进制日志 编辑my.cnf配置文件 log-bin=mysql-bin (2)删除掉所有的二进制 reset master; (3)、删除某一个范围的二进制日志 purge master logs to ‘mylog_0000021‘ 代表从000001删除到0000021 (4)、根据创建时间来删除日志 purge master logs to ‘2013-5-14 16:00:00‘ 删除2013-5-14 16:00:00 以前的二进制日志 (5)、mysqlbinlog命令来进行数据恢复,利用日志恢复数据从小到大 mysqlbinlog mylog.000001 | mysql -uroot -pzy123 mysqlbinlog mylog.000002 | mysql -uroot -pzy123 mysqlbinlog mylog.000003 | mysql -uroot -pzy123 mysqlbinlog mylog.000004 | mysql -uroot -pzy123 (6)、暂停二进制功能 mysql->set sql_log_bin=0; 暂停 mysql->set sql_log_bin=1; 启动 三、错误日志分析 (1)错误日志默认是开启来的,一般错误日志成为:hostname.err hostname代表主机名字 开启错误日志,编辑my.cnf log-error=master.err (2)删除错误日志 mysqladmin -root -p flush-logs 系统会自动创建一个新的错误日志 通常情况下DBA不需要查看错误日志,但是在Mysql出现异常的时,DBA可以查询此日志来定位故障 四、通用查询日志 (1)默认情况下,功能日志是关闭的,通过my.cnf开启日志 log=acces.log 用户所有的操作都记录到通用查询日志当中 (2)删除通用查询日志 删除源文件,然后重新生成新的 rm acces.log && mysqladmin -uroot -p flush-logs 对源文件直接清空 echo > acces.log 五、慢查询日志 慢查询日志用来记录执行时间超过指定的时间时的查询语句 log-slow-queries=slow.log long_query_time=n n默认代表10秒,可以自行设置 删除清空慢查询日志 两种方法: 删除源文件,然后重新生成新的 rm slow.log && mysqladmin -uroot -p flush-logs 对源文件直接清空 echo > slow.log
原文:http://8448262.blog.51cto.com/8438262/1407230