免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1746 | 回复: 9
打印 上一主题 下一主题

关于mysql复制(replication)的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-28 16:12 |只看该作者 |倒序浏览
单位要搭一台备份的mysql用到了mysql的replication
要打开mysql的二进制日志的功能
我想知道mysql会定时清理这个日志吗?
我就怕这个日志会不会越来越大没法控制!
mysql会自动处理这个日志吗?
mysql的版本是:
mysql  Ver 14.12 Distrib 5.0.51b

论坛徽章:
0
2 [报告]
发表于 2009-05-28 20:43 |只看该作者
表瞎操心了,如果你不去配置它,它也会自动分割的

论坛徽章:
0
3 [报告]
发表于 2009-05-28 22:20 |只看该作者

回复 #2 bs 的帖子

你的意思是说不用管它就可以吗?

论坛徽章:
0
4 [报告]
发表于 2009-05-28 22:39 |只看该作者
mysql binary log size 的默认值是1G。
也就是说如果不对max_binlog_size不做指定,当binary log file 以1G的时候,会自动产生下一个log文件。

可以参考http://dev.mysql.com/doc/refman/5.0/en/binary-log.html

论坛徽章:
0
5 [报告]
发表于 2009-05-28 23:13 |只看该作者
如果不配置的情况日值会在1G的情况下产生别一个新的日值。但是MySQL不会清理这些日值,如果磁盘空间不是太大的情况或是日值产生的较快的情况,都需要及时把产生的日值人工进行归档处理掉。以免空间满了,造成数据库整个挂起。

论坛徽章:
0
6 [报告]
发表于 2009-05-30 18:00 |只看该作者
晕菜。。你不要去理他。自动分割的。。。时不时备份一次就删了

论坛徽章:
0
7 [报告]
发表于 2009-05-31 10:00 |只看该作者

回复 #5 Coolriver 的帖子

cdcol        mysql             mysql-bin.index  station1.pid
class        mysql-bin.000001  mysql.sock       station1-relay-bin.000016
dbsys        mysql-bin.000002  phpmyadmin       station1-relay-bin.index
dede         mysql-bin.000003  relay-log.info
master.info  mysql-bin.000004  station1.err
可我是日志为什么不是一个有好几个呢!
是不是有了最后一个mysql-bin.000004  前面那几个都没啥用了 就可以删了 是吗?
刚学mysql不太懂请多多指教!

论坛徽章:
0
8 [报告]
发表于 2009-05-31 11:52 |只看该作者

回复 #7 zhaobin81 的帖子

自己顶一下!

论坛徽章:
0
9 [报告]
发表于 2009-05-31 13:14 |只看该作者
我觉得可以从以下几个方面去考虑:

1、binlog 是干什么用的?

2、binlog 怎么生成?

3、什么时机删除 binlog 为最妥?

4、怎么删除?

首先:
1、binlog 是记录数据库的操作日志,基本是增、删、改的记录,可以通过配置决定记录所有数据库还是部分库或表。

2、每个 binlog 默认大小为 1G左右(说 1G 左右的原因是看最后一次记录的大小所决定)。当达到默认值时 mysqld 自动生成下一个,例如当 mysql-bin.0000001 达到 1G时,就会自动生成 mysql-bin.0000002,还有就是当 mysqld 重新启动时或使用 flush logs; 会自动生成下一个。

3、什么时机删除 binlog 为最妥?看 binlog 用于干什么。以楼主的应用来讲,只要 slave 已经完成同步,那么这个 binlog 就没有什么用了,可以删除了。

4、删除方法有几种:

  (1)直接删除 binlog 文件(删除当前 binlog 之前的)
  (2)通过 purge master logs to ...... 删除(一种可以通过文件名,一种可以通过时间)
  (3)设置 expire_logs_days 变量,expire_logs_days 值为 int, 单位是天,例如 expire_logs_days = 3,表示删除3 天之前的 binlog.

不推荐使用第 3 种方法,除非就保证 slave 确实已经完成了要删除 binlog 的复制。

工具就这么多,如何用取决于楼主的应用环境。

[ 本帖最后由 blackbox 于 2009-5-31 13:15 编辑 ]

论坛徽章:
0
10 [报告]
发表于 2009-05-31 13:21 |只看该作者

回复 #9 blackbox 的帖子

谢谢这位朋友说的很详细!
这下清楚多了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP