通过选择命令创建表的Mysql集群复制问题
Posted
技术标签:
【中文标题】通过选择命令创建表的Mysql集群复制问题【英文标题】:Mysql Cluster replication issue on create table by select command 【发布时间】:2016-10-11 00:13:54 【问题描述】:我在 mysql 集群上的从属复制有问题。
当我创建表时选择为CREATE TABLE tmp1 AS SELCT * FROM tmp2
可以创建表,但是sql没有记录在binlog中,也没有复制到slave。
但是如果我按定义创建表或类似:CREATE TABLE tmp1 LIKE tmp2" OR "CREATE TABLE
tmp1(
idint(11) NOT NULL )
,则sql命令可以记录在binlog
中,并将复制到slave。
这个有设置吗?
我的 mysql 集群版本是 5.6.31-ndb-7.4.12-cluster-gpl-log,我的默认引擎是 ndbcluster。
【问题讨论】:
这可能是您遇到的dev.mysql.com/doc/refman/5.7/en/… 【参考方案1】:如果你想复制你的表,你必须添加 ENGINE=ndbcluster
像这样:CREATE TABLE tmp1 AS SELCT * FROM tmp2 ENGINE=ndbcluster;
对于现有表,您可以使用:ALTER TABLE tbl_name ENGINE=NDBCLUSTER;
更多信息在这里:https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-install-example-data.html
祝你好运!
【讨论】:
以上是关于通过选择命令创建表的Mysql集群复制问题的主要内容,如果未能解决你的问题,请参考以下文章