MySQL入门详解(三)---mysql如何进行主从配置

本文详细介绍了如何在两台服务器上配置MySQL主从同步,包括服务器的基本要求、防火墙设置、用户权限、主服务器与从服务器的配置修改、同步进程的启动与检查等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 基本要求

    • 两台服务器(windows,linux,mac)

    • 双方mysql版本需一致,如不一致,只要主节点低于从节点

    • 两台服务器防火墙关闭

    • 双方数据库所用的用户,要具有远程访问的权限

  2. 主服务器配置

    • 修改主服务器的MySQL配置文件,window(my.ini),linux(my.cnf)

    #mysql唯一id
    server-id = 1
    #二进制日志文件,此项为必填项,否则不能同步数据;
    log-bin = "mysql-bin"
    #指定二进制错误文件
    log-error="mysql-error"
    #需要同步的数据库,如果需要同步多个数据库;
    binlog-do-db = demo
    #binlog-do-db = slaveDB1
    #binlog-do-db = slaveDB2
    #不需要同步的数据库
    binlog-ignore-db = mysql

     

    • 授权给从数据库服务器

    GRANT REPLICATION SLAVE ON *.* to 'root'@'111.111.111.111' identified by '123456';
    flush privileges;

     

    • mysql8.0版本授权

    CREATE USER 'root'@'111.111.111.111' IDENTIFIED WITH
    mysql_native_password BY '123456';
    GRANT REPLICATION SLAVE ON *.* TO 'root'@'222.222.222.222';

     

    • 重启主服务器

    $ service mysqld restart
    • 查看主服务器BIN日志的信息(执行完之后记录下这两个值,然后在配置完从服务器之前不要对主服务器进行任何操作,因为每次操作数据库时这两个值会发生改变)

    $ show master status

     

  3. 从服务器配置

    • 修改从服务器的MySQL配置文件,window(my.ini),linux(my.cnf),配置server-id 的值,并确保这个ID没有被别的MySQL服务所使用

    server-id=2    #默认是1改成2
    log-bin="mysql-bin"    #这行本身有
    replicate-do-db=demo    #需要同步的数据库
    replicate-ignore-db=mysql    #不同步系统数据库
    read_only     #设只读权限
    • 启动mysql服务

    • 执行同步sql语句

    change master to
    master_host='111.111.111.111',
    master_user='root',
    master_password='123456',
    master_log_file='mysql-bin.000001',
    master_log_pos=154;
     
    • MASTER_HOST : 设置要连接的主服务器的ip地址

    • MASTER_USER : 设置要连接的主服务器的用户名

    • MASTER_PASSWORD : 设置要连接的主服务器的密码

    • MASTER_LOG_FILE : 设置要连接的主服务器的bin日志的日志名称

    • MASTER_LOG_POS : 设置要连接的主服务器的bin日志的记录位置。

    • 启动Slave同步进程

    $ start slave;
  4. 主从同步检查

    • 查看状态

    $ show slave status\G

    其中Slave_IO_Running 与 Slave_SQL_Running 的值都必须为YES,才表明状态正常

    • 如果之前从服务器启动过需要先停止,再运行

    $ stop slave 

转载于:https://www.cnblogs.com/songyifan427/p/10103455.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值