• MySql5.7主从配置


    环境
    Mysql 5.7、windows主[192.167.19]、windows从[192.168.1.18]
    linux同理

    一、主库配置
    1、打开主库my.ini,编辑配置如下内容:
    [mysql]
        # 设置mysql客户端默认字符集
        default-character-set=utf8 
        
    [mysqld]
        #设置3306端口
        port = 3306 
        # 设置mysql的安装目录
        basedir=D:\mysql5
        # 设置mysql数据库的数据的存放目录
        datadir=D:\mysql5\data
        # 允许最大连接数
        max_connections=1000
        # 服务端使用的字符集默认为UTF8
        character-set-server=utf8
        # 创建新表时将使用的默认存储引擎
        default-storage-engine=INNODB
        default-time_zone = '+8:00'
        
        #开启日志 
        log-bin = mysql-bin
        #设置服务id,主从不能一致  ,一般设置为ip最后一段
        server-id = 19 
        #设置需要同步的数据库 
        binlog-do-db=test_db 
        
        #屏蔽系统库同步 
        binlog-ignore-db=mysql 
        binlog-ignore-db=information_schema 
        binlog-ignore-db=performance_schema
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    2、主库bin目录,登录主库:
    C:\soft\mysql5\bin> mysql -u root -p
    
    • 1
    3、授权主从复制专用账号
    mysql> GRANT REPLICATION SLAVE ON *.* TO 'db_sync'@'%' IDENTIFIED BY 'db_sync'; 
    
    • 1
    4、刷新权限
    msyql> flush privileges;
    
    • 1
    5、查看主库信息,记录下文件名和点位
    msyql> show master status;
    
    • 1

    注意:记录一下file和Position

    二、从库配置
    1、打开从库my.ini,编辑配置如下内容:
    [mysql]
        # 设置mysql客户端默认字符集
        default-character-set=utf8 
        
    [mysqld]
        #设置3306端口
        port = 3306 
        # 设置mysql的安装目录
        basedir=D:\mysql5
        # 设置mysql数据库的数据的存放目录(该目录不一定在mysql安装目录下)
        datadir=D:\mysql5\data
        # 允许最大连接数
        max_connections=200
        # 服务端使用的字符集默认为UTF8`在这里插入代码片`
        character-set-server=utf8
        # 创建新表时将使用的默认存储引擎
        default-storage-engine=INNODB
        default-time_zone = '+8:00'
        
        #开启日志 
        log-bin = mysql-bin 
        #设置服务id,主从不能一样 ,一般设置为ip最后一段
        server-id = 18 
        #设置需要同步的数据库 
        replicate_wild_do_table=test_db.% 
        
        #屏蔽系统库同步 
        replicate_wild_ignore_table=mysql.% 
        replicate_wild_ignore_table=information_schema.% 
        replicate_wild_ignore_table=performance_schema.%
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    2、从库bin目录,登录:
    C:\soft\mysql5\bin> mysql -u root -p
    
    • 1
    3、根据主库信息,更改语句[file信息、Position信息]、执行。
    mysql> CHANGE MASTER TO MASTER_HOST='主库ip',MASTER_PORT=3306,MASTER_USER='db_sync', MASTER_PASSWORD='db_sync',MASTER_LOG_FILE='file信息',MASTER_LOG_POS=Position信息;
    
    • 1
    4、启动服务
    # 开启
    mysql> start slave
    # 停止
    mysql> stop slave
    # 重启
    mysql> reset slave
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    5、确认状态

    确认Slave_IO_Runing以及Slave_SQL_Runing两个状态位是否为“Yes”,如果不为 Yes,
    请检查error_log,然后排查相关异常。

    mysql>show slave status\G
    
    • 1

    提示: flush table with read lock; unlock tables;

  • 相关阅读:
    Cookie和Session
    vue解决Not allowed to load local resource
    WinRAR广告屏蔽办法
    Java对接(BSC)币安链 | BNB与BEP20的开发实践(二)BNB转账、BEP20转账、链上交易监控
    java版Spring Cloud之Spark 离线开发框架设计与实现
    分布式id解决方案
    Github每日精选(第48期):SQLite下的知识库memos
    多线程知识:三个线程如何交替打印ABC循环100次
    2022 音视频技术风向标
    PHP去除字符串前或后的字符或空格
  • 原文地址:https://blog.csdn.net/weixin_40816738/article/details/128024057