mysql 集群 主从复制
1.binlog日志,如果是多个数据库,binlog日志是不是也是分为多个日志?
2.binlog日志存储的路径在哪里?
3.常用的binlog模式,大家都是使用哪种?
1.开启binglog日志
1.1.修改my.cnf配置文件
在【mysqld】段添加:
#binlog刷盘策略
sync_binlog=1
#需要备份的数据库
binlog-do-db=hello
#不需要备份的数据库
binlog-ignore-db=mysql
#启动二进制文件
log-bin=mysql-bin
#服务器ID
server-id=132
1.2.调整binlog日志模式
show variables like 'binlog_format';
set binlog_format=STATEMENT;
这时,需要重启一下数据库,才能使用配置文件生效。
systemctl restart mysqld
1.3.查看bin log和relay log日志
mysqlbinlog --base64-output=decode-rows -v -v mysql-bin.000058 > binlog
1.4.使用命令查看binlog
show master logs;
show binlog events [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count];
show binlog events in 'mysql-bin.000001';
flush logs;
2、基于binlog主从复制
2.1.关闭主从机器的防火墙
systemctl stop iptables(需要安装iptables服务)
systemctl stop firewalld(默认)
systemctl disable firewalld.service(设置开启不启动)
2.2.主服务器配置
show variables like 'log_bin%';
2.3.主机给从机授备份权限
GRANT REPLICATION SLAVE ON *.* TO '从机MySQL用户名'@'从机IP' identified by '从机MySQL密码';
例子:
GRANT REPLICATION SLAVE ON *.* TO 'root'@'%' identified by 'root';
set global validate_password_length=4;
set global validate_password_policy=0;
FLUSH PRIVILEGES;
2.4.查询master的状态
show master status;
3.从服务器配置
3.1.修改my.conf文件
[mysqld]
server-id=401326
3.2.重启并登录到MySQL进行配置从服务器
systemctl restart mysqld
change master to master_host='10.0.200.17', master_port=3306, master_user='root', master_password='root', master_log_file='mysql-bin.000002', master_log_pos=589, MASTER_AUTO_POSITION=0;
3.3.启动从服务器复制功能
start slave;stop slave;reset slave;show slave status;
3.4.检查从服务器复制功能状态
show slave status \G;
4.设置从库写权限
对于需要保证master-slave主从同步的salve库,如果要设置为只读状态,需要执行的命令为:
set global read_only=1;
read_only=1只读模式,可以限定普通用户进行数据修改的操作,但不会限定具有super权限的用户(如超级管理员root用户)的数据修改操作。
在MySQL中设置read_only=1后,普通的应用用户进行insert、update、delete等会产生数据变化的DML操作时,都会报出数据库处于只读模式不能发生数据变化的错误,但具有super权限的用户,例如在本地或远程通过root用户登录到数据库,还是可以进行数据变化的DML操作;
为了确保所有用户,包括具有super权限的用户也不能进行读写操作,就需要执行给所有的表加读锁的命令 “flush tables with read lock;”。
这样使用具有super权限的用户登录数据库,想要发生数据变化的操作时,也会提示表被锁定不能修改的报错。
将slave数据库read-only=1设置只读后,在master执行GRANT USAGE ON *.* TO 'user01'@'localhost' IDENTIFIED BY'123456' WITH GRANT OPTION;创建一个普通用户,然后用普通用户登录从库,执行操作会报错。切换到root用户后还是可以进行增删改查的。
5.基于GTID的主从复制
5.1.什么是GTID
5.2.修改master、slave服务器的my.cnf文件
#开启GTID模式(必选)
gtid_mode=ON
#强制gtid一致性(必选)
enforce-gtid-consistency=true
5.3.重启mysql
systemctl restart mysqld
5.4.从服务器中执行change master
change master to master_host='192.168.68.132',
master_port=3306, master_user='root',
master_password='root',
master_auto_position = 1;
5.5开启同步
START SLAVE;
微信扫一扫:关注我个人订阅号“猿小飞”,更多精彩文章在这里及时发布:
mysql 集群 主从复制相关推荐
- MySQL集群(一)之主从复制
前面学完了JDBC,接下来带大家感受一下MySQL集群!其实什么是MySQL集群?简单的说就是一群机器(服务器)的集合,它们连在一起来工作. 其实各种数据库都有自己的集群,常常的多: 我们要学习的就是 ...
- mysql集群(主从复制)实操
mysql集群(主从复制)实操 1.环境准备 1.准备5台全新的机器 192.168.31.23 master1 192.168.31.24 master2 192.168.31.89 s ...
- mysql集群一:主从复制,通过mysql-proxy做负载均衡
mysql集群架构方式很多,根据不同的需求做不一样的架构,简单一点的就是mysql的replication,也就是Mysql的复制功能,模式有:master-slaves,master-slaves- ...
- mysql 集群操作系统_高性能MySQL集群详解(二)
一.通过Keepalived搭建MySQL双主模式的高可用集群系统 1.MySQL Replication介绍: MySQL Replication是MySQL自身提供的一个主从复制功能,其实也就是一 ...
- haproxy keepalived_详解mycat+haproxy+keepalived搭建高可用负载均衡mysql集群
概述 目前业界对数据库性能优化普遍采用集群方式,而oracle集群软硬件投入昂贵,mysql则比较推荐用mycat去搭建数据库集群,下面介绍一下怎么用mycat+haproxy+keepalived搭 ...
- mysql 集群_MySQL之PXC集群搭建
一.PXC 介绍 1.1 PXC 简介 PXC 是一套 MySQL 高可用集群解决方案,与传统的基于主从复制模式的集群架构相比 PXC 最突出特点就是解决了诟病已久的数据复制延迟问题,基本上可以达到实 ...
- 「mysql优化专题」高可用性、负载均衡的mysql集群解决方案(12)
不可避免的是,使用MySQL时随着时间的增长,用户量以及数据量的逐渐增加,访问量更是剧增,最终将会使MySQL达到某个瓶颈,那么MySQL的性能将会大大降低.怎么办?前面已经讲过十一篇优化方案,接下来 ...
- mysql集群_MySQL集群
MySQL集群搭建之主从复制: 主从复制原理: 从库生成两个线程,一个I/O线程,一个SQL线程: i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) ...
- kubernetes怎么读_Kubernetes之有状态应用实践-搭建MySQL集群
零.前情纪要 上一遍文章Kubernetes集群搭建已经带大家成功搭建了Kubernetes集群,可能有不少人在搭建过程中对很多概念性的东西还是很模糊,接下来这篇文章将通过带领大家一起搭建一个高可用的 ...
最新文章
- LeetCode_97.交错字符串_没懂
- feign rest_与Feign客户轻松进行REST通信
- struts2值栈,OGNL表达式,interceptor
- QT 定时关机、共享内存、启动浏览器、浏览器前进后退刷新、进度条、设置浏览器标题、QML入门
- 解决Visual Studio 2008 下,打开.dbml(LINQ) 文件时,提示The operation could not be completed. 的问题。...
- Shuffle Cards(Rope大法)将一段区间的数字整体搬动
- 继承的作用是什么?看看下面这些例子吧!
- I/O模型+Nginx基本配置
- 金蝶盘点机PDA轻松扫码产品入库,生产型企业进销存条码管理软件
- 普中51单片机开发板笔记
- 武汉大学测绘学院工测带缓和曲线的圆曲线
- qq邮箱对方服务器退回,为什么我用QQ邮箱发邮件被退回来了?他说地 – 手机爱问...
- Typora 如何依次打小黑点,空心圆,实心框后恢复空心圆、小黑点
- javaSE探赜索隐之三<类与对象的爱恨情仇中>
- 赶紧来修炼内功发~内存函数详解大全-memcpy、memmove、memcmp
- vue实现微信扫码拨打电话
- mbedTLS(PolarSSL)简单思路和函数笔记(Client端)
- lingo子模型——数学模型4.7 例1 广告投入
- Qt编写自定义控件:唱片播放控件
- 聊聊苹果审核——App Store Review Guidelines
热门文章
- 斯坦福CS229机器学习课程的数学基础(线性代数)翻译完成
- 技术系列课|AI驱动的超分辨技术应用现状
- 互联网1分钟 |1227
- 一套高可用、易伸缩、高并发的IM群聊架构方案设计实践
- 【易创课堂】第2期开课啦,大包新年好礼成都等你
- 解决mac下webstorm编辑器识别less的问题
- 应该允许公司报复黑客吗?
- 【活动推荐】北京泛娱乐行业技术沙龙——新技术助力内容产业破局之道
- 5.34. PECL FAQ
- (--3198)2: Redirecting From A File( Piping and redirecting output