| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> mysql读写分离 -> 正文阅读 |
|
[大数据]mysql读写分离 |
一、读写分离原理读写分离就是只在主服务器上写,只在从服务器上读。基本的原理是让主数据库处理事务性查询, 而从数据库处理 select 查询。数据库复制被用来把主数据库上事务性查询导致的变更同步到集群 中的从数据库。 二、为什么要做读写分离因为数据库的“写”(写10000条数据可能要3分钟)操作是比较耗时的。 但是数据库的“读”(读10000条数据可能只要5秒钟)。 所以读写分离,解决的是,数据库的写入,影响了查询的效率 三、实现方式
4、Amoeba: 是一个以MySql为底层数据存储,并对应提供MySQL协议接口的proxy(代理),外号变形虫 读取请求发送给从服务器是,采用轮询调度算法 amoeba使用的java语言编写,配置文件为xml amoeba主要负责对外的一个代理IP 访问这个IP时,发送的请求为“写”请求,则会转给主服务器 当发送的请求为“读”时,会通过调度转发给从服务器,使用轮询算法,轮流分配给两台从服务器 四、读写分离实验 Amoeba服务器 ?192.168.174.11 Master ?服务器 ??192.168.174.12 Salve ???服务器 ??192.168.174.13 Salve ???服务器 ??192.168.174.14 ? ? ? ? ? ?? 客户端 ? 192.168.174.10 在amoeba服务器配置 将这俩个文件上传到/opt目录下 ? ./jdk-6u14-linux-x64.bin 按空格一直到底输入yes 然后等待 安装完成后 ? vim /etc/profile 进入添加以下 ? 保存退出 source /etc/profile??##刷新环境变量 查看版本 Amoeba安装 ?给目录赋权,并以绝对路径启动,显示如下为成功 ? 在master slave1 slave2机器mysql上开放权限给amoeba访问 grant all on *.* to 'test'@'192.168.174.%' identified by '123.com'; 三台一致操作 再回到amoeba服务器配置 先给配置文件备份,再进入修改 ? 修改对应如下? 保存退出 修改下一个配置文件 ? 保存退出 开启服务后台运行 /usr/local/amoeba/bin/amoeba start& 再开台终端查看服务是否启动? 测试环境配置 客户端下载mariadb yum -y install mariadb systemctl stop firewalld setenforce 0 远程登陆amoeba服务器 ? 测试1 amoeba服务器是否关联后端mysql #客户端进入数据库创建表 Create database ddd; use ddd; 在创建一个表 #在三台mysql服务器中查看是否有此表(amoeba关联) use ddd; show tables 客户端创建好,去master和倆台从服务器查看? 测试2 #2台从服务器关闭主从同步,测试amoeba读写分离 stop slave; #客户端插入数据 Master可以查到数据 Slave从服务器看不到数据 ? 可以看到从服务器的表内无数据 客户端机器在xy表内插入数据 在倆台从服务器查看? 从服务器无数据 测试3 读写分离架构,对于读的任务是怎么操作的测试方式: 分别在slave1和salve2 SSS数据库中njnj表插入不同数据, 然后使用客户端进select查询,观测结果: 在客户端查看俩次 ? ? ? ? ? ? ? ? ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 2:41:32- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |