windows下mysql主从部署

**最好使用同一版本的Mysql

一、修改主服务器的数据库配置文件(bin/my.ini);在 [mysqld] 标签的最下面,添加如下代码:

        log-bin=mysql-bin
        binlog_format=mixed
        server-id=1
        read-only=0
        binlog-do-db=test
        binlog-ignore-db=mysql
        auto-increment-increment=2
        auto-increment-offset=1

配置项解释:
log-bin:开启操作日志,主从服务器同步需要通过日志;
binlog_format:数据会存到binlog日志中,同步需要设置;
read-only:数据库读写状态,1只读、0读写;
binlog-do-db:同步的数据库;
binlog-ignore-db:不同步的数据库;
auto-increment-increment:主键自增量;
auto-increment-offset:主键起始值;

注:如果启动失败,可能是配置项重复配置(如server-id等在上面可能配置过了,注释即可);主从服务器server-id不能相同,auto-increment-increment相同,auto-increment-offset不同,auto-increment-offset大于auto-increment-increment无效;

二、保存退出,重启MySQL主服务器。

三、主服务器创建一个连接账号

在mysql中运行两个语句:
mysql> create user 'user01'@'%' identified by '123456';
mysql> grant replication slave on *.* to 'user01'@'%' identified by '123456';

注:@后面的’%’表示客户端没有ip地址的限制,如果填为ip地址,将限制指定ip连接,by后面是密码

四、查看主服务器的 master 状态:

mysql> show master status;

记下File、Position

五、从服务器配置文件,在 [mysqld] 标签的最下面,添加如下代码:

    log-bin=mysql-bin
    binlog_format=mixed
    server-id=2
    replicate-do-db=test 
    replicate-ignore-db=mysql
    log-slave-updates=ON
    auto-increment-increment=2
    auto-increment-offset=2

配置项解释:
replicate-do-db:需要复制的数据库名;replicate-ignore-db不需要赋值的数据库名;log-slave-updates:开启后从库的binlog日志才能同步记录主库的操作日志;

注:注意server-id是否已配置过;

六、从服务器连接主服务器

    mysql> CHANGE MASTER TO 
           MASTER_HOST='192.***.***.***', 
           MASTER_USER='user01', 
           MASTER_PASSWORD='123456', 
           MASTER_LOG_FILE='mysql-bin.000004', 
           MASTER_LOG_POS=7145;

注:MASTER_HOST: 主服务器ip;MASTER_LOG_FILE:查看主服务器master时记下的File;ASTER_LOG_POS:查看主服务器master时记下的Position

七、重启mysql

八、开启slave线程:

    mysql> start slave;
    查看slave状态:
    mysql> show slave status \G;

Slave_IO_Running: Yes
Slave_SQL_Running: Yes
若都为yes,此时主从部署已成功,可去主服务器增删数据查看从服务器是否变更。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值