MySQL主从同步简单介绍&配置
介绍:
现在mysql集群基本上都是使用一主多从方式,实现读写分离(主库写、从库读)、负载均衡、数据备份,以前只是使用从未配置过,今天简单配置一下!
mysql主从复制是通过binary log日志实现,具体实现流程如下:
1.主库开启binlog日志,且主库将所有操作语句记录到binlog中,并允许从库远程连接权限
2.从库开启I/O线程和SQL线程。I/O线程负责读取主库的binlog内容到relay log中;SQL线程负责从relay log中读取binlog内容并更新到从库中
下面是从网上找了一张经典的主从复制流程图:

注意事项:
mysql主从库版本尽量保持一致,如不一致主库版本要低于从库版本
mysql主从库尽量分布于不同服务器上,主库必须开启bin log日志
主从库初始数据保持一致
主库配置:
1.设置bin log和server id
vim /etc/my.cnf

2.启动服务
/usr/local/mysql/support-files/mysql.server start
报错:The server quit without updating PID file (/usr/local/mysql/data/ubuntu1.pid)
设置权限:chown -R mysql:mysql /var/log/mysql/ chmod -R 755 /usr/local/mysql/data/
3.创建从库同步数据的账号
mysql -u root -p

3.获取主服务器二进制信息

从库配置:
1.设置server id,此server-id要小于主库server-id
vim /etc/my.cnf

从库bin log日志可不开启,视情况而定,用于测试先不开启
2.启动服务
/usr/local/mysql/support-files/mysql.server start
3.设置连接连接到主库的信息

4.开启同步
start slave;
show slave status \G;

正常情况下这两项都应该是Yes才对,奔溃了,o(╥﹏╥)o ,排错吧。。。
1)在my.cnf文件中打开错误日志:vim /etc/my.cnf

2)查看错误日志:cat /var/log/mysqld.log,看到有这条内容
[Warning] Neither --relay-log nor --relay-log-index were used; so replication may break when this MySQL server acts as a slave and has his hostname changed!! Please use '--relay-log=ubuntu2-relay-bin' to avoid this problem
然后在配置文件中增加relay-log选项,vim /etc/my.cnf

3)重启myql依然是No,绞尽脑汁,想起来从库服务器环境是从主库复制过来的,主机名和主库主机名都是ubuntu1,好吧,修改主机名:vim /etc/hostname,改成ubuntu2
4)重启主机,启动mysql,执行start slave;直接报错,从库同步启动失败了,然后网上查了需要reset slave再start slave,好吧,执行reset slave,在执行start slave,依然是No,继续崩溃o(╥﹏╥)o
5)继续看错误日志,不看日志凭脑子想是想不出来的,从上往下一行行看,终于看到个ERROR

查百度,原来是auto.cnf里的server-uuid和主库重复,原因还是从库服务器环境直接从主库复制的,文件在/usr/local/mysql/data/下,直接将auto.cnf文件删除,mysql启动时会检查,没有的话会自动创建。
6)重启mysql,继续查看从库同步状态

终于Yes了, O(∩_∩)O哈哈~
测试:
1.主库创建test库,test表,插入数据;

2.从库查看是否有test库,test表,表中是否有相应数据

同步正常!!!完成~
MySQL主从同步简单介绍&配置的更多相关文章
- mysql 主从 同步原理及配置
一.在mssql 里头实现同步镜像,只能主库用而镜像库不能同时用,而mysql 主从同步可以实现 数据库的读写分离,主库负责 update insert delete ,从库负责select 这样一来 ...
- 聊聊Mysql主从同步读写分离配置实现
Hi,各位热爱技术的小伙伴您们好,好久没有写点东西了,今天写点关于mysql主从同步配置的操作日志同大家一起分享.最近自己在全新搭建一个mysql主从同步读写分离数据库简单集群,我讲实际操作步骤整理分 ...
- MySQL主从同步、读写分离配置步骤、问题解决笔记
MySQL主从同步.读写分离配置步骤.问题解决笔记 根据要求配置MySQL主从备份.读写分离,结合网上的文档,对搭建的步骤和出现的问题以及解决的过程做了如下笔记: 现在使用的两台服务器已经 ...
- Mysql主从同步配置方案(Centos7)
最近在做项目高可用时,需要使用数据同步.由于只有双节点,且采用主主同步可能存在循环同步的风险,故综合考虑采用Mysql主从同步(Master-Slave同步). 可能没有接触过Mysql数据同步时,可 ...
- Linux下MySQL主从同步配置
Centos6.5 MySQL主从同步 MySQL版本5.6.25 主服务器:centos6.5 IP:192.168.1.101 从服务器:centos6.5 IP:192.168.1.102 一. ...
- mysql主从同步配置(windows环境)
mysql主从同步配置(mysql5.5,windows环境) A主机(作为主服务器)环境:windows8.mysql5.5 ip:192.168.1.100(自己填) B主机(作为从服务器,由 ...
- Docker Mysql主从同步配置搭建
Docker Mysql主从同步配置搭建 建立目录 在虚拟机中建立目录,例如路径/home/mysql/master/data,目录结构如下: Linux中 新建文件夹命令:mkdir 文件夹名 返回 ...
- Mysql主从同步(1) - 概念和原理介绍 以及 主从/主主模式 部署记录
Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一 ...
- Mysql主从同步在线实施步骤【适合大数据库从库配置】
Mysql主从同步在线实施步骤[适合大数据库从库配置] MySQL的主从搭建大家有很多种方式,传统的mysqldump方式是很多人的选择之一,但比较适合在新实例中实施,对于较大的数据库则存在停机等不可 ...
随机推荐
- PHP xml_parser_free() 函数
定义和用法 xml_parser_free() 函数释放 XML 解析器.高佣联盟 www.cgewang.com 如果成功,该函数则返回 TRUE.如果失败,则返回 FALSE. 语法 xml_pa ...
- Ubuntu安装Cloudera Manager以及CDH5.15.2
一.机子分配 注意,本安装教程是在真机上进行,而非虚拟机.另,此次搭建主要的目的是搭建测试环境,让Hadoop各组件能够运作起来即可,完成搭建后,将用小数据量进行相关数据的计算与测试.线上环境将会使用 ...
- 44-final, finally, finalize的区别
final—修饰符(关键字) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承. 因此一个类不能既被声明为 abstract的,又被声明为final的.将变量或方法声明为 ...
- 28-关键字:static
static:静态的 1.可以用来修饰的结构:主要用来修饰类的内部结构 >属性.方法.代码块.内部类 2.static修饰属性:静态变量(或类变量) 2.1 属性,是否使用static修饰,又分 ...
- Redis服务之Redis Cluster
在上一篇博客中我们聊到了redis的高可用组件sentinel的相关配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13429776.html:sentin ...
- git使用-分支管理
1.查看分支 git branch 2.创建分支 git branch name 3.切换分支 git checkout name 4.合并分支上的内容到master分支 切换到master分支上 g ...
- dom4j基本操作
DOM4J与利用DOM.SAX.JAXP机制来解析xml相比,DOM4J 表现更优秀,具有性能优异.功能强大和极端易用使用的特点,只要懂得DOM基本概念,就可以通过dom4j的api文档来解析xml. ...
- Django中的异常
DJango除了会抛出Python的标准异常外还有一些框架自带的异常. 1. Django核心异常 在django.core.exceptions中:| ObjectDoesNotExist | Fi ...
- HBase存储及读写原理介绍
一.HBase介绍及其特点 HBase是一个开源的非关系型分布式数据库,它参考了谷歌的BigTable建模,实现的编程语言为Java.它是Apache软件基金会的Hadoop项目的一部分,运行于HDF ...
- matlab使用libsvm入门教程——使用matlab安装配置libsvm以及一个svm分类实例
前言 此教程专注于刚入门的小白, 且博客拥有时效性, 发布于2019年3月份, 可能后面的读者会发现一些问题, 欢迎底下评论出现的问题,我将尽可能更新解决方案. 我开始也在如何安装libsvm上出现了 ...