我运行一个高stream量的MySQL服务器 – 我发现我的binlog只有50MB,而MySQL又创build了一个新的。
我已经有max_binlog_size设置为1GB – 但由于某种原因,MySQL不会兑现它。 还有其他的设置,我应该知道吗?
我在MySQL 4.1.22,CentOS 5(从LiquidWebpipe理服务器)。
root@host2 [~]# mysqladmin variables | grep bin | binlog_cache_size | 32768 | | innodb_locks_unsafe_for_binlog | OFF | | log_bin | ON | | max_binlog_cache_size | 18446744073709551615 | | max_binlog_size | 1073741824 | | sync_binlog | 0 |
还有一种观察:基于“ls -al”输出,binlog的date在分钟部分几乎是相同的,也就是说,几乎总是在每小时的第41分钟转动。
这是奇怪的,因为我找不到任何可以做到这一点的cron脚本。 我问LiquidWeb系统pipe理员,他们说他们也没有控制这个。
那么,任何人的想法?
--- root@host2 [~]# ls -al /home/master_mysql/ total 1069004 drwxr-xr-x 3 mysql mysql 4096 Nov 15 23:41 ./ drwx--x--x 13 root root 4096 Nov 14 17:15 ../ -rw-rw---- 1 mysql mysql 122 Nov 14 19:42 mysql-bin.000001 -rw-rw---- 1 mysql mysql 27841530 Nov 14 21:41 mysql-bin.000002 -rw-rw---- 1 mysql mysql 7899803 Nov 14 21:55 mysql-bin.000003 -rw-rw---- 1 mysql mysql 79 Nov 14 21:56 mysql-bin.000004 -rw-rw---- 1 mysql mysql 16789873 Nov 14 22:41 mysql-bin.000005 -rw-rw---- 1 mysql mysql 33813877 Nov 14 23:41 mysql-bin.000006 -rw-rw---- 1 mysql mysql 48819373 Nov 15 00:41 mysql-bin.000007 -rw-rw---- 1 mysql mysql 41505054 Nov 15 01:41 mysql-bin.000008 -rw-rw---- 1 mysql mysql 44608575 Nov 15 02:41 mysql-bin.000009 -rw-rw---- 1 mysql mysql 40341521 Nov 15 03:41 mysql-bin.000010 -rw-rw---- 1 mysql mysql 33625553 Nov 15 04:41 mysql-bin.000011 -rw-rw---- 1 mysql mysql 28685183 Nov 15 05:41 mysql-bin.000012 -rw-rw---- 1 mysql mysql 28054132 Nov 15 06:41 mysql-bin.000013 -rw-rw---- 1 mysql mysql 31718242 Nov 15 07:41 mysql-bin.000014 -rw-rw---- 1 mysql mysql 34437340 Nov 15 08:41 mysql-bin.000015 -rw-rw---- 1 mysql mysql 39474942 Nov 15 09:41 mysql-bin.000016 -rw-rw---- 1 mysql mysql 43580287 Nov 15 10:41 mysql-bin.000017 -rw-rw---- 1 mysql mysql 51165432 Nov 15 11:41 mysql-bin.000018 -rw-rw---- 1 mysql mysql 48298102 Nov 15 12:41 mysql-bin.000019 -rw-rw---- 1 mysql mysql 44044967 Nov 15 13:35 mysql-bin.000020 -rw-rw---- 1 mysql mysql 53665390 Nov 15 14:41 mysql-bin.000021 -rw-rw---- 1 mysql mysql 46259278 Nov 15 15:41 mysql-bin.000022 -rw-rw---- 1 mysql mysql 44675487 Nov 15 16:41 mysql-bin.000023 -rw-rw---- 1 mysql mysql 41288305 Nov 15 17:41 mysql-bin.000024 -rw-rw---- 1 mysql mysql 45883369 Nov 15 18:41 mysql-bin.000025 -rw-rw---- 1 mysql mysql 40055136 Nov 15 19:41 mysql-bin.000026 -rw-rw---- 1 mysql mysql 39884190 Nov 15 20:41 mysql-bin.000027 -rw-rw---- 1 mysql mysql 43919061 Nov 15 21:41 mysql-bin.000028 -rw-rw---- 1 mysql mysql 45474412 Nov 15 22:41 mysql-bin.000029 -rw-rw---- 1 mysql mysql 43899660 Nov 15 23:41 mysql-bin.000030 -rw-rw---- 1 mysql mysql 3625113 Nov 15 23:45 mysql-bin.000031 -rw-rw---- 1 mysql mysql 1116 Nov 15 23:41 mysql-bin.index drwxr-xr-x 2 root root 4096 Nov 14 19:00 restore_point_20091114/ ---
谢谢!
考虑到这些大小远没有达到相同的程度,这并不是大小限制的问题,而且准确的时间是一个无用的东西 – MySQL会在它重新启动时轮换它的binlog,或者当你告诉它重新打开它的其他(系统)日志 – 通常是logrotate(或其他日志旋转工具)将作为其操作的一部分。 看看什么是旋转你的日志(如果LiquidWeb应该为你pipe理,恐怕…是非常害怕)。
我同意womble,max_binlog_size应该这样做,但它看起来像你正在为你刷新/旋转日志。 检查/ etc / crontab或者/ var / spool / cron里面的任何cron。 另外,也许设置您的my.cnf与sql_log_off = on(IM在5.1,但这应该为你工作),以获得更多的信息在你的mysqld.log,虽然很多可能只是垃圾看。 你有没有可能做到这一点的前端软件? 祝你好运。