注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

唐老鸭的博客

太多的不如意让我们学会了抱怨,却忘记怎么去努力改变现状.

 
 
 

日志

 
 
 
 

【引用】windows和linux下开启mysql日志  

2011-08-03 14:23:54|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
mysql有以下几种日志:
错误日志: -log-err
查询日志: -log
慢查询日志: -log-slow-queries
更新日志: -log-update
二进制日志: -log-bin

默认情况下,所有日志创建于mysqld数据目录中。通过刷新日志,你可以强制 mysqld来关闭和重新打开日志文件(或者在某些情况下切换到一个新的日志)。当你执行一个FLUSH LOGS语句或执行mysqladmin flush-logsmysqladmin refresh时,出现日志刷新
1. 错误日志
--log-error[=file_name]选项来指定mysqld保存错误日志文件的位置。如果没有给定file_name值,mysqld使用错误日志名host_name.err 并在数据目录中写入日志文件。如果你执行FLUSH LOGS,错误日志用-old重新命名后缀并且mysqld创建一个新的空日志文件。(如果未给出--log-error选项,则不会重新命名)

如果不指定--log-error,或者(Windows)如果你使用--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。如果给出了文件名,但不是绝对路径名,文件则写入数据目录。

3. 更新日志                                                              

用--log-update[=file_name]选项启动,不推荐使用.



是否启用了日志
mysql>show variables like 'log_%';

怎样知道当前的日志
mysql> show master status;

顯示二進制日志數目
mysql> show master logs;

看二进制日志文件用mysqlbinlog
shell>mysqlbinlog mail-bin.000001
或者shell>mysqlbinlog mail-bin.000001 | tail

在配置文件中指定log的輸出位置.
Windows:Windows 的配置文件为 my.ini,一般在 MySQL 的安装目录下或者 c:\Windows 下。
Linux:Linux 的配置文件为 my.cnf ,一般在 /etc 下。

在linux下:
Sql代码
  1. # 在[mysqld] 中輸入
  2. #log
  3. log-error=/usr/local/mysql/log/error.log
  4. log=/usr/local/mysql/log/mysql.log
  5. long_query_time=2
  6. log-slow-queries= /usr/local/mysql/log/slowquery.log
# 在[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


windows下:
Sql代码
  1. # 在[mysqld] 中輸入
  2. #log
  3. log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log"
  4. log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log"
  5. long_query_time=2
  6. log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"
# 在[mysqld] 中輸入 #log log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log" log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log" long_query_time=2 log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"


开启慢查询
long_query_time =2 --是指执行超过多久的sql会被log下来,这里是2秒
log-slow-queries= /usr/local/mysql/log/slowquery.log --将查询返回较慢的语句进行记录

log-queries-not-using-indexes = nouseindex.log --就是字面意思,log下来没有使用索引的query

log=mylog.log --对所有执行语句进行记录

windows下开启mysql日志:

在[mysql]下加入这些(基本上等于加在最后面):

log-error=

#Enter a name for the query log file. Otherwise a default name will be used.

#注:(写成txt文件editplus可以及时重载,不过有时要放在C盘下editplus才可以及时重载)

log= c:/mysql_query.log.txt

#Enter a name for the slow query log file. Otherwise a default name will be used.

log-slow-queries=

#Enter a name for the update log file. Otherwise a default name will be used.

log-update=

#Enter a name for the binary log. Otherwise a default name will be used.

log-bin=


  评论这张
 
阅读(107)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018