mariadb的读写分离
实验环境:CentOS7
设备:一台主数据库服务器,两台从数据库服务器,一台调度器
主从的数据库配置请查阅:http://www.cnblogs.com/wzhuo/p/7171757.html ;
[root@~ localhost]#yum install proxysql-1.3.6-1-centos7.x86_64.rpm mariadb-server #配置proxysql的配置文件
[root@~ localhost]# cat /etc/proxysql.cnf
mysql_variables=
{
#数据库的端口
interfaces="0.0.0.0:3306;/tmp/proxysql.sock"
#默认的数据库
default_schema="mydb" #定义需要调度的数据库
mysql_servers =
(
#设置三台数据库系统:写的数据库hostgroup为0;读的数据库组为1
{
address = "172.16.254.47" # no default, required . If port is 0 , address is interpred as a Unix Socket Domain
port = 3306 # no default, required . If port is 0 , address is interpred as a Unix Socket Domain
hostgroup = 0 # no default, required
status = "ONLINE" # default: ONLINE
weight = 1 # default: 1
compression = 0 # default: 0
# max_replication_lag = 10 # default 0 . If greater than 0 and replication lag passes such threshold, the server is shunned
},
{
address = "172.16.253.177"
port = 3306
hostgroup = 1
},
{
address= "172.16.252.182"
port= 3306
hostgroup= 1
max_connections=200
} #定义可登陆的用户(需要现在master数据库上进行授权
# 如
MariaDB [hellodb]> grant all on *.* to 'myadmin'@'172.16.%.%' identified by '123456'; #)
mysql_users:
(
{
username = "myadmin" # no default , required
password = "123456" # default: ''
default_hostgroup = 0 # default: 0
active = 1 # default: 1
default_schema="mydb"
}
#定义读写的组:
mysql_replication_hostgroups=
(
{
writer_hostgroup=0
reader_hostgroup=1
comment="test repl 1"
}
[root@~ localhost]#systemctl start proxysql.service
[root@~ localhost]#ss -ntl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:3306 *:*
LISTEN 0 128 127.0.0.1:6032 *:*
#测试:使用本机ip登陆:
[root@~ localhost]#mysql -h172.16.252.142 -umyadmin -p
MySQL [(none)]> create database testtest;
MySQL [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| hellodb |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
| testtest
#组0的数据库:
MariaDB [hellodb]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| hellodb |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
| testtest #组1的数据库;
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| hellodb |
| mydb |
| mysql |
| performance_schema |
| test |
| testdb |
| testtest
mariadb的读写分离的更多相关文章
- MariaDB MyCat实现读写分离(15)
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQ ...
- MariaDB 10 (MySQL DB) 多主复制并实现读写分离
----本文大纲 简介 资源配置 拓扑图 实现过程 ==================== 一.简介 MMM 即Master-Master Replication Manager for MySQL ...
- 基于Keepalived高可用集群的MariaDB读写分离机制实现
一 MariaDB读写分离机制 在实现读写分离机制之前先理解一下三种主从复制方式:1.异步复制:MariaDB默认的复制即是异步的,主库在执行完客户端提交的事务后会立即将结果返给给客户端,并不关心从库 ...
- 基于Mysql-Proxy 实现MariaDB 读写分离
一.Mysql-Proxy 简单介绍 MySQL-Proxy是一个处于你的client端和MySQL server端之间的简单程序,它可以监测.分析或改变它们的通信.它使用灵活,没有限制,常见的用途包 ...
- Mariadb 基于Mycat实现读写分离
环境:Mariadb主:192.168.200.129 Mariadb从:192.168.200.114 Mycat :192.168.200.112 (1) 安装jdk,先查看本机是 ...
- MySQL/MariaDB读写分离配置
DB读写分离描述 数据库的读写分离其实就是为了加减少数据库的压力:数据库的写入操作由主数据库来进行,读取操作由从数据库来进行操作.实现数据库读写分离技术是有很多方法的,在这里我就用一个比较简单的mys ...
- MariaDB主从复制和读写分离
一.基础环境 二.配置MariaDB服务 1.安装MariaDB # yum install -y mariadb mariadb-server # systemctl start mariadb # ...
- MySQL/MariaDB数据库的PROXY实现读写分离
MySQL/MariaDB数据库的PROXY实现读写分离 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.ProxySQL概述 1>.各家互联网公司读写分离的解决方案 m ...
- django+centos+mariadb读写分离完美实现(上)-mysql主从备份实现
首先画图一张,用来展示今天要做的事情,读写分离,个人理解就是使用mysql主从备份的原理,让两个数据库同时为自己提供服务.其中主库负责数据保存,从库负责数据展示,可以一主一从,也可以一主多从.从而降低 ...
随机推荐
- restful规范和restframework框架
什么是接口? 接口可以理解为url就是接口. 那么在其他语言里面接口也可以是约束类 restful规范是什么? RESTful是目前最流行的一种互联网软件架构.它结构清晰.符合标准.易于理解.扩展方便 ...
- MyBatis -- 一步步教你使用MyBatis
1.建立开发环境 1.1 创建项目,java项目或者javaweb项目均可,如图: 1.2 加入所须要的jar包到项目lib文件夹下 一个MyBatis-3.2.4.jar包 一个驱动包mysql ...
- linux c编程:Posix消息队列
Posix消息队列可以认为是一个消息链表. 有足够写权限的线程可以往队列中放置消息, 有足够读权限的线程可以从队列中取走消息 在某个进程往一个队列写入消息前, 并不需要另外某个进程在该队列上等待消息的 ...
- IaaS,PaaS,Saas 云服务的介绍
云服务只是一个统称,可以分成三大类. IaaS:基础设施服务,Infrastructure-as-a-service PaaS:平台服务,Platform-as-a-service SaaS:软件服务 ...
- python webserver客户端
1.库 suds库,只能做webserver客户端,轻量化,使用方便.安装使用pip. 2.使用 如有webserver情况如下: url:http://10.110.35.41:8980/wsser ...
- zabbix监控入门初步
1.Zabbix是什么? Zabbix是一个基于Web界面的分布式系统监控的企业级开源软件.可以监视各种系统与设备的参数,保障服务器及设备的安全运营. 2.Zabbix的功能和特性 (1)安装与配置简 ...
- R语言数据管理(三):数据读入
R的数据读入非常灵活,即可以在R软件中直接输入,也可以读入外部数据. 一.直接输入数据 ①c()函数 ②scan()函数 其功能类似c()函数,scan()实际上是一种键盘输入数据函数.当输入scan ...
- client = new DatagramSocket(LocalPort) 是说端口已经被占用的意思
ok 现在遇到一个问题,client = new DatagramSocket(LocalPort) 是说端口已经被占用的意思 ref:!!https://community.oracle.com/t ...
- mysql高可用研究(一) 主从+MHA架构
最近在研究mysql的高可用架构,自己想总结下常用的高可用方案都有哪些.有哪些优缺点以及应用的场景?搞得是头昏脑涨,天昏地暗,看了诸多资料,每次都觉得公说公有理婆说婆有理.其实嘛,大家说的都有一定的道 ...
- F5与Ctrl+F5及地址栏输入地址回车
按F5等同于点击页面地址栏的刷新图标. 地址栏输入地址然后回车: 根据缓存内容是否过期决定是否发送请求给服务端 F5: 浏览器无论如何都得发送请求给服务端,包含If-Modified-Since/If ...