17.1.1.1 Setting the Replication Master Configuration 设置复制的master 配置:

17.1.1.1 Setting the Replication Master Configuration  设置复制的master 配置:


在一个复制master,你必须启用binary logging和创建一个唯一的server ID.


如果这个没有提前做,server 重启是需要的。


Binary logging 是需要启用的在master上,因为binary log 是复制的基础 从master上的改变到slaves.


如果binary log 是没有启用使用 log-bin option,  复制是不可能的


每个server 在复制组必须配置一个唯一的server ID.

这个ID 是用于确定唯一的servers 在组内,配置一个整数


配置 binary log and server ID 选项,关闭MySQL server 编辑my.cnf或者 my.ini file.

在[mysqld]章节,增加log-bin and server-id options.


如果那些选项已经存在,但是注释掉了,取消注释选项根据你的需要改变它们。

比如, 让binary logging 使用一个log file mysql-bin的名字前缀,配置一个server ID 为1


zabbix:/root# cat /etc/my.cnf | grep log-bin
log-bin=/data01/mysqllog/binlog/mysql-bin
zabbix:/root# ls -ltr /data01/mysqllog/binlog/mysql-bin
ls: cannot access /data01/mysqllog/binlog/mysql-bin: No such file or directory
zabbix:/root# ls -ltr /data01/mysqllog/binlog/mysql-bin*
-rw-rw----. 1 mysql mysql   3351694 Oct 27 09:53 /data01/mysqllog/binlog/mysql-bin.000001
-rw-rw----  1 mysql mysql       436 Oct 27 09:57 /data01/mysqllog/binlog/mysql-bin.000002
-rw-rw----  1 mysql mysql       143 Oct 27 10:00 /data01/mysqllog/binlog/mysql-bin.000003
-rw-rw----  1 mysql mysql       143 Oct 27 10:02 /data01/mysqllog/binlog/mysql-bin.000004
-rw-rw----  1 mysql mysql    514616 Oct 27 11:30 /data01/mysqllog/binlog/mysql-bin.000005
-rw-rw----  1 mysql mysql     26752 Oct 27 11:36 /data01/mysqllog/binlog/mysql-bin.000006
-rw-rw----  1 mysql mysql     42293 Oct 27 11:44 /data01/mysqllog/binlog/mysql-bin.000007
-rw-rw----  1 mysql mysql   1401536 Oct 27 13:42 /data01/mysqllog/binlog/mysql-bin.000008
-rw-rw----  1 mysql mysql 536871235 Nov  2 05:30 /data01/mysqllog/binlog/mysql-bin.000009
-rw-rw----  1 mysql mysql 536871228 Nov  4 05:52 /data01/mysqllog/binlog/mysql-bin.000010
-rw-rw----  1 mysql mysql 536871010 Nov  6 05:40 /data01/mysqllog/binlog/mysql-bin.000011
-rw-rw----  1 mysql mysql 536871041 Nov  8 05:54 /data01/mysqllog/binlog/mysql-bin.000012
-rw-rw----  1 mysql mysql 536871189 Nov 10 06:19 /data01/mysqllog/binlog/mysql-bin.000013
-rw-rw----  1 mysql mysql 536871366 Nov 12 01:37 /data01/mysqllog/binlog/mysql-bin.000014
-rw-rw----  1 mysql mysql 536871289 Nov 13 12:26 /data01/mysqllog/binlog/mysql-bin.000015
-rw-rw----  1 mysql mysql       656 Nov 13 12:26 /data01/mysqllog/binlog/mysql-bin.index
-rw-rw----  1 mysql mysql 347374418 Nov 14 11:13 /data01/mysqllog/binlog/mysql-bin.000016


[mysqld]
log-bin=mysql-bin
server-id=1


在做了这些修改后,重启服务器:


注意:

如果你省略server-id(或者设置为默认值0),master 拒绝任何slaves的链接

注意:

为了最大的可用的耐久性和一致性 在一个复制设置使用InnoDB,你需要使用innodb_flush_log_at_trx_commit=1 and sync_binlog=1 在master的my.cnf文件

注意:


请确保skip-networking 选项是不被启用的在你的复制master上,
mysql> show variables like '%skip_networking%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| skip_networking | OFF   |
+-----------------+-------+
1 row in set (0.00 sec)

原文地址:https://www.cnblogs.com/hzcya1995/p/13350050.html