建议#1:使用分发大师
分发主服务器是一个mysql从服务器,启用了log-bin,启用了log-slave-updates,仅包含BLACKHOLE Storage Engine的表.您可以将replicate-do-db应用于分发主服务器,并在仅包含的分发主服务器上创建二进制日志您想要binlog的数据库架构.通过这种方式,您可以减少分发主机的传出binlog的大小.
您可以按如下方式设置分发主文件:
> mysqldump您的数据库使用–no-data选项生成仅模式转储.
>将仅架构转储加载到分发主机.
>将Distribution Master中的每个表转换为BLACKHOLE存储引擎.
>使用实际数据从主服务器设置到分发主服务器的复制.
>将replicate-do-db选项添加到Distribution Master的/etc/my.cnf.
对于步骤2和3,您还可以编辑仅架构转储,并使用ENGINE = BLACKHOLE替换ENGINE = MyISAM和ENGINE = InnoDB,然后将编辑后的仅架构转储加载到分发主机中.
仅在步骤3中,如果要在分发主机中编写所有MyISAM和InnoDB表到BLACKHOLE的转换脚本,请运行以下查询并将其输出到文本文件:
mysql -h... -u... -p... -A --skip-column-names -e"SELECT CONCAT('ALTER TABLE ',table_schema,'.',table_name', ENGINE=BLACKHOLE;') BlackholeConversion FROM information_schema.tables WHERE table_schema NOT IN ('information_schema','mysql