2013-11-27 77 views
11

我正在NDB集群,我看到在MySQL API节点,有一个非常大的二进制日志表。降低MySQL的NDB的大小BINLOG

+---------------------------------------+--------+-------+-------+------------+---------+ 
| CONCAT(table_schema, '.', table_name) | rows | DATA | idx | total_size | idxfrac | 
+---------------------------------------+--------+-------+-------+------------+---------+ 
| mysql.ndb_binlog_index    | 83.10M | 3.78G | 2.13G | 5.91G  | 0.56 | 

有没有建议的方法来减少大小,而不会破坏任何东西?据我所知,这将限制点即时恢复的时间框架,但数据已经增长了手,我需要做一些清理。

+0

难道我的回答可以帮助您? – Shawn

回答

4

看起来这是可能的。我在这里没有看到任何东西:http://dev.mysql.com/doc/refman/5.5/en/mysql-cluster-replication-pitr.html,说你不能基于上一个时代。

一些额外的信息可以通过阅读这篇文章来获得:

http://www.mysqlab.net/knowledge/kb/detail/topic/backup/id/8309

的mysql.ndb_binlog_index是MyISAM表。如果你正在清理它, 确保你不删除,你仍然需要二进制日志条目。

+0

所以只是备份/转储和'TRUNCATE TABLE'应该做的工作... – Palec

+0

这是否保证其他操作不会失败?通过其他操作,我的意思是添加数据节点或API节点,和/或重新启动发生故障的数据节点和其他类似的操作。基本上任何想法是什么,“你仍然需要”意味着什么? –

+0

它看起来像最后一个时代应该足以包含有问题的节点。它看起来像你想保持二进制日志以及从那个时代开始,以便它们可以被重播。第二个来源解释了2节点情况下的步骤以供参考。 – Shawn