Mysql 基于日志点的主从复制(实操)
实现环境:
Master 主:192.168.100.165 (Mysql 5.6.36)
Slave 从 :192.168.100.156 (Mysql 5.6.36)
步骤
1.在主DB服务器上建立复制账号 (在Master上执行)
# mysql
mysql> CREATE USER 'rpl'@'192.168.100.%' identified by '123456';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.100.%';
2.主服务器配置 (在Master上执行)
# vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
# binary logging #
log-bin = /data/mysql/log-bin #启动二进制日志
# replice #
server_id = 165 #指定服务ID
3.从服务器配置 (在Slave上执行)
# vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
# binary logging #
log-bin = /data/mysql/mysql-bin #启动二进制日志
# replice #
server-id = 156 #指定服务ID
relay_log = /data/mysql/relay-bin #启动中继日志
#log_slave_update = on #在中继日志执行后写入到二进制日志中
#read_only = on #开启只读模式
4.重启主MYSQL (在Master上执行)
# service mysqld restart
# #添加一些测试数据用于验证结果
# mysql
mysql> CREATE DATABASE CHEN;
mysql> USE CHEN;
mysql> CREATE TABLE T1 (ID INT);
mysql> INSERT INTO T1 VALUES (1),(2),(3);
mysql> \q
5.重启从MYSQL (在Slave上执行)
# service mysqld restart
6.备份主数据库(如果主从上的数据库版本一样,可以全备) (在Master上执行)
# mysqldump --single-transaction --master-data --triggers --routines --all-databases >> /root/165_full.sql
# #记录MASTER_LOG_FILE和MASTER_LOG_POS 的值;
# more /root/165_full.sql #找到这样一句话:CHANGE MASTER TO MASTER_LOG_FILE='log-bin.000003', MASTER_LOG_POS=520;
7.将主数据库备份传输到从数据库中 (在Master上执行)
# scp /root/165_full.sql root@192.168.100.156:/root
8.将主数据库的备份导入到从数据库中 (在Slave上执行)
# mysql -uroot -p < /root/165_full.sql
9.初始复制链路 (在Slave上执行)
# mysql
mysql> change master to master_host='192.168.100.165',
-> master_user='repl',
-> master_password='123456',
-> MASTER_LOG_FILE='log-bin.000003' #从备份中查找
-> MASTER_LOG_POS=520; #从备份中查找
10.启动当检查结果
mysql> start slave; (在Slave上执行)
mysql> show slave status \G (在Slave上执行) 进程启动
mysql> show processlist; (在Slave上执行) 两个系统进程
mysql> show processlist; (在Master上执行) 一个系统进行
mysql> SELECT * FROM `chen`.t1; (在Master上执行) 查检结果是否一致
mysql> SELECT * FROM `chen`.t1; (在Slave上执行) 查检结果是否一致
mysql> INSERT INTO `chen`.t1 VALUES (4); (在Master上执行)
mysql> SELECT * FROM `chen`.t1; (在Master上执行) 查检结果是否一致
mysql> SELECT * FROM `chen`.t1; (在Slave上执行) 查检结果是否一致
如果都没有问题,那就OK啦
Mysql 基于日志点的主从复制(实操)的更多相关文章
- Mysql 基于GTID的主从复制(实操)
实现环境: Master 主:192.168.0.102 (Mysql 5.6.36) Slave 从 :192.168.0.103 (Mysql 5.6.36) 步骤1.在主DB服务器上建立复制账 ...
- redis实操-sentinel
本文主要记录一些操作步骤,作为自己学习的一个记录,也供虚拟机上学习redis的人参考. 实操篇,可以参考 http://redis.cn/ 主从复制实操 在test目录下新建配置进行练习 1.mkdi ...
- 实操重写IK分词器源码,基于mysql热更新词库
实操重写IK分词器源码,基于mysql热更新词库参考网址:https://blog.csdn.net/wuzhiwei549/article/details/80451302 问题一:按照这篇文章的介 ...
- (转)MySQL 主从复制搭建,基于日志(binlog
原文:http://blog.jobbole.com/110934/ 什么是MySQL主从复制 简单来说,就是保证主SQL(Master)和从SQL(Slave)的数据是一致性的,向Master插入数 ...
- Mysql MHA(GTID)配置(实操)
实现环境 centos6.7 MYSQL5.6.36 主:192.168.1.191 从1:192.168.1.145 从2:192.168.1.146 监测:放在从2上 192.168.1.146 ...
- Docker安装MySql完整教程、实操
docker:官网 docker:镜像官网: 镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本(指定版本:docker p ...
- MySQL5.6主从复制搭建基于日志(binlog)
什么是MySQL主从复制 简单来说,就是保证主SQL(Master)和从SQL(Slave)的数据是一致性的,向Master插入数据后,Slave会自动从Master把修改的数据同步过来(有一定的延迟 ...
- Mysql5.7基于日志主从复制
主从同步概念 主从同步是异步复制 Mysql两种复制类型: 基于二进制日志 使用GTID完成基于事务的复制 基于日志三种方式: Mysql5.7需要注意的问题: 老版本方法创建mysql用户 #mys ...
- mysql -- mysql基于ssl的主从复制
mysql基于ssl的主从复制由于mysql在复制过程中是明文的,所以就大大降低了安全性,因此需要借助于ssl加密来增加其复制的安全性. 主服务器node1:172.16.200.1从服务器node2 ...
随机推荐
- 修改phpstorm的字体样式和大小
默认的字体实在太小,也太丑,必须修改下.就是强迫症,没错.下面截图配文字说明下 方法/步骤 首先进入设置,不解释 先设置软件界面上的字体.进入设置之后,选择(外观)Appearance.之后软 ...
- stringsteam使用之整型转字符串
最近需要用到整型转字符串的操作,学习了stringstream一些皮毛. 首先需要包含头文件. #include<sstream> 然后用流操作的方式将值传递给stringstream对象 ...
- 彩扩机项目--NPN和PNP三极管作为开关管的区别
上图是最终画好的电路.使用的是NPN三极管,并且把NPN三极管放在了下面.下面分析下NPN三极管作为开关管能否放在上面. 从上面两张图分析可知,当三极管作为开关管使用的时候,NPN三极管需要放在下面( ...
- java网络编程之socket
网络编程是什么 网络编程的本质是两个设备之间的数据交换,当然,在计算机网络中,设备主要指计算机.数据传递本身没有多大的难度,不就是把一个设备中的数据发送给两外一个设备,然后接受另外一个设备反馈的数据. ...
- JUnit【1】断言用法之assertEquals/True/False/ArrayEquals
前段时间去亚信面试,被问到写一个冒泡排序,心想这多新鲜,刷刷几下写好.面试官突然问,你怎么对这个程序进行单元测试? 单元测试?! 懵圈... 单元测试 代码是为了什么, ...
- 个人开源项目testall 持续更新中···
项目在GitHub上:https://github.com/x113773/testall ,喜欢的给个星星呀,亲~ 打算把用到过的和学习过的,所有前后端技术都集成到这个项目里,并在issues里配以 ...
- Java学习笔记之集合
集合(Collection)(掌握) (1)集合的由来? 我们学习的是Java -- 面向对象 -- 操作很多对象 -- 存储 -- 容器(数组和StringBuffer) -- 数组而数组的长度固定 ...
- AngularJS实用基础知识---入门必备
前言 今天来和大家学习一下AngularJS-- AngularJS 通过新的属性和表达式扩展了 HTML. AngularJS 可以构建一个单一页面应用程序. AngularJS 学习起来非常简单. ...
- Javascript 判断变量类型的陷阱 与 正确的处理方式
Javascript 由于各种各样的原因,在判断一个变量的数据类型方面一直存在着一些问题,其中最典型的问题恐怕就是 typeof null 会返回 object 了吧.因此在这里简单的总结一下判断数据 ...
- Hibernate框架 初识 ORM概念 搭建Hibernate环境 Hibernate Api
ORM概念 在学习 Hibernate 之前,我们先来了解ORM 对象关系映射 O, Object 对象 R,Realtion 关系 (关系型数据库: MySQL, Oracle…) M,Ma ...