mysql主从复制教程

架构规划:

192.168.201.150     master     主节点

192.168.201.154     slave      从节点

1、 修改mysql的配置文件(主节点,从节点都要修改)

[root@localhost mysql]#  vim /etc/my.cnf

2 、分别在配置文件中添加以下配置

mysql(master):主节点
server-id=1
log-bin=mysql-bin
log-slave-updates
slave-skip-errors=all
mysql(slave):从节点 ,从节点监听的是主节点的日志
server-id=2
log-bin=mysql-bin //日志的名字叫mysql-bin
log-slave-updates //设置主节点有更改时从节点自动更新
slave-skip-errors=all //从节点跳过所有错误的日志
注意:两个机器的server-id不能一样

3 、重启mysql服务

 [root@localhost mysql]#  systemctl restart mysqld

4、登陆mysql执行如下命令检查配置是否生效(主节点、从节点都可以检查)

 mysql >  SHOW VARIABLES like 'server_id';

5、登陆master主节点执行如下命令(在主节点上操作)

mysql >  show master status;  //查看主节点mysql日志状态

6 、登陆slave从节点执行如下命令(在从节点上操作)

    mysql > change master to
master_host='192.168.201.150', //主节点IP地址
master_user='root', //主节点数据库用户名
master_password='xxx', //主节点数据库的密码
master_log_file='mysql-bin.000001', //上图中的file名字
master_log_pos=154; //上图中position的数字
注意:如果这些内容写错的话,可以重新修改后再执行,系统会以最后一次执行内容为准

7 、开启从节点同步(在从节点上操作)

         mysql >  start slave;  //开启从节点同步

         mysql >  stop slave;  //停止(关闭)主从复制

8、查看从节点同步状态(在从节点上操作)

         mysql >  show slave status; 

         或者mysql >  show slave status\G;  // \G表示格式化

 

注意:

1.出现Slave_IO_Running:Connecting或Yes和Slave_SQL_Running:Yes 说明主从复制设置成功

2.如果在搭建过程出现错误,可以查看错误日志文件 cat /var/log/mysqld.log

3.如果出现Slave I/O:Fatal error:The slave I/O …..these UUIDs must be different for …Error_code:1593错误,请执行如下命令,rm –rf /var/lib/mysql/auto.cnf删除这个文件,之所以会出现这种问题,是因为我的从库主机是克隆的主库的主机,所以auto.cnf文件中保存的UUID会出现重复。删除后,重启动mysqld服务会自动生成一个新的auto.cnf

9、通过客户端工具进行测试即可,(如Navicat Premium)

mysql数据库主从复制教程的更多相关文章

  1. mysql数据库主从复制部署笔记

    主从复制是mysql中数据库实时同步的一个常用做法了,今天我来给各位介绍一下关于mysql数据库主从复制部署一个过程,希望此例子对各位同学参考参考. 数据库主从复制原理: 数据库的主从复制就是从mas ...

  2. mysql进阶(十八)完全卸载mysql数据库图文教程

    完全卸载mysql数据库图文教程 有时候MySQL不能完全卸载,这时候必须通过一些途径删除掉注册表和一些残余的文件,然后才能重新安装才可以成功! 方法/步骤 1.控制面板-->所有控制面板项-- ...

  3. Mysql数据库主从复制搭建

    Mysql数据库主从复制原理: 主库开启bin-log日志,同时生成IO线程.IO线程负责将用户写入数据库的sql语句记录在二进制日志bin-log,该记录过程可并发进行:生成标识号 server i ...

  4. 【转】10 个MySQL数据库备份教程推荐

    10 个MySQL数据库备份教程推荐 MySQL是动态网站开发中最著名的开源数据库系统.如果你在网站中使用了MySQL,那么你应该定期备份你的数据以防止它丢失. 本文将介绍自动或手动备份MySQL数据 ...

  5. MySQL 数据库主从复制架构

    前文<MySQL 数据库事务与复制>分析了 MySQL 复制过程中如何保证 binlog 和事务数据之间的一致性,本文进一步分析引入从库后需要保证主从的数据一致性需要考虑哪些方面. 原生复 ...

  6. Visual Studio 2019连接MySQL数据库详细教程

    前言 如果要在 Visual Studio 2019中使用MySQL数据库,首先需要下载MySQL的驱动 Visual Studio默认只显示微软自己的SQL Server数据源,点击其它也是微软自己 ...

  7. mysql数据库安装教程

    centos 7安装mysql教程 一.卸载mariadb 注:卸载mariadb,否则安装Mysql会出现冲突 [root@mysqlmaster ~]# rpm -qa |grep mariadb ...

  8. 跟敲MySQL数据库实用教程

    MySQL数据库操作 创建数据库 create database if not exists test; 查看数据库 show databases; show databases [ like wil ...

  9. Java连接MySQL数据库详细教程(附网盘下载地址)

    准备工具 Eclipse-oxygen-64位 http://pan.baidu.com/s/1gf48FIj MySQL-5.7.17 http://pan.baidu.com/s/1skD14Cl ...

随机推荐

  1. Nginx HTTP块配置

    1 配置块的嵌套 http { upstream {...} split_clients {...} map {...} geo {...} server { if () {...} location ...

  2. python解释器安装指导教程

    python解释器安装指导教程 1.官网下载 进入官网https://www.python.org/,在download下选择符合操作系统的版本 在找到合适的版本后选择相应的安装文件下载 2.进行安装 ...

  3. Spring事务什么时候会失效?

    面试官:Spring事务什么时候会失效? 应聘者: 访问权限问题 方法用final修饰 未被Spring管理 错误的传播特性 自己吞了异常 手动抛了别的异常 自定义了回滚异常 方法内部调用 1.访问权 ...

  4. linux下记录入站请求

    将内网机器通过frp映射到公网后,内网主机受到大量ssh爆破攻击,攻击来源为frp的服务端,仅在内网机器上无法追踪到真实的攻击来源的ip.下面记录了在frp服务端监控指定端口的入站数据,找到真正的攻击 ...

  5. java 输入输出 对象序列化implements Serializable与反序列化:ObjectOutputStream.writeObject() ;objectInputStream.readObject() ;serialVersionUID字段注意

    对象序列化 对象序列化的目标是将对象保存到磁盘中,或允许在网络中直接传输对象.对象序列化机制允许把内存中的 Java 对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存在磁盘上,通过网络将 ...

  6. 遇到奇葩的现象,给input的id为10的value属性赋值为6,但是怎么显示的时候值还是原先的9的

    遇到奇葩的现象,给input的id为10的value属性赋值为6,但是怎么显示的时候值还是原先的9的 后来发现原来是id标签重复了,所有以后得注意了. 人员信息input的id属性与隐藏input属性 ...

  7. AcWing1264. 动态求连续区间和 (树状数组做法)

    1.题目 给定 n 个数组成的一个数列,规定有两种操作,一是修改某个元素,二是求子数列 [a,b] 的连续和. 输入格式 第一行包含两个整数 n 和 m,分别表示数的个数和操作次数. 第二行包含 n ...

  8. Mysq索引优化(什么情况创建索引,什么情况不创建索引)

    一.以下情况需要创建索引 1.主键自动建立唯一索引 2.频繁作为查询条件的字段应该创建索引 3.查询中与其他表关联的字段,外键关系建立索引 4.单键/组合索引的选择问题,组合索引性价比更高 5.查询中 ...

  9. cmake以源码的方式引入第三方项目

    最前 本文将介绍一种以源码的方式引入第三方库的方法 准备 主项目,需要引用第三方库的某些函数 第三方库,以源码的形式提供给主项目使用 注意: 本文的背景:已经将第三方源码下载好. 一个例子 我这里准备 ...

  10. num_duilib之TabBox用法(21)

    介绍 本文将介绍 使用 TabBox的用法 更多用法,请参考源码 TabBox.h 文件 文件中定义了公有接口,其中包括,添加tab页下的控件,删除.设置TabBox的属性 其中,我常用的有:GetC ...