zoukankan      html  css  js  c++  java
  • 基于mysql-8.0.16-winx64的主从搭建(Windows10系统)

    1、主服务器的my.ini文件内容
    [mysqld]
    # 主库和从库需要不一致
    server-id=1
    log-bin=mysql-bin
    # 同步的数据库
    binlog-do-db=master-slave
    # 不需要同步的数据库
    binlog-ignore-db=mysql
    # 设置3366端口
    port=3366
    # 设置mysql的安装目录
    basedir=E:DevelopsMySQLmysql-8.0.16-winx64-master
    # 设置mysql数据库的数据的存放目录
    datadir=E:DevelopsMySQLmysql-8.0.16-winx64-masterdata
    # 允许最大连接数
    max_connections=200
    # 允许连接失败的次数。
    max_connect_errors=10
    # 服务端使用的字符集默认为UTF8
    character-set-server=UTF8
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    # 默认使用“mysql_native_password”插件认证
    #mysql_native_password
    default_authentication_plugin=mysql_native_password

    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=UTF8

    [client]
    # 设置mysql客户端连接服务端时默认使用的端口
    port=3366
    default-character-set=UTF8

    2、安装mysql master服务器并注册为Windows服务
    初始化mysql:mysqld --defaults-file=E:DevelopsMySQLmysql-8.0.16-winx64-mastermy.ini --initialize --console
    安装mysql服务:mysqld --install MySQL3366-master --defaults-file="E:DevelopsMySQLmysql-8.0.16-winx64-mastermy.ini"
    注意修改下注册表:找到 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMySQL3366-master,修改ImagePath参数
    启动服务:net start MySQL3366-master
    root账户登录mysql:mysql -u root -p --protocol=tcp --host=localhost --port=3366
    修改密码:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
    开放权限:flush privileges;

    3、从服务器的my.ini文件内容
    [mysqld]
    # 主库和从库需要不一致
    server-id=2
    log-bin=mysql-bin
    # 同步的数据库
    binlog-do-db=master-slave
    # 不需要同步的数据库
    binlog-ignore-db=mysql
    # 设置3367端口
    port=3367
    # 设置mysql的安装目录
    basedir=E:DevelopsMySQLmysql-8.0.16-winx64-slave
    # 设置mysql数据库的数据的存放目录
    datadir=E:DevelopsMySQLmysql-8.0.16-winx64-slavedata
    # 允许最大连接数
    max_connections=200
    # 允许连接失败的次数。
    max_connect_errors=10
    # 服务端使用的字符集默认为UTF8
    character-set-server=UTF8
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    # 默认使用“mysql_native_password”插件认证
    #mysql_native_password
    default_authentication_plugin=mysql_native_password

    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=UTF8

    [client]
    # 设置mysql客户端连接服务端时默认使用的端口
    port=3367
    default-character-set=UTF8

    4、安装mysql slave服务器并注册为Windows服务
    初始化mysql:mysqld --defaults-file=E:DevelopsMySQLmysql-8.0.16-winx64-slavemy.ini --initialize --console
    安装mysql服务:mysqld --install MySQL3367-slave --defaults-file="E:DevelopsMySQLmysql-8.0.16-winx64-slavemy.ini"
    注意修改下注册表:找到 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMySQL3367-slave,修改ImagePath参数,更正MySQL3367-slave服务相关路径
    启动服务:net start MySQL3367-slave
    root账户登录mysql:mysql -u root -p --protocol=tcp --host=localhost --port=3367
    修改密码:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
    开放权限:flush privileges;

    5、主从配置
    在主服务器上创建复制用户:create user slave@'%' identified by 'slave';
    修改刚刚创建的用户的密码:ALTER USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY 'slave';
    给刚刚创建的用户授权:grant all privileges on *.* to slave@'%' with grant option;
    刷新权限使之生效:flush privileges;

    查看当前服务器的server-id:show variables like 'server_id';

    查看主服务器状态:show master status;

    停止slave:stop slave;
    创建主从关系:change master to master_host='localhost',master_port=3366,master_user='slave',master_password='slave',master_log_file='mysql-bin.000002',master_log_pos=1314;
    开启slave:start slave;

    查看从服务器状态:show slave statusG;

    6、测试

    在主服务器建库建表,从服务器会自动同步。

  • 相关阅读:
    swift2.2当中的inout参数的使用
    Swift的7大误区
    Swift 设计指南之 编程规范
    我为什么用 SQLite 和 FMDB 而不用 Core Data
    ios学习笔记——代理设计模式
    ios学习笔记——UIImagePickerController
    ios学习笔记——保存图片到相册
    KVC中setValuesForKeysWithDictionary: (转载)
    ios学习笔记——GCD简介
    ios学习笔记——操作队列NSOperation的基本操作
  • 原文地址:https://www.cnblogs.com/qubo520/p/11753142.html
Copyright © 2011-2022 走看看