1.介绍

MySQL主从复制是一个异步的复制过程,底层是基于Mysql数据库自带的二进制日志功能。就是一台或多台MysQL数据库(slave,即从库)从另一台MNySQL数据库(master,即主库)进行日志的复制然后再解析日志并应用到自身,最终实现从库的数据和主库的数据保持一致。MySQL主从复制是MySQL数据库自带功能,无需借助第三方工具。

MySQL复制过程分成三步:

  • master将改变记录到二进制日志(binary log)
  • slave将master的binary log拷贝到它的中继日志(relay log)
  • slave重做中继日志中的事件,将改变应用到自己的数据库中

2.具体操作

首先准备两台装有mysql的OS(如果使用虚拟机,不要使用克隆之后改IP的方式,直接新建两个虚拟机)
1.配置主库Master
1.1首先修改mysql的配置文件

vim /etc/my.cnf

在[mysqld]后添加

log-bin=mysql-bin
server-id=100

log-bin=mysql-bin表示启动二进制日志,server-id=100表示唯一ID
然后wq退出保存
1.2重启mysql服务

systemctl restart mysqld

1.3登录到mysql

mysql -u root -p

登录后执行以下SQL

grant REPLICATION SLAVE on *.* to 'sirius'@'%' identified by 'Chd1998__';

注:上面SQL的作用是创建一个用户sirius,密码为Chd1998__,并且给xiaoming用户授予REPLICATION SLAVE权限。常用于建立复制时所需要用到的用户权限,也就是slave必须是被master授权具有该权限的用户,才能通过该用户复制。

1.4执行

show master status;

记录结果当中的以下值,之后便不要再进行任何操作,防止结果发生改变

2.配置从库Slave
现在操作另一个mysql服务器
2.1首先修改mysql的配置文件

vim /etc/my.cnf

在[mysqld]后添加

server-id=101


2.2重启mysql服务

systemctl restart mysqld

2.3登录到mysql

mysql -u root -p

登录后执行以下SQL

change master to master_host='主库master的ip地址',master_user='sirius',master_password='Chd1998__',master_log_file='mysql-bin.000001',master_log_pos=439;

master_host为主库master的ip地址,master_user、master_password为步骤1.3当中创建的用户名和密码,master_log_file、master_log_pos为步骤1.4当中查询到的两个值
执行成功后开启slave

start slave;

2.4查看一下从库的状态

show slave status;

显示的结果可能比较混乱,我们可以将其复制到文本编辑器查看。
结果很多,但我们重点看以下两个,如果都是yes,说明配置成功

3.测试

在主数据库master创建一个databases

会发现从数据库slave也创建了一个

mysql主从复制的配置方法和原理简介相关推荐

  1. windows下配置mysql主从复制_Windows下MySQL主从复制的配置方法

    MySQL主从复制允许将来自一个数据库(主数据库)的数据复制到一个或多个数据库(从数据库). 主数据库一般是实时的业务数据写入和更新操作,从数据库常用的读取为主. 主从复制过程: 1.主服务器上面的任 ...

  2. mysql主从库配置方法

    2019独角兽企业重金招聘Python工程师标准>>> 一.mysql主从备份(复制)的基本原理 mysql支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务 ...

  3. 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)

    阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...

  4. MySQL主从复制安装配置

    mysql主从复制安装配置 1.基础设置准备 #mysql版本: 5.7 #两台虚拟机: node1:192.168.85.11(主) node2:192.168.85.12(从) 2.在两台数据库中 ...

  5. MySql 主从复制及配置实现

    一.什么是Mysql主从复制 MySQL主从复制是其最重要的功能之一.主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中.对于多级复 ...

  6. 高可用架构-- MySQL主从复制的配置

    环境 操作系统:CentOS-6.6-x86_64-bin-DVD1.iso MySQL版本:mysql-5.6.26.tar.gz 主节点IP:192.168.1.205 主机名:edu-mysql ...

  7. Vue Router history模式的配置方法及其原理

    转载地址:https://segmentfault.com/a/1190000019391139 vue-router分为hash和history模式,前者为其默认模式,url的表现形式为http:/ ...

  8. mysql主从复制时间配置_MySQL主从复制配置

    环境 CentOS 7.5 Docker 1.13.1 MySQL 8.0.16 基于以上环境启动三个mysql容器,一个为master,二个为slave master和slave使用的mysql版本 ...

  9. mysql++3307,mysql多实例配置方法

    Mysql多实例配置 1.什么是多实例? 在linux系统中代表:多个进程+多个线程+多个预分配内存结构 一般用来测试环境中,测试主从,高可用等. 多实例配置方案:(多个数据库管理系统)端口port分 ...

最新文章

  1. Redis的内存消耗
  2. [py]access日志入mysql-通过flask前端展示
  3. Android动态加载插件APK
  4. 如何真正学好数据科学?
  5. UIBlock 按钮图片设置
  6. android游戏开发学习笔记一(学习书籍 Android游戏编程之从零开始)
  7. MATLAB通信系统建模与仿真
  8. 九、障碍罚函数法---内点、外点罚函数
  9. 《大秦帝国》:中国文明正源的强势生存
  10. python实现.jpeg转.jpg
  11. 对于html的第一次正式作业
  12. python爬取微博评论超100页_python爬取新浪微博评论-Go语言中文社区
  13. jit和jitx区别_JIT是什么东西 分分钟打下来!
  14. 【Earth Engine】基于GEE对季节性地物进行分类(多源数据叠图+监督分类)
  15. XML DOM摘要五(XPath)
  16. 弘辽科技:拼多多专属推广怎么设置时间。
  17. 男性:曹云金再恋嫩模:男人最重要的是有趣
  18. 机器学习助推分子动力学模拟
  19. 标普全球普氏推出区块链网络追踪阿联酋的石油数据
  20. 七夕到了,你还单身吗?

热门文章

  1. double 去科学计数法显示
  2. VB编程:Val字符串转数字,CStr数字转字符串-6
  3. 如何向icloud上传文件_如何用ICloud云盘分享文件?如何将本地文件上传到 iCloud Drive?...
  4. 在sql界面的鼠标光标不见了怎么办?
  5. 防火墙——服务器负载均衡
  6. 迅捷CAD看图软件有哪些功能
  7. 干货,教你怎样开一场真正的战略会
  8. strace跟踪java,linux运维利器—–strace命令
  9. 如何高效清洗数据?试试这款神器
  10. python小工具,15行代码秒出工资条