• mysql主从复制(windows下)


        简单搭建mysql主从服务器(双向复制),仅供学习之用。

        1.下载mysql-advanced-5.6.16-winx64.zip

            下载完成后解压,重命名成mysql,分别放入两台服务器(看第二点集群说明)下D盘根目录下,即:D:mysqlin
           
        2.主从服务器说明
       
            服务器A:192.168.121.132(Master/Slave)
           
            服务器B:192.168.121.169(Master/Slave)
           
        3.创建配置文件
            A服务器:
           
            [mysqld]

            log_bin        

            basedir               = d:/mysql
            datadir               = d:/mysql/data
            port                = 3306
            server_id               = 1
            character-set-server  = utf8

            sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

            [mysqld_safe]
           
            log-error=d:/mysql/log/mysqld.log
            pid-file=d:/mysql/run/mysqld/mysqld.pid
           
            B服务器:
           
            [mysqld]

            log_bin        

            basedir               = d:/mysql
            datadir               = d:/mysql/data
            port                = 3306
            server_id               = 2
            character-set-server  = utf8

            sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

            [mysqld_safe]
           
            log-error=d:/mysql/log/mysqld.log
            pid-file=d:/mysql/run/mysqld/mysqld.pid
           
        4.安装mysql(A服务器和B服务器)
       
            在A服务器上启动cmd命令行,进入目录d:mysqlin
            运行命令:mysqld -install mysql(安装)
            运行命令:net start mysql(启动服务)
           
            B服务器与A服务器操作一致。
           
        5.为两台服务器分别添加一个用于主从同步的用户:
           
            A服务器:
           
            执行命令:D:mysqlinmysql -h localhost -u root -p (密码为空)
            执行命令:create user pig@'%' identified by 'root';
            执行命令:grant replication slave on *.* to pig@'%' identified by 'root';
            执行命令:grant all privileges on *.* to pig@'%' identified by 'root';
            执行命令:flush privileges;
           
            B服务器:
           
            启动CMD命令,进入D:mysqlin目录
            执行命令:D:mysqlinmysql -h localhost -u root -p (密码为空)
            执行命令:create user pig@'%' identified by 'root';
            执行命令:grant replication slave on *.* to pig@'%' identified by 'root';
            执行命令:grant all privileges on *.* to pig@'%' identified by 'root';
            执行命令:flush privileges;
                     
        6.启动主从同步
       
            A服务器:
           
            启动CMD命令,进入D:mysqlin目录
            执行命令:D:mysqlinmysql -h 192.168.121.132 -u pig -p root
            执行命令:change master to master_host='192.168.121.169',
                                       master_user='pig',
                                       master_password='root';
            执行命令:start slave;
           
            到此为止B主——>A从的的模式已经搭建成功。
           
            执行命令:show slave status G(查看从机的情况)
           
            B服务器:
                     
            启动CMD命令,进入D:mysqlin目录
            执行命令:D:mysqlinmysql -h 192.168.121.132 -u pig -p root
            执行命令:change master to master_host='192.168.121.132',
                                       master_user='pig',
                                       master_password='root';
            执行命令:start slave;
           
            到此为止A主——>B从的的模式已经搭建成功。
           
            执行命令:show slave status G(查看从机的情况)
            执行命令:show master status G(查看主机的情况)
           
        7.测试
       
            A服务器上创建数据库,可以去B上查看是否同步成功。
            B服务器上创建数据库,可以去A上查看是否同步成功。
           
            说明:需要实时查看从机情况(show slave status G),一旦出现异常,单向复制服务就会中断,不会跳过。
           
        8.错误说明
       
            错误一:主从server_id一致
            执行命令:show variables like 'server_id'; 查看server_id
            执行命令:set global server_id=100;修改server_id
           
            错误二:主从uuids一致,这是由于两个数据库复制造成。
            修改文件:d:mysqldataauto.cnf 用十六进制的值随便改一位就成了,确保主从不一致就行。

  • 相关阅读:
    奇 arch/i386/kernel/head.o(.text+0x3e): undefined reference to `stack_start'
    惊爆:当Python代码遇到zip解压炸弹,未做防护的你后悔莫及!
    肝了1个月,做了10个Python可视化动图,有需要的自己拿
    抖音超火的九宫格视频是如何生成的,Python 告诉你答案
    找出文件夹中的相同文件,并移动到指定文件夹中
    8行Python代码绘制疫情地图
    怎么将python项目打包成exe程序?
    利用Pycharm + Django搭建一个简单Python Web项目
    转行Python会经历的几个学习阶段!未来有哪些就业方向?
    一个python脚本就可以B站查找弹幕发送者!
  • 原文地址:https://www.cnblogs.com/half-two-feet/p/4586485.html
Copyright © 2020-2023  润新知