如果mysql开启了binlog,那么很快磁盘就会被mysql的binlog写满了,如果不对master mysql server作相应的设置的话。那么我们如何设置呢?
- 查看MySQL Server是否开启了binlog,查看my.cnf文件,如果看到如下的变量被付值了,那么MySQL Server 就开启了binlog,我们就要到数据库里查看变量,
binlog=binlog_do_db=
- 通过查看processes,我们可以判断slave MySQL Server的hostname,我们可以看到Master MySQL在做“Binlog Dump”的工作。
SHOW PROCESSLIST\G
- 到Salve MySQL Server上,看看是哪个binlog在做复制,一般都是最新的那个binlog。可以看到是哪个binlog文件。
SHOW SLAVE STATUS\G
- 查看binlog文件,我们可以看到,总共有多少个binlog文件,以及他们的大小(bytes)。
SHOW {MASTER|BINARY} LOGS ;
- 我们用PURGE命令删除多余的binlog文件,例如:
PURGE MASTER LOGS TO “binlog filename" ;
- 最后,设置expire_logs_days变量,这个变量是Dymatic variable,也就是说,不需要MySQL重启,就可以应用这个变量,我们设置为5天。这是一个GLOBAL变量,可以查看以下手册。
SET GLOBAL expire_logs_days=5 ;
- 最后,我们要把这个变量和值写道my.cnf里,“expire_logs_days=5"。
完成了,对最基本的主从复制log的操作。