本节描述如何设置一个MySQL服务器使用基于二进制日志文件位置复制。有许多不同的方法来设置复制、使用和准确的方法取决于你如何设置复制,和你是否已经在源数据库中的数据。
有一些通用的任务共同设置:
源,必须启用二进制日志和配置一个独特的服务器ID。这可能需要重新启动服务器。看到部分16.1.2.1”,设置复制源配置”。
在每一个副本,你想连接到源,您必须配置一个独特的服务器ID。这可能需要重新启动服务器。看到部分16.1.2.5.1”,设置复制配置”。
可选地,创建一个单独的用户对你的副本时使用在身份验证源读取的二进制日志复制。看到部分16.1.2.2,“复制创建一个用户”。
之前创建一个数据快照或启动复制过程,在源你应该记录当前位置在二进制日志。你需要这些信息配置副本,副本时知道在二进制日志来开始执行事件。看到部分16.1.2.3,“获得复制源的二进制日志坐标”。
如果你已经有数据来源,想用它来同步副本,您需要创建一个数据快照复制数据的副本。您正在使用的存储引擎影响你如何创建快照。当你使用
MyISAM
,你必须停止处理语句在源获得读锁上,然后获取当前的二进制日志坐标和转储数据,允许源继续执行语句之前。如果你不停止执行的语句,数据转储和源的状态信息不匹配,导致不一致的或损坏的数据库副本。关于复制的更多信息MyISAM
源,看部分16.1.2.3,“获得复制源的二进制日志坐标”。如果您使用的是InnoDB
,你不需要读锁和事务是足够长的时间来转移数据的快照就足够了。有关更多信息,请参见14.20节,“InnoDB和MySQL复制”。配置设置连接到源的复制品,如主机名、登录凭证,二进制日志文件的名字和位置。看到部分16.1.2.5.2”,设置源配置副本”。
在安装过程中需要一定的步骤超级
特权。如果你没有这个特权,它可能不能实现复制。
配置后的基本选项,选择你的场景:
为重新安装设置复制源和不包含数据的副本,明白了部分16.1.2.5.3”,设置复制一个新的源和副本之间”。
设置复制一个新的源使用数据从现有的MySQL服务器,看到的部分16.1.2.5.4”,设置复制与现有数据”。
将副本添加到现有的复制环境,明白了部分16.1.2.6,“添加副本复制拓扑”。
复制管理MySQL服务器之前,阅读整个一章,尝试所有声明中提到13.4.1部分,“控制复制源服务器的SQL语句”,13.4.2部分,“控制副本服务器的SQL语句”。也熟悉描述的复制启动选项部分16.1.6,“复制和二进制日志记录选项和变量”。