【发布时间】:2014-04-30 11:53:22
【问题描述】:
我开始将 mysql 5.6 用于 innodb_memcache 插件,在我配置主从复制之前一切正常。
用主从配置它时,有两件事让我感到困惑。
注意下面是我在 my.cnf 中为 memcache 启用的行
daemon_memcached_w_batch_size=25
daemon_memcached_option='-v -m 1048'
当我不在 my.cnf 中使用
innodb_api_enable_binlog=1时 通过 memcache 提示插入/更新(telnet localhost 11211) innodb_memcache 表不复制,但保存在表中(通过 memcache 提示/sql 提示访问)。 当我从 sql 提示符执行此操作时,一切正常,数据被复制。 不知道mysql如何复制数据而不将其保存在二进制日志中。当我在 my.cnf 中启用
innodb_api_enable_binlog=1从 sql / memcache 提示插入记录全部复制到从服务器,但问题是当我使用 memcache 提示更新记录时,它会抛出以下错误。 外部主机关闭连接 并且数据不保存在表中。
现在我不知道该怎么做,因为我计划在生产中使用 mysql 5.6 但由于这个问题我无法做到这一点。
【问题讨论】:
-
请详细描述您的问题。你在哪台服务器上激活了内存缓存?两个都?您将
innodb_api_enable_binlog放入了哪些服务器my.cnf?您尝试通过 memcache 查询或更新哪个服务器?请编辑您的原始帖子以包含更多详细信息。 -
嗨,在主从配置上,我在主服务器上启用了 memcache 插件,对于 innodb_api_enable_binlog 显然它已在 master my.cnf 上启用,对于 memcache / 查询显然我正在使用主服务器。希望你能得到所有的信息。
-
即使我做了 daemon_memcached_w_batch_size=1 ,我仍然面临同样的问题
-
你看过this site吗?它说您应该将
-vvv(不仅仅是-v)添加到参数中,然后应该查看MySQL错误文件。也许这提供了额外的信息。 -
另外:您使用的是最新的 5.6 次要版本吗?
标签: mysql