mysql-proxy 简介

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: # 背景 今天同事分享的主题就是mysql-proxy,于是下来自己了解下,不求精通,只求知道这个玩意 # 简介 mysql-proxy是mysql官方提供的mysql中间件服务,上游可接入若干个mysql-client,后端可连接若干个mysql-server。

# 背景

今天同事分享的主题就是mysql-proxy,于是下来自己了解下,不求精通,只求知道这个玩意

# 简介

mysql-proxy是mysql官方提供的mysql中间件服务,上游可接入若干个mysql-client,后端可连接若干个mysql-server。

它使用mysql协议,任何使用mysql-client的上游无需修改任何代码,即可迁移至mysql-proxy上。

mysql-proxy最基本的用法,就是作为一个请求拦截,请求中转的中间层:

进一步的,mysql-proxy可以分析与修改请求。拦截查询和修改结果,需要通过编写Lua脚本来完成。

mysql-proxy允许用户指定Lua脚本对请求进行拦截,对请求进行分析与修改,它还允许用户指定Lua脚本对服务器的返回结果

进行修改,加入一些结果集或者去除一些结果集均可。

 

所以说,根本上,mysql-proxy是一个官方提供的框架,具备良好的扩展性,可以用来完成:

  • sql拦截与修改

  • 性能分析与监控

  • 读写分离

  • 请求路由

 

# 用途

1. 分享的同事使用proxy的目的是,因为测试环境碰到了测试/开发同学不小心全表update/delete操作,导致测试数据异常,从而影响项目进度,于是他接入mysql-proxy对sql语句进行了拦截检查,并可以将sql语句发送到DBA提供的一个sql review服务中去判断sql语句是否有问题
2. 之前还有这么一段经历,之前订单经过拆库操作,订单表分为了128个库,是根据订单号去拆库的,然而不是所有的表都有订单号(历史架构的锅),如有个需求是根据手机号码去查询订单号,导致要遍历查询128去判断是否存在,那么就需要proxy介入,当时使用的是阿里的mycat中间件

# 不足

由于加入了一层proxy会导致网络请求的增加消耗,所以性能造成一定的影响;

虽千万人,吾往矣!
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7月前
|
关系型数据库 MySQL 数据库
Mysql基础第五天,Mysql简介
Mysql基础第五天,Mysql简介
48 0
Mysql基础第五天,Mysql简介
|
关系型数据库 MySQL 数据库
阿里云rds简介和如何使用
阿里云关系型数据库服务(RDS)是一种在云端提供的高可用性、可扩展、安全的关系型数据库服务。它支持多种数据库引擎,包括MySQL、PostgreSQL、Oracle等,并提供了丰富的监控、备份、恢复、容灾等功能,帮助企业快速构建和运维高可用、高性能的数据库系统。
2272 0
|
7月前
|
SQL 关系型数据库 MySQL
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
MySQL技能完整学习列表3、SQL语言基础——1、SQL(Structured Query Language)简介——2、基本SQL语句:SELECT、INSERT、UPDATE、DELETE
120 0
|
2月前
|
SQL 分布式计算 关系型数据库
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
71 3
|
2月前
|
Oracle 关系型数据库 MySQL
Mysql(1)—简介及Windows环境下载安装
MySQL 是一个流行的关系型数据库管理系统(RDBMS),基于 SQL 进行操作。它由瑞典 MySQL AB 公司开发,后被 Sun Microsystems 收购,现为 Oracle 产品。MySQL 是最广泛使用的开源数据库之一,适用于 Web 应用程序、数据仓库和企业应用。
60 2
|
4月前
|
存储 关系型数据库 MySQL
[mysql]MGR简介与部署
[mysql]MGR简介与部署
|
5月前
|
SQL 安全 关系型数据库
MySQL的binlog日志的简介与查看
MySQL的binlog日志的简介与查看
703 4
|
6月前
|
存储 SQL 关系型数据库
Mysql简介
是由瑞典的Mysql AB公司开发的; 是Oracle旗下的一款产品; 是当下最流行的关系型数据库管理系统之一; 是web应用存储数据最好的DBMS之一; 是开源的,同时也是使用标准SQL语言操作数据库的; 二、使用数据库的好处 实现数据的持久化; 使用完整的管理系统来完成对数据的管理; 便于对数据的操作,例如:增删改查; 三、数据库的相关概念 DB:database的简称,用于存储数据的仓库,它采取了一系列有组织的数据;
46 4
|
6月前
|
存储 安全 关系型数据库
|
6月前
|
SQL 安全 关系型数据库
MySQL数据库——事务-简介、事务操作、四大特性、并发事务问题、事务隔离级别
MySQL数据库——事务-简介、事务操作、四大特性、并发事务问题、事务隔离级别
100 1

推荐镜像

更多