mysql主从(windows)

mysql主从(windows)mysql windows主从 准备环境 数据库版本 主数据库版本 5.7.21 从数据库版本 5.7.25 只要数据库的前两个版本号一致,那么就可以进行主从同步。 主数据库开启binlog 日志 …

mysql主从(windows)

mysql windows主从

  • 准备环境

    • 数据库版本

      • 主数据库版本 5.7.21
      • 从数据库版本 5.7.25

        只要数据库的前两个版本号一致,那么就可以进行主从同步。

    • 主数据库开启binlog 日志

      #mysql binlog 日志
      log_bin = C:/Development/mysql/mysql-5.7.25-winx64/log/mysql-bin
      #服务器标识id
      server-id = 001
      expire_logs_days = 7
      max_binlog_size = 100m
      binlog_format=MIXED
      

      代码100分

      • 重启服务器,使修改的my.ini 生效

      • 使用下面的语句进行验证是否开启log_bin

        代码100分SHOW VARIABLES LIKE "%log_bin%"
        
    • 创建从库的登陆用户

      GRANT replication SLAVE  ON  *.* TO repl@"%" IDENTIFIED by "123456"
      
      • 使用新建用户进行登陆,进行验证
    • 主机数据备份到从库

      代码100分C:Developmentmysqlmysql-5.7.25-winx64in> mysqldump.exe  -h localhost   -u root -p123456 --databases  test_copy | mysql -h 192.168.5.90 -u root -p123456
      
      • 在从库进行登陆查看,是否备份过来
  • 修改从服务配置

    • 给从库增加服务标识(MySQL 5.7.3 及以后版本,如果没有设置server-id, 那么设置binlog后无法开启MySQL服务)
      server-id = 002
      
    • 重启mysql服务
    • 登陆从库的mysql,执行如下命令
      stop  slave;
      
      • stop slave,就是分别关闭了I/O线程(stop slave IO_THREAD)和SQL线程(stop slave SQL_THREAD),I/O线程会维护master.info信息的更新,SQL线程会维护relay-log.info信息的更新
  • 主从进行网络链接

    • 执行下面的命令也需要登陆从库的mysql,并且在mysql 的从库执行

    • 从库现在开始绑定主库ip进行binlog日志的读取

      change master to master_user="repl",master_password="123456",master_host="192.168.5.155",master_port=3306,master_log_file="mysql-bin.000003",master_log_pos=154; 
      
      
    • 如果不知道,自己需要同步的是那个bin_log 日志文件,请使用下面的命令,在主库执行查询

      SHOW MASTER STATUS
      
    • 启动从库mysql 线程维护信息

      start  slave;
      
    • 从库查看是否绑定

      SHOW SLAVE STATUS
      
    • 参数说明

      #唯一的id,不能和master相同 
      server-id=106
      #主库的ip
      master-host=192.168.5.155
      #主库创建同步的用户名
      master-user=repl
      #主库创建同步账户的密码 
      master-password=123456
      # 主库的端口
      master-port=3306
      #从库读取主库的归档日志
      master_log_file="mysql-bin.000003"
      # 当重新建立主从连接时,如果连接建立失败,间隔多久后重试。单位为秒,默认设置为60秒,同步延迟调优参数。
      master-connect-retry=60
      #要同步的mstest数据库,要同步多个数据库,就多加几个replicate-db-db=数据库名 
      replicate-do-db=test_copy
      #忽略的数据库
      replicate-ignore-db=mysql
      # show master status命令查到的:postion位置(开始同步的日志偏移量)
      master_log_pos=154
      
  • 操作数据,查看是否同步

    • 主库执行创建库表,从库进行查看是否同步
      CREATE TABLE `test`  (
      `id` int(0) NOT NULL,
      PRIMARY KEY (`id`)
      );
      
  • 取消mysql 主从

    # 停止从库
    stop slave
    # 重新设置从库
    reset slave;
    # 重设所有从库
    reset slave all;
    # 查看从库链接状态信息
    show slave status
    

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/7033.html

(0)
上一篇 2023-03-28
下一篇 2023-03-28

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注