mysql数据库日志查看的几个方法

数据库日志查看的几个方法

网站流量越来越大,带宽和cpu应该是够的,也许内存不足(目前是1G)

但数据库经常出现无响应、假死或者提示mysql未启动,刷新一下又好了,问题就出在了数据库上,先来研究下数据库的日志才能观察出到底是什么地方处理问题,文章复制过来放着,慢慢研究。


mysql有以下几种日志:  
  错误日志:  -log-err  
  查询日志:  -log  
  慢查询日志:    -log-slow-queries  
  更新日志:    -log-update  
  二进制日志:  -log-bin  
    
  在mysql的安装目录下,打开my.ini,在后面加上上面的参数,保存后重启mysql服务就行了。  
  例如:  
  #Enter  a  name  for  the  binary  log.  Otherwise  a  default  name  will  be  used.  
  #log-bin=  
  #Enter  a  name  for  the  query  log  file.  Otherwise  a  default  name  will  be  used.  
  #log=  
  #Enter  a  name  for  the  error  log  file.  Otherwise  a  default  name  will  be  used.  
  log-error=  
  #Enter  a  name  for  the  update  log  file.  Otherwise  a  default  name  will  be  used.  
  #log-update=  
    
  上面只开启了错误日志,要开其他的日志就把前面的“#”去掉。


是否启用了日志 
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代码 
# 在[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  
# 在[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代码 
# 在[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  --对所有执行语句进行记录

版权所有:《太阳花工作室》 => 《mysql数据库日志查看的几个方法
本文地址:http://bg.artuion.com/win_lin_mac/98.html
除非注明,文章均为 《太阳花工作室》 原创,欢迎转载!转载请注明本文地址,谢谢。