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

网站开发,php,.net,App接口

深圳网站建设 Linux运维

 
 
 

日志

 
 

mysql清除日志  

2009-07-22 16:26:30|  分类: 个人日记 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
1、清理mysql遗留的日志文件
首先进入mysql数据库
mysql -u root -p
input password。
mysql>purge master logs to 'pscenter-in.264';
这样就可以直接将日志清理完毕,只保留最后一个即可。
清理完毕日志后建议将数据库备份一下。
 
2、将查询结果垂直显示
mysql > select * from module \G;
这样就可以垂直显示数据了。
 
3、将mysql日志进行循环
登录mysql的服务器
mysql > flush logs;
mysql > reset master;
这样就可以将日志文件归整到从001开始了。
 
4、快速备份数据量比较大的库
mysqldump -uroot -pwoaini123984 --opt --quick pscenter(库名) > /var/www/dbback/.pscenter20071228.sql
这样能快速导出数据。达到备份数据库。

###########################################################1、查看日志
mysql>SHOW MASTER LOGS;
此命令显示目前二进制日志的数目。
然后
mysql> PURGE MASTER LOGS TO ‘binary-log.xxx’;
除了命令中给出的日志之后的外,其他的二进制日志全部删除。具体如下:
PURGE MASTER LOGSPURGE { MASTER|BINARY } LOGS TO ‘log_name’
PURGE { MASTER|BINARY } LOGS BEFORE ‘date’BEFORE变量的date自变量可以为'YYYY-MM-DD hh:mm:ss'格式。MASTER和BINARY是同义词。
  例如: 
  PURGE MASTER LOGS TO 'mysql-bin.010'; 
  PURGE MASTER LOGS BEFORE '2008-07-12 13:00:00';
2、清理步骤:
  1. 在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。 
  2. 使用SHOW MASTER LOGS获得主服务器上的一系列日志。 
  3. 在所有的从属服务器中判定最早的日志。这个是目标日志。如果所有的从属服务器是更新的,这是清单上的最后一个日志。 
  4. 制作您将要删除的所有日志的备份。(这个步骤是自选的,但是建议采用。) 
  5. 清理所有的日志,但是不包括目标日志我
3、恢复
使用mysqlbinlog命令恢复日志
 # mysqlbinlog -d test /root/mysql/mysql-bin.000001|mysql -uroot -ppassword

附录
1、关于mysqlbinlog在mysql 5.0上的使用方法,可以参考:官方资料
2、如果不知道log-bin存放的文件位置,可以使用下面的命令查看:
 mysql -uroot -ppassword -e 'SHOW BINLOG EVENTS \G'
3、当只是需要恢复部分记录的时候,你可以使用时间点或位置点来定位,例如:
 mysqlbinlog --start-date="2005-04-20 9:01:00" --stop-date="2005-04-20 10:00:01" /var/log/mysql/bin.123456|mysql -uroot -ppassword[code]
意思是恢复4月20日早上9点到10点这一段时间的数据。
[code]mysqlbinlog --start-position="368301" --stop-position="368312"/var/log/mysql/bin.123456| mysql -uroot -pmypwd意思是重做368301到368312位置点之间的操作。(位置点可以就是用mysqlbinlog看到的at xxx节点)
 mysqlbinlog --start-date="2005-04-20 9:55:00" --stop-date="2005-04-20 10:05:00" 
     /var/log/mysql/bin.123456 > /tmp/mysql_restore.sql同样的,如果我们只是想查看某段时间的操作,直接把它导到一个文件即可。
4、mysql不会自动清除日志,可以使用它自带的mysql-log-rotate 脚本或手动编写脚本清除旧日志。

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

历史上的今天

评论

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

页脚

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