`
youyu4
  • 浏览: 426516 次
社区版块
存档分类
最新评论

MySQL日志

 
阅读更多

MySQL日志

 

有多少种日志

 

错误日志:记录出错信息,也记录一些警告信息或者正确的信息

慢查询日志:设置一个阈值,将运行时间超过该值的所有SQL语句都记录到慢查询的日志文件中

二进制日志:记录对数据库执行更改的所有操作

查询日志:记录所有对数据库请求的信息,不论这些请求是否得到了正确的执行

中继日志:

 

 

错误日志

 

在默认情况下,系统记录错误日志的功能是关闭的,错误信息被输出到标准错误输出。需要在启动的时候开启 log-error选项

 

如果没有指定文件名 默认hostname.err,默认路径为datadir目录

 

指定日志路径两种方法

编辑my.cnf     写入 log-error=[path]

通过命令参数错误日志  mysqld_safe --user=mysql --log-error=[path] &

 

 

慢查询日志

 

默认情况下,慢查询日志是被关闭的

 

---指定初始化参数,开启慢查询

slow_query_log = 1   0是关闭慢查询,1是打开

slow_query_log_file =  /var/lib/mysql/log-slow-query.log    ---指定慢查询日志的名称,如果你没有指定慢查询日志的名称,默认会在数据文件目录下创建 host_name-slow.log慢查询日志

long_query_time 的值被设置为0-10之间,默认值是10.

 

 

查询日志

 

也正因为mysql服务器需要不断地记录日志,开启General log会产生不小的系统开销。 因此,Mysql默认是把General log关闭的。格式为 {Time ,Id ,Command,Argument }, general  query log写入日志是在客户端执行命令,并且释放锁之前,写入日志

 

设置general log的日志文件路径:set global general_log_file='/tmp/general.log';

开启general log: set global general_log=on;    ---不需要服务器的重启

 

关闭general log: set global general_log=off;

 

 

 二进制日志

 

默认也是关闭的,打开二进制日志会消耗一些系统性能,但是对于复制和系统恢复,所带来的好处大于减少的性能, 二进制日志即binlog日志 记录数据定义语言(DDL)和数据控制语言(DML) 但不包括数据查询语言。

 

二进制日志的功能

1、恢复(recovery)

2、复制(replication)

 

log-bin             = /var/log/mysql/mysql-bin.log    --指定二进制日志的名称

log_bin_index       = /var/log/mysql/mysql-bin.log.index     --二进制日志索引的名称

relay_log           = /var/log/mysql/mysql-bin.relay    ---中继日志的名称

relay_log_index     = /var/log/mysql/mysql-bin.relay.index    ---中级日志索引的名称

 

binlog-do-db=db_name  明确告诉mysql,需要对某个数据库记录binlog,如果有了binlog-do-db=db_name  显示指定,mysql会忽略正对其他书库执行query,而仅仅记录正对指定数据库执行的query

binlog-ignore-db=db_name  :显示的指定忽略某个数据库的binlog记录。

 

 

中继日志

中继日志也是二进制日志,用来给slave 库恢复

 

 

总结

 

1. 减少IO资源对于数据库来说比较重要,所以,默认情况下应该只开启错误日志。

2. 如果需要实现备份和复制,应至少打开二进制日志

3. 为了性能优化,找到慢查询,可以打开慢查询日志

4. 查询日志一般不打开,IO负担比较大

5. 要关注一下存储引擎自己的日志

 

参考:

http://www.cnblogs.com/zengkefu/p/5716190.html

http://blog.csdn.net/wll_1017/article/details/44979539

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics