MySql数据库主从配置详细教程


本文将讲解mysql数据库的主从配置方法。mysql数据库进行主从配置后,可以实现数据库的备份、同时应用也可以实现读写分离,提高应用的并发量。

1、主从原理

主从原理大致有三个步骤:

  • 在主库上把数据更改记录到二进制日志中(Binary Log)中,这些记录称为二进制日志事件。
  • 从库通过IO线程将主库上的日志复制到自己的中继日志(Relay Log)中。
  • 从库通过SQL线程读取中继日志中的事件,将其重放到自己数据上。

原理图为:

2、主从配置

演示的环境如下:

名称 IP
msyql-master(主库) 192.168.197.135
mysql-slave(从库) 192.168.197.136

(1)、配置主库

修改my.cnf文件,在[mysqld]加入下面的内容:

# 服务的唯一编号
server-id = 1# 开启mysql binlog功能
log-bin = mysql-bin# binlog记录内容的方式,记录被操作的每一行
binlog_format = ROW# 减少记录日志的内容,只记录受影响的列
binlog_row_image = minimal# 指定需要复制的数据库名为jgyw
binlog-do-db = jgyw

修改好配置文件,重启mysql服务

service mysqld restart

创建从库同步数据的账号

grant replication slave on *.* to 'jgyw'@'192.168.197.136' identified by 'jgyw@123';
flush privileges;

注意:上面这两个命令是在mysql的终端执行的。

查看主库的状态:

mysql的终端执行:

show master status\G;

返回的信息为:

*************************** 1. row ***************************File: mysql-bin.000002Position: 2380Binlog_Do_DB: jgywBinlog_Ignore_DB:
Executed_Gtid_Set:
1 row in set (0.00 sec)

(2)、配置从库

修改my.cnf文件,在[mysqld]加入下面的内容:

# 服务的唯一编号
server-id = 2# 开启mysql binlog功能
log-bin = mysql-bin# binlog记录内容的方式,记录被操作的每一行
binlog_format = ROW# 减少记录日志的内容,只记录受影响的列
binlog_row_image = minimal# 指定需要复制的数据库名为jgyw
replicate-do-db = jgyw

修改好配置文件,重启mysql服务

service mysqld restart

执行同步命令

mysql的终端执行:

# 设置主服务器ip,同步账号密码,同步位置
change master to master_host='192.168.197.135',master_user='jgyw',master_password='jgyw@123',master_log_file='mysql-bin.000002',master_log_pos=2380;# 开启同步功能
start slave;

查看从库的状态

mysql的终端执行:

show slave status\G;

返回信息为:

注意:Slave_IO_Running和Slave_SQL_Running的状态都为Yes时,说明从库配置成功。

3、测试

(1)、在主库上创建jgyw模式,即:

create schema jgyw;

(2)、在主库上的jgyw模式里面创建comm_config表,即:

use jgyw;
CREATE TABLE comm_config (configId varchar(200) NOT NULL ,configValue varchar(1024) DEFAULT NULL ,description varchar(2000) DEFAULT NULL ,PRIMARY KEY (configId)) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

(3)、在主库上往comm_config表中插入一条记录,即:

insert into comm_config(configId, configValue, description) values('name', '架构与我', '测试一下');

(4)、在从库上查看模式,即:

show schemas;

结果为:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| jgyw               |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

说明jgyw模式同步到从库了

(5)、在从库上查看jgyw模式下的表及数据,即:

use jgyw;
show tables;

结果为:

+----------------+
| Tables_in_jgyw |
+----------------+
| comm_config    |
+----------------+
1 row in set (0.00 sec)

说明表也同步好了,再查看数据,即:

select * from comm_config;

结果为:

+----------+--------------+--------------+
| configId | configValue  | description  |
+----------+--------------+--------------+
| name     | 架构与我     | 测试一下     |
+----------+--------------+--------------+
1 row in set (0.00 sec)

说明数据也同步过来了。

MySql数据库主从配置详细教程相关推荐

  1. MySQL数据库安装配置详细教程

    目录 Windows系统安装MySQL 1.下载 2.解压zip包 3.配置环境变量 4.编写配置文件 5.MySQL服务安装 6.MySQL初始化 7.更改密码和密码认证插件 8.查看默认数据库my ...

  2. mysql windows 管道连接,科技常识:Windows Server 2016 MySQL数据库安装配置详细安装教程...

    今天小编跟大家讲解下有关Windows Server 2016 MySQL数据库安装配置详细安装教程 ,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关Windows Server 2016 ...

  3. MySQL安装及配置详细教程

    MySQL安装及配置详细教程 目录 下载: 安装: 配置环境变量 数据库初始化 改密码 完成 下载: 首先下载安装包 [网址](https://dev.mysql.com/downloads/file ...

  4. Oracle数据库安装配置详细教程汇总(含11g、12c、18c、19c、21c)

    不论你是数据库小白,还是久经沙场的技术专家,你接触和运维Oracle数据库的第一步可能都是安装配置.并且随着软硬件的升级.替换以及业务场景的变化,数据库安装也将是你常常会进行的操作之一. 这里先为大家 ...

  5. mysql数据库主从配置

    http://blog.csdn.net/l1028386804/article/details/48413681  错误分析 https://www.cnblogs.com/fyc119/p/752 ...

  6. MySQL数据库入门超级详细教程

    文章目录 MySQL 1. 数据库软件安装 2. 为什么要用数据库 3. 什么是数据库 4. 数据库管理系统 DBMS 5. MySQL 介绍 6. SQL 6.1 SQL 语句概述 6.2 SQL ...

  7. mysql主从配置详细教程

    1.准备两台服务器 主数据库 | 192.168.10.2 | master | 从数据库 | 192.168.10.23 | slave | 2.启动两台服务器 3.关闭系统防火墙 4.保证两台服务 ...

  8. mysql数据库主从同步配置教程--数据库同步

    背景: 最近有一个mysql数据库同步的需求,我用了mysql主从同步的方法来实现.下面把步骤记录一下. 环境和拓扑 操作系统:Centos6.6 X64 mysql版本:5.1.73 Master: ...

  9. Sharding-jdbc教程:Mysql数据库主从搭建

    点击上方"方志朋",选择"置顶公众号" 技术文章第一时间送达! 这是系列文章Sharding-jdbc文章的第一篇,本篇文章主要讲述如何搭建Mysql的主从.搭 ...

最新文章

  1. plotly基于dataframe数据绘制线形图(line plot)
  2. java 如何只暴露接口_Java并发异步编程,原来十个接口的活现在只需要一个接口就搞定...
  3. 【转】Python3 (入门6) 库的打包与安装
  4. EPOLL 事件之 EPOLLRDHUP
  5. [云炬创业基础笔记]第九章企业的法律形态测试1
  6. C#利用反射机制,获取实例的属性和属性值
  7. DataGridView控件初始化,添加删除行(不绑定数据库)
  8. CMOS Sensor的调试分享
  9. java lambda循环_使用Java 8 Lambda简化嵌套循环
  10. [css] H5如何禁止显示系统菜单?
  11. python 小甲鱼——面向对象笔记
  12. CCF 2014-3-1 相反数
  13. FreeMarker合并单元格
  14. 关于sts与eclipse版本对应的插件图
  15. Android实战——LeakCanary检测内存泄漏
  16. 联想小新520怎么样?对比当贝D3X哪款更值得买?
  17. 三款免费的直播推流软件介绍
  18. java求两个数的最小公倍数的方法_Java程序查找两个数字的最小公倍数
  19. 第九章——有ISI和AWGN信道的最佳接收机
  20. java 京东秒杀系统_京东秒杀浪费坑位惩罚你可知道?

热门文章

  1. 和平精英组装电脑配置要求2022 适合玩和平精英游戏电脑清单
  2. Axure中登录页面与首页的交互(展示登陆的用户名等)
  3. android应用开发-从设计到实现 2-3 颜色的运用
  4. 子网掩码和通配符掩码的区别
  5. 驾驶证——科目一技巧(一)
  6. Java 内存模型 侵删
  7. QT界面设计添加BUTTON不显示
  8. delphi 和 腾讯云的对接
  9. 跟着迪哥学python 经管之家_经管之家俱乐部:市面上并不多见的经管学习圈子!...
  10. protege查询时,提示没有reasoner可用怎么解决