全新环境配置Replication:表示主从数据库服务均为全新,这种场景下的配置方案最为简单和灵活
现有环境配置Replication:表示主数据库服务已有数据,这种情景下的配置就需要考虑多种因素
为现有环境配置Replication复制,可以细分为:
创建一台Slave:当前已有Master节点,需要配置Slave节点,以创建Replication复制环境
增加一台Slave:当前已有M-S复制环境,需要再增加Slave节点,以增强系统的整体负载能力
在具体配置Slave节点时,可以细分为:
脱机方式创建:操作过程中,MySQL服务可以停机
联机方式创建:操作过程中,MySQL服务不能中断运行
1.Master端启用二进制日志,指定唯一的server_id
2.Slave端配置唯一的server_id
3.创建复制专用账户
(system@localhost) [(none)]> grant replication slave on *.* to 'rep1'@'ip' identified by 'rep1';
4.记录Master端日志信息并创建镜像
需要确定当前Master数据库服务是否仍处与读写状态
获取当前Master数据库的日志文件名和位置
创建一份完整的数据备份,备份创建过程中,Master不能再有写操作,或者要有相应措施确保,从获取到Master日志信息,到数据备份完成,这期间的操作不会在Slave端被重复应用
mysql>flush tables with read lock;
mysql>show master status;
然后通过复制数据文件,用mysqldump命令、xtrabackup命令,创建一份数据库完整备份
mysql>unlock tables;
5.配置Slave端的连接
(system@localhost) [(none)]> change master to
-> master_host='192.168.1.201',
-> master_port=3306,
-> master_user='rep1',
-> master_password='rep1',
-> master_log_file='mysql-bin.000007',
-> master_log_pos=120;
不管是mysqldump还是xtrabackup,均有专用的配置Slave节点连接Master节点的参数,一定要注意,以免重复执行造成不必要的错误