zoukankan      html  css  js  c++  java
  • Mysql 主从配置

    主:192.168.0.42

    1、myini配置

    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8 
    [mysqld]
    #设置3306端口
    port = 3306 
    server_id=1
    log_bin=mysqlmaster-bin
    log_bin-index=mysqlmaster-bin.index
    # 需要备份数据,多个写多行,不写全部都备份
    binlog-do-db =userdb
    #不需要备份的数据库,多个写多行
    #binlog-ignore-db = mysql 
    # 设置mysql的安装目录
    basedir=E:/NetCore进阶高级/window端常用工具/mysql-8.0.11-winx64
    # 设置mysql数据库的数据的存放目录
    datadir=E:/NetCore进阶高级/window端常用工具/mysql-8.0.11-winx64/data
    # 允许最大连接数
    max_connections=200
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    My.ini

    2、设置同步账户及权限分配

    1)GRANT FILE ON *.* TO 'testuser'@'192.168.0.73' IDENTIFIED BY '123456';
    2)GRANT REPLICATION SLAVE ON *.* TO 'testuser'@'192.168.0.73' IDENTIFIED BY'123456';

    3)查看下主服务器,原理其实就是同步数据库日志文件,红框部分在设置从服务器需要使用

    
    

    从:192.168.0.73

    1、myini配置

    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8 
    [mysqld]
    #设置3306端口
    port = 3306 
    server_id=2 
    log_bin=mysql-bin
    log_bin-index=mysql-bin.index
    # 需要备份数据,多个写多行,不写全部都备份
    #binlog-do-db =z.userdb
    #不需要备份的数据库,多个写多行
    #binlog-ignore-db = mysql 
    #需要同步的表
    replicate-do-db=userdb
    #不需要同步的表
    replicate-ignore-db=mysql
    # 设置mysql的安装目录
    basedir=E:mysql-5.7.22-winx64mysql-5.7.22-winx64
    # 设置mysql数据库的数据的存放目录
    datadir=E:mysql-5.7.22-winx64mysql-5.7.22-winx64/data
    # 允许最大连接数
    max_connections=200
    # 服务端使用的字符集默认为8比特编码的latin1字符集
    character-set-server=utf8
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    my.ini

    2、设置同步连接账户和同步文件位置等信息

    1)先停止下slave :mysql>stop slave;

    2 )执行:mysql>change master to master_host='192.168.0.42', master_user='test', master_password='123456',master_log_file='mysqlmaster-bin.000004',master_log_pos=154;

    3) 启动slave :mysql>start slave;

    3、检测下状态看有没有错误:mysql>show slave status; 

    可能出现的错误:1045 Error  配置同步账户grant下权限,先查看下

    然后根据需要配置

    完成了这些 就可在代码中做CQRS了

    在dotnetcore项目中使用

    dotnet ef migrations add initdatabase

    dotnet ef database update

    初始化数据库,可以看到从服务器已经同步了

  • 相关阅读:
    服务器消息机制实现记录
    转载SQL经典代码按某一字段分组取最大(小)值所在行的数据
    记录js获取当前URL
    (原创)xilinx IP建立向导创建的目录和文件都是做什么的?由错误ERROR:HDLCompiler:Instantiating <xx> from unknown module <xx>引发的思考
    [转]NTFS3G的安装和配置
    (原创)Notepad++怎么实现双视图/双窗口?
    (原创)Quartus硬件工程路径改变,nios工程该怎么办?
    (原)verilog中的reg类型变量,一定会综合出触发器吗?
    (Windows)使用纯净版本的系统碟安装系统后没有网卡驱动怎么办?
    [转]NIOS_II的Boot过程分析
  • 原文地址:https://www.cnblogs.com/liyouming/p/8984780.html
Copyright © 2011-2022 走看看