Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4732674
  • 博文数量: 930
  • 博客积分: 12070
  • 博客等级: 上将
  • 技术积分: 11448
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-15 16:57
文章分类

全部博文(930)

文章存档

2011年(60)

2010年(220)

2009年(371)

2008年(279)

分类: Mysql/postgreSQL

2011-01-26 14:14:22

  先看看mysql binlog到底占有了多少空间!!!
  -rw-rw---- 1 mysql users 1.1G 2011-01-20 00:50 mysql-bin.000294
  -rw-rw---- 1 mysql users 1.1G 2011-01-20 04:30 mysql-bin.000295
  -rw-rw---- 1 mysql users 1.1G 2011-01-20 08:20 mysql-bin.000296
  -rw-rw---- 1 mysql users 1.1G 2011-01-20 12:00 mysql-bin.000297
  -rw-rw---- 1 mysql users 1.1G 2011-01-20 15:30 mysql-bin.000298
  -rw-rw---- 1 mysql users 1.1G 2011-01-20 19:10 mysql-bin.000299
  -rw-rw---- 1 mysql users 1.1G 2011-01-20 22:50 mysql-bin.000300
  这么下去服务器肯定承受不了,那么如何删除一定时间之前的binlog呢...

  1.删除7天前的binlog
    mysql -uxx -pxx -e 'PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 7 DAY)'
    放在crontab里,每天跑一次就可以了
  2. 设置expire_logs_days
    在my.cnf的mysqld节点里设置
      expire_logs_days=7
    设置expire_logs_days需要注意没有产生flush的操作,不会触发expire-logs-days的行为。
  如果你的sql语句不是很多的话,可以尝试把max_binlog_size设置的稍小一点。

阅读(1594) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~