mycat主从复制配置
三、搭建读写分离
我们通过 Mycat 和 MySQL 的主从复制配合搭建数据库的读写分离,实现 MySQL 的高可用性。
我们将搭建:一主一从、双主双从两种读写分离模式
1.搭建一主一从
一个主机用于处理所有写请求,一台从机负责所有读请求,架构图如下
1.1、 搭建 MySQL 数据库主从复制
① MySQL 主从复制原理
② 主机配置(host79)
修改配置文件:vim /etc/my.cnf
#主服务器唯一ID
server-id=1
#启用二进制日志
log-bin=mysql-bin
#设置不要复制的数据库(可设置多个)
binlog-ignore-db=mysql binlog-ignore-db=information_schema
#设置需要复制的数据库
binlog-do-db=需要复制的主数据库名字
#设置logbin格式
binlog_format=STATEMENT
binlog 日志三种格式
③ 从机配置(host80)
修改配置文件:vim /etc/my.cnf
#从服务器唯一ID
server-id=2
#启用中继日志
relay-log=mysql-relay
④重启服务
⑤连接数据库在主机建立账户并授权
#在主机MySQL里执行授权命令
GRANT REPLICATION SLAVE ON . TO ‘slave’@’%’ IDENTIFIED BY ‘789123’;
⑥查看主机状态
show master status;
±-----------------±---------±-------------±-------------------------±------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
±-----------------±---------±-------------±-------------------------±------------------+
| mysql-bin.000001 | 764 | mystudent | mysql,information_schema | |
±-----------------±---------±-------------±-------------------------±------------------+
记录file 和Position
⑦从机创建备机创建从主机地址用户名密码和开始复制的地方:
CHANGE MASTER TO MASTER_HOST=‘192.168.119.131’,
MASTER_USER=‘slave’, MASTER_PASSWORD=‘789123’,
MASTER_LOG_FILE=‘mysql-bin.000001’,MASTER_LOG_POS=764;
⑧启动从机
start slave;
查看从机状态:
Show slave status;(两个yes则配置好了)
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
⑨测试
1.主机创建配置的复制的库(create database mystudent)
2.创建表(ctreate table student…)
3.插入数据(insert into student values(…)…)
4.从机中查看库和表能有主机创建的数据。
⑩停止从机,重启主机
Stop salve;
Reset master;
1.2 修改 Mycat 的配置文件 schema.xml
1.2.1设置主从复制的库
#### ②修改的balance属性,通过此属性配置读写分离的类型 select user() ## 负载均衡类型,目前的取值有4 种:
(1)balance=“0”, 不开启读写分离机制,所有读操作都发送到当前可用的 writeHost 上。
(2)balance=“1”,全部的 readHost 与 stand by writeHost 参与 select 语句的负载均衡,简单的说,#当双主双从 模式(M1->S1,M2->S2,并且 M1 与 M2 互为主备),正常情况下,M2,S1,S2都参与 select #语句的负载均衡。
(3)balance=“2”,所有读操作都随机的在 writeHost、readhost
上分发。
(4)balance=“3”,所有读请求随机的分发到 readhost 执行,writerHost 不负担读压力
③插入数据
insert into student1 values(‘5’,@@hostname); #设置不一样的主机名详情请看:
#https://blog.csdn.net/qq_32077121/article/details/103754110,这样主从表就不一样了
④启动mycat,查看表中数据,会发现随机读主机和从机的数据不一样。
mycat主从复制配置相关推荐
- 基于mysql的主从复制之Mycat简单配置和高可用
what-mycat 1.Mycat就是MySQL Server,而Mycat后面连接的MySQL Server,就好象是MySQL的存储引擎,如InnoDB,MyISAM等. 因此,Mycat本身并 ...
- 【Mycat】Mycat主从复制,垂直分库
1. 什么是Mycat. Mycat是数据库中间件,所谓中间件,是一类连接软件组件和应用的计算机软件,以便软件各部件之间的通信. 例如 tomcat,web的中间件.而数据库中间件是连接Java应用程 ...
- 主从配置_MySQL主从复制配置详解
MySQL版本5.5.58 第一步配置主机 主机配置如下: server-id = 1 #服务器id (主从必须不一样) log_bin = mysql-bin #打开日志(主机需要打开), 这个my ...
- MySQL主从复制配置过程(一主一从模式)
1.概述 MySQL 的主从复制又叫 Replication.AB 复制.至少需要两个 MySQL 服务(可以是同一台机器,也可以是不同机器之间进行). 比如A服务器做主服务器,B服务器做从服务器,在 ...
- MySQL5.6 主从复制配置
2019独角兽企业重金招聘Python工程师标准>>> MySQL5.6 主从复制配置 转自本人独立博客:http://www.wangboak.com/2014/10/mysql5 ...
- mysql之数据库主从复制配置报错1677
mysql之数据库某表字符集和数据库字符集不一致导致主从复制配置报错1677 mysql数据库中某张表字符集是utf8而my.cnf设置的数据库的字符集是utf8mb4,导致在配置主从复制时,报如下错 ...
- Mysql 8主从复制配置图解
Mysql 8主从复制配置图解 声明 本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理.本文主要介绍mysql的主从的配置. 注:1 当前主服务 ...
- rhel6系统中,mysql 5.6复制新特性下主从复制配置[基于GTID]
1.mysql5.6在复制方面的新特性: (1).支持多线程复制:事实上是针对每个database开启相应的独立线程,即每个库有一个单独的(sql thread).针对这样的改进,如果我们想实现多线程 ...
- mysql主从配置 51cto_Mysql主从复制配置
Mysql主从复制配置 本文只是介绍安装和配置,关于一些名词和原理,请参考mysql手册. Mysql的复制最少需要两台mysql服务器,一台主(主机名master,ip为192.168.20.204 ...
最新文章
- C++ 笔记(06)— 变量作用域(局部变量、全局变量、静态局部变量)
- FPGA设计心得(1)真双口RAM使用及其仿真问题记录
- C++类模板template <class T>简单使用方法
- 【转】RNN、LSTM、Transformer、BERT简介与区别
- Groovy全攻略--嵌入篇
- 配置java时找不到匹配项,检索项目的父项时出错:找不到与给定名称匹配的资源...
- vue 共用新增和修改验证分离
- paip.uapi 获取网络url内容html 的方法java php ahk c++ python总结.
- Mendix中Rest服务使用-调取服务器接口
- 字符串进阶——谈谈后缀全家桶(1) 后缀树
- 笔记本升级win10后键盘失灵解决办法
- Horner法则(霍纳法则)及其C语言描述
- linux安装Openssl步骤详解_问题:OpenSSL: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:un
- 华为汽车BU业务布局及分析框架
- mysql数据模型三要素_E-R模型的三要素为实体、属性、联系-智慧树数据库原理章节答案...
- oracle基础教学:如何设置外键
- 如何锁自己的台式计算机,台式机键盘如何解锁
- 长安大学计算机考研难度如何,长安大学考研难吗?一般要什么水平才可以进入?...
- MATLAB之rand、randn、randi和randperm
- Unity -- 按钮的使用