MySQL复制特性基本思路

全新环境配置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节点的参数,一定要注意,以免重复执行造成不必要的错误

猜你喜欢

转载自allenhu0320.iteye.com/blog/2186000
今日推荐