17.1.1 How to Set Up Replication

17.1.1 How to Set Up Replication

17.1.1.1 Setting the Replication Master Configuration
17.1.1.2 Setting the Replication Slave Configuration
17.1.1.3 Creating a User for Replication
17.1.1.4 Obtaining the Replication Master Binary Log Coordinates
17.1.1.5 Creating a Data Snapshot Using mysqldump
17.1.1.6 Creating a Data Snapshot Using Raw Data Files
17.1.1.7 Setting Up Replication with New Master and Slaves
17.1.1.8 Setting Up Replication with Existing Data
17.1.1.9 Introducing Additional Slaves to an Existing Replication Environment
17.1.1.10 Setting the Master Configuration on the Slave


本节介绍如何设置MySQL server的复制, 有很多方法来设置复制,

准确的方法是使用依赖你如何设置复制,以及是否已经在主数据库中有数据


有一些通用的任务,是常见的对于所有的复制步骤;


1.在master 上,你必须配置启用binary logging和配置一个唯一的server id.


你可能需要server重启




2. 在每个slave 你需要连接到master, 你必须配置一个唯一的 serverid.

这个需要server 重启

3.可选的, 创建一个单独的用户用于所有的slaves来使用在和master身份认证当读取binary log 用于复制。


4. 在创建一个数据库快照前或者启动复制过程,你应该记录在master上binary log的位置,

你需要这个信息当配置slave ,这样slave 知道 哪里开始执行binlog 的events


5.如果你已经master上有数据了,需要使用同步到你的slave.


你需要创建一个数据快照。有不同方法来创建数据库快照,

依赖数据库的大小和文件的位置。创建一个快照使用mysqldump 或者通过拷贝文件目录


6.配置slave设置用于连接到master,比如host name,登录凭证和binary log 文件和位置。


在配置基本选项后,选择你的方案:


1.设置复制用于一个新鲜的 master和slave的安装,没有包含数据。


2.设置一个新的Master 使用存在的数据

3.添加复制节点到一个存在的复制环境



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


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


如果这些都没有做,一个server 重启是需要的


Binary logging 必须是启用的在master上,因为binary log 是复制改变从master到它的slaves的基础。

如果binary loggging 不是启用使用log-bin选项,复制是不可能的


每个server 在一个复制group 必须配置一个唯一的server id,这个ID 是用于确定 单个servers 在group里,


必须是整数在1到(232)-1


配置Binary log 和server id 选项,关闭Mysql server 和编辑你的My.cnf或者my.ini文件。


在配置文件的[mysqld] 章节,增加log-bin 和server-id选项, 如果那些选项已经存在,但被注释掉了,

取消选项改变它们,根据你的需求。

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



在做出改变后,重启server


注意:

如果 你省略了server-id(或者显示的设置为默认值0),master 拒绝任何slave的连接


注意:

 对于最大可能的持久性和一致性在一个复制步骤使用InnoDB,

你应该使用innodb_flush_log_at_trx_commit=1 and sync_binlog=1 in the master my.cnf file.



确保 skip-networking  选项是吧u启用的在你的复制master,如果networking被禁用,

slave 不能和master交流和复制失败

原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199541.html