• MySql集群之读写分离配置


    一、主从复制原理

    二、环境准备

    192.168.140.131 主库

    192.168.140.132 从库

    三、主库配置

    1、修改配置文件 /etc/my.cnf

    #mysql服务ID,保证整个集群环境中唯一,取值范围:1-232-1,默认为1
    server-id=1
    
    #是否只读,1代表只读,0代表读写
    read-only=0
    
    #忽略的数据,指不需要同步的数据库
    #binlog-ignore-db=mysql
    
    #指定同步的数据库
    #binlog-do-db=db01

    2、重启mysql服务

    systemctl restart mysqld

    3、登录mysql,创建远程连接的账号,并授予主从复制权限

    #创建itcast用户,并设置密码,该用户可在任意主机连接该mysql服务
    create user 'itcast'@'%' identified by 'Xiaohemiao_123';
    
    #为'itcast'@'%'用户分配主从复制权限
    GRANT REPLICATION SLAVE ON *.* TO 'itcast'@'%';

    4、通过指令,查看二进制日志坐标

    show master status;

    字段含义说明:

    file:从哪个日志文件开始推送日志文件

    position:从哪个位置开始推送日志

    binlog_ignore_db:指定不需要同步的数据库

    四、从库配置

     1、修改配置文件 /etc/my.cnf

    #mysql服务ID,保证整个集群环境中唯一,取值范围:1-232-1,默认为1
    server-id=2
    
    #是否只读,1代表只读,0代表读写
    read-only=1

    2、重启mysql服务

    systemctl restart mysqld

    3、登录mysql ,设置主库配置

    CHANGE REPLICATION SOURCE TO SOURCE_HOST='',SOURCE_USER='',SOURCE_PASSWORD='',SOURCE_LOG_FILE='',SOURCE_LOG_POS=;
    
    上述是8.0.23中的语法,如果mysql是8.0.23之前的版本,执行如下sql
    CHANGE MASTER TO MASTER_HOST='',MASTER_USER='',MASTER_PASSWORD='',MASTER_LOG_FILE='',MASTER_LOG_POS=;
    
    #示例:
    CHANGE MASTER TO MASTER_HOST='192.168.140.131',MASTER_USER='itcast',MASTER_PASSWORD='Xiaohemiao_123',MASTER_LOG_FILE='mysql-bin.000010',MASTER_LOG_POS=766;

    4、开启同步操作

    start replica; #8.0.22版本之后
    start slave; #8.0.22之前版本
    # 停止slave
    stop slave;

    5、查看主从同步状态

    show replica status\G; #8.0.22版本之后
    show slave status\G; #8.0.22之前版本 

    -- 负责把主库bin日志(Master_Log)内容投递到从库的中继日志上(Relay_Log)
    Slave_IO_Running: Yes
     
    -- 负责把中继日志上的语句在从库上执行一遍
    Slave_SQL_Running: Yes
     
    -- Yes:表示正常, No:表示异常

    五、测试并验证

    首先我们在主库192.168.140.131上创建数据库TestDB并创建表t_user,此时我们在从库192.168.140.132上也会看到同样的数据库和表名,如图:

     此时,,,,,,,,,,,,,,,,,,读写分离大功告成,,,,,,,,,,,,,,,,,,,,,,,

  • 相关阅读:
    自定义函数
    内置函数
    炸裂函数explode
    -bash:ls:command not found,执行命令总是报找不到
    函数
    C#的lock用法
    获取客户端Ip地址方法
    Grunt基础
    常用Sql
    HandleBars
  • 原文地址:https://www.cnblogs.com/sportsky/p/16413538.html
Copyright © 2020-2023  润新知