为什么要开启数据库的日志
当多个程序都在使用数据库的时候。我们的数据库有时候竟然还会挂掉。想找原因?发现没日志可查。各个程序自己的日志又不能找到关键原因。所以要开启数据库的日志系统。
控制日志大小
要开日志前提是要知道怎么控制日志的大小。这是一般日志都要面临的第一个问题,否则不知道哪天把文件系统撑爆,相同蛋碎。
expire_logs_day=3:日志保存天数。超过三天的日志将自己主动删除
怎样知道MySQL有没有开日志?
运行以下的语句查看:
show variables like 'log_%';
开启日志的方法
改动数据库配置
为OFF则未开启,假设要开启能够在Mysql根文件夹下的 my.ini文件中面加入以下的配置信息(注意要加入到[mysqld]里面
log-error="d:/log/mysql/mysql_log_err.txt" log="d:/log/mysql/mysql_log.txt" #log-bin="d:/log/mysql/mysql_log_bin" log-slow-queries="d:/log/mysql/mysql_log_slow.txt"
说明:
log:开启查询日志。这个会记录Sql查询的每个动作及明细。很消耗数据库的IO,仅仅有在调试的时候短时间开启, 平时是不建议开启的。
log-error:错误日志
log-bin:二进制日志
log-slow-queries:慢查询日志,记录那些查询时间超过ong_query_time定义的秒数的查询语句才会记录到此变量指定的日志文件里。
long_query_time=5:中的5表示查询超过五秒才记录到log-slow-queries指定的日志中.
expire_logs_day=3:日志保存天数。超过三天的日志将自己主动删除
重新启动Mysql服务
查看日志服务是否开启
能够看到日志服务以启动
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2FsbXJlYXNvbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >
查看日志文件
能够看到生成的日志文件
查看日志
能够看到你刚才对数据库的操作都在日志文件里有记录
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2FsbXJlYXNvbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >
注意
- 路径不要有空格
- 反斜杠最好用Linux以下的路径写法
- 不要的用#号写在一行開始表示凝视
设置日志的大小
你一定不希望日志实时打印。把你的文件系统搞挂掉
Linux下日志的配置參考:http://www.blogjava.net/dongbule/archive/2010/09/04/331050.html点击打开链接