登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> 程序员学前班[不再更新,只读] >> 主题: mysql日志 log     [回主站]     [分站链接]
标题
mysql日志 log
clq
浏览(2) + 2010-02-01 13:48:00 发表 编辑

关键字:

mysql日志[zt]

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=       
查看日至:
1. 首先确认你日志是否启用了
mysql>show variables like 'log_bin';
如果启用了,即ON
那日志文件就在mysql的安装目录的data目录下
cat/tail 日志文件名

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

3. 查看从某一段时间到某一段时间的日志
mysqlbinlog --start-datetime='2008-01-19 00:00:00' --stop-datetime='2008-01-30 00:00:00'  /var/log/mysql/mysql-bin.000006 > mysqllog1.log

clq
2010-2-10 16:34:39 发表 编辑

在 my.ini 中加入
log-bin=D:/mysql51/logs/log

clq
2010-2-10 16:39:48 发表 编辑

以下 zt 供参考,没试过。
--------------------------------------------------
PURGE MASTER LOGS TO 'mysql-bin.000120';
即可删除120之前的bin log

所以另外还有个方法定期删除bin log
PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);
删除3天前的LOG文件.
--------------------------------------------------
删除MYSQl BIN-LOG 日志
1.查看档案

mysql> show binary logs;

+----------------+-----------+

| Log_name | File_size |

+----------------+-----------+

| ablelee.000001 | 150462942 |

| ablelee.000002 | 125 |

| ablelee.000003 | 106 |

+----------------+-----------+

2.删除bin-log(删除ablelee.000003之前的而没有包含ablelee.000003)

mysql> purge binary logs to 'ablelee.000003';

Query OK, 0 rows affected (0.16 sec)

3. 查询结果(现在只有一条记录了.)

mysql> show binlog events\G

*************************** 1. row ***************************

Log_name: ablelee.000003

Pos: 4

Event_type: Format_desc

Server_id: 1

End_log_pos: 106

Info: Server ver: 5.1.26-rc-log, Binlog ver: 4

1 row in set (0.01 sec)

(ablelee.000001和ablelee.000002已被删除)

mysql> show binary logs;

+----------------+-----------+

| Log_name | File_size |

+----------------+-----------+

| ablelee.000003 | 106 |

+----------------+-----------+

1 row in set (0.00 sec)



(删除的其它格式运用!)

  PURGE {MASTER | BINARY} LOGS TO 'log_name'
  PURGE {MASTER | BINARY} LOGS BEFORE 'date'
  用于删除列于在指定的日志或日期之前的日志索引中的所有二进制日志。这些日志也会从记录在日志索引文件中的清单中被删除,这样被给定的日志成为第一个。
  例如:
  PURGE MASTER LOGS TO 'mysql-bin.010';
  PURGE MASTER LOGS BEFORE '2008-06-22 13:00:00';
清除3天前的 binlog
PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);
  BEFORE变量的date自变量可以为'YYYY-MM-DD hh:mm:ss'格式。MASTER和BINARY是同义词。
  如果您有一个活性的从属服务器,该服务器当前正在读取您正在试图删除的日志之一,则本语句不会起作用,而是会失败,并伴随一个错误。不过,如果从属服 务器是休止的,并且您碰巧清理了其想要读取的日志之一,则从属服务器启动后不能复制。当从属服务器正在复制时,本语句可以安全运行。您不需要停止它们。
  要清理日志,需按照以下步骤:
  1. 在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
  2. 使用SHOW MASTER LOGS获得主服务器上的一系列日志。
  3. 在所有的从属服务器中判定最早的日志。这个是目标日志。如果所有的从属服务器是更新的,这是清单上的最后一个日志。

  4. 制作您将要删除的所有日志的备份。(这个步骤是自选的,但是建议采用。)

  5. 清理所有的日志,但是不包括目标日志我。



总数:2 页次:1/1 首页 尾页  
总数:2 页次:1/1 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1