1. 基本要求

    • 两台服务器(windows,linux,mac)

    • 双方mysql版本需一致,如不一致,只要主节点低于从节点

    • 两台服务器防火墙关闭

    • 双方数据库所用的用户,要具有远程访问的权限

  2. 主服务器配置

    • 修改主服务器的MySQL配置文件,window(my.ini),linux(my.cnf)

    #mysql唯一id
    server-id =
    #二进制日志文件,此项为必填项,否则不能同步数据;
    log-bin = "mysql-bin"
    #指定二进制错误文件
    log-error="mysql-error"
    #需要同步的数据库,如果需要同步多个数据库;
    binlog-do-db = demo
    #binlog-do-db = slaveDB1
    #binlog-do-db = slaveDB2
    #不需要同步的数据库
    binlog-ignore-db = mysql
    • 授权给从数据库服务器

    GRANT REPLICATION SLAVE ON *.* to 'root'@'111.111.111.111' identified by '';
    flush privileges;
    • mysql8.0版本授权

    CREATE USER 'root'@'111.111.111.111' IDENTIFIED WITH
    mysql_native_password BY '';
    GRANT REPLICATION SLAVE ON *.* TO 'root'@'222.222.222.222';
    • 重启主服务器

    $ service mysqld restart
    • 查看主服务器BIN日志的信息(执行完之后记录下这两个值,然后在配置完从服务器之前不要对主服务器进行任何操作,因为每次操作数据库时这两个值会发生改变)

    $ show master status
  3. 从服务器配置

    • 修改从服务器的MySQL配置文件,window(my.ini),linux(my.cnf),配置server-id 的值,并确保这个ID没有被别的MySQL服务所使用

    server-id=    #默认是1改成2
    log-bin="mysql-bin" #这行本身有
    replicate-do-db=demo #需要同步的数据库
    replicate-ignore-db=mysql #不同步系统数据库
    read_only #设只读权限
    • 启动mysql服务

    • 执行同步sql语句

    change master to
    master_host='111.111.111.111',
    master_user='root',
    master_password='',
    master_log_file='mysql-bin.000001',
    master_log_pos=;
     
    • MASTER_HOST : 设置要连接的主服务器的ip地址

    • MASTER_USER : 设置要连接的主服务器的用户名

    • MASTER_PASSWORD : 设置要连接的主服务器的密码

    • MASTER_LOG_FILE : 设置要连接的主服务器的bin日志的日志名称

    • MASTER_LOG_POS : 设置要连接的主服务器的bin日志的记录位置。

    • 启动Slave同步进程

    $ start slave;
  4. 主从同步检查

    • 查看状态

    $ show slave status\G

    其中Slave_IO_Running 与 Slave_SQL_Running 的值都必须为YES,才表明状态正常

    • 如果之前从服务器启动过需要先停止,再运行

    $ stop slave 

MySQL入门详解(三)---mysql如何进行主从配置的更多相关文章

  1. MySQL入门详解(二)---mysql事务、锁、以及优化

    MySQL 事务主要用于处理操作量大,复杂度高的数据.比如说,在一个商城系统中,用户执行购买操作,那么用户订单中应该加一条,库存要减一条,如果这两步由于意外只进行了其中一步那么就会发生很大的问题.而事 ...

  2. MySQL系列详解三:MySQL中各类日志详解-技术流ken

    前言 日志文件记录了MySQL数据库的各种类型的活动,MySQL数据库中常见的日志文件有 查询日志,慢查询日志,错误日志,二进制日志,中继日志 .下面分别对他们进行介绍. 查询日志 1.查看查询日志变 ...

  3. c++操作mysql入门详解

    首先,根据你当前的操作系统,还有开发工具,选择相应的mysql版本.本人选择的环境是win10 + vs2013 需要解决三个问题:1.下载安装mysql服务器,并登录mysql测试一下是否安装成功: ...

  4. Mysql入门详解

    目录 数据库之Mysql 一 .简单了解数据库 二.Mysql的使用 三.多表查询 数据库之Mysql 本篇文章为观看某教学视频后所作个人总结 一 .简单了解数据库 1.1常见关系型数据库 mysql ...

  5. MySQL入门详解(一)---mysql的语言

    MySQL语言分为:DCL(数据库控制语言).DDL(数据库定义语言).DQL(数据库查询语言).DML(数据库操作语言),这一节我们先从mysql的语言开始. DCL:数据库控制语言,用来设置数据库 ...

  6. MySQL Explain详解 查看mysql语句详情

    在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有 ...

  7. Mac下Intellij IDea发布JavaWeb项目 详解三 (为所有Module配置Tomcat Deployment 并测试web 网页 配置Servlet)

    step4 为所有项目配置Deployment 4.1 如图 4.2 [+][Artifact] 4.3 将这里列出的所有内容选中后,点[OK] 4.4 选完是这样,表示,这三个java ee 项目会 ...

  8. Redis快速入门详解

    Redis入门详解 Redis简介 Redis安装 Redis配置 Redis数据类型 Redis功能 持久化 主从复制 事务支持 发布订阅 管道 虚拟内存 Redis性能 Redis部署 Redis ...

  9. MySQL 数据类型 详解

    MySQL 数据类型 详解 MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数.许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 My ...

随机推荐

  1. Redis---ZipList(压缩列表)

    1.概述 压缩列表是一块连续的内存空间,元素之间紧挨着存储,没有任何冗余空间. Redis 为了节约内存空间使用,zset 和 hash 容器对象在元素个数较少的时候,采用压缩列表 (ziplist) ...

  2. POJ 2487

    #include<iostream> #include<stdio.h> using namespace std; int compare(void const * i,voi ...

  3. nodejs&mongo&angularjs

    http://www.ibm.com/developerworks/cn/web/wa-nodejs-polling-app/

  4. (转)Python内置函数进阶之“属性(property())”详解

    原文:https://blog.csdn.net/GeekLeee/article/details/78519767 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.c ...

  5. IntelliJ Idea注释模板--类注释、方法注释

    刚从Eclipse切换到IntelliJ Idea,之前使用eclipse时用到了注释模板,包括类注释和方法注释,现在分别讲一下在Intellij Idea中如何进行配置,作为备忘 一. 类注释模板配 ...

  6. FactoryMethod工厂方法模式(创建型模式)

    1.工厂方法模式解决的问题 现在有一个抽象的游戏设施建造系统,负责构建一个现代风格和古典风格的房屋和道路. 前提:抽象变化较慢,实现变化较快(不稳定) 整个抽象的游戏设施建造系统相对变化较慢,本例中只 ...

  7. freerdp服务器共享屏幕,skype lync终端显示黑屏的原因分析

    问题描述:freerdp支持远程桌面共享协议rdp,使用freerdp与skype终端进行远程桌面共享时.发送1080p 视频数据时 skype终端显示黑屏 经过分析,发现rdp协商参数大于一定值时, ...

  8. spring cloud(服务注册中心及服务提供者——初学一)

    Eureka是Netflix开源的一款提供服务注册和发现的产品,它提供了完整的Service Registry和Service Discovery实现.也是springcloud体系中最重要最核心的组 ...

  9. tomcat如何正确的开启远程调试功能

    在日常开发中,有时需要对远程服务器上的应用进行远程调试,对于tomcat,要进行远程调试其实很简单,只需要在启动tomcat时开启jpda服务即可. 什么是JPDA呢? JPDA(JavaPlatfo ...

  10. logstash-1-安装配置

    centos logstash logstash logstash是什么呢, 他是一个数据管道, JRuby编写的运行在java虚拟机的具有收集, 分析和转发数据流功能的工具 特性: 安装 1), w ...