MYSQL PROXYSQL的基本原理是什么

介绍

这篇文章主要介绍“MYSQL, PROXYSQL的基本原理是什么”,在日常操作中,相信很多人在MYSQL, PROXYSQL的基本原理是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答“MYSQL, PROXYSQL的基本原理是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

PorxySQL作为使用MYSQL的一种中间件,为什么是目前比较流行的中间件之,一个人总结有以下几点。

1友好的操作界面,操作PROXYSQL基本上懂得MYSQL的语法即可,虽然是基于SQLLITE这样数据库,但基本上操作中大部分的配置都不涉及重启,仅仅需要将配置上传到内存中即刻生效。

2作为判断MYSQL各种方式的高可用中的主、支持的种类很多,下,尼古拉斯,PXC,基本上市面上的MYSQL通用的高可用方式都支持,并且对于经理的多主也有相关的配置选项。

3配置简单,如果不需要特殊的配置,则仅仅需要三步,PROXYSQL就可以被配置成一个简单的支持MYSQL高可用的访问的通路。

既然PROXYSQL有这么多的好处,并且前两篇也讲述了简单的PROXYSQL尼古拉斯,PROXYSQL INNODB集群两种的配置的方式。今天就需要来看看到底PROXYSQL的一些原理和配置的一些细节,以及最后做一个压力方面的测试,看看PROXYSQL本身可以承受的访问压力。

 MYSQL PROXYSQL的基本原理是什么

 MYSQL PROXYSQL的基本原理是什么

实际当中我们操作的命令大部分都在内存中,而主要这个数据库就是人机交互的内存的接口。大部分的命令都是在内存中操作以后,上传到内存和写入到磁盘当中的.Disk其实就是PROXYSQL的配置的保存数据的位置,如果丢失或损坏则在PROXYSQL重启后会遇到配置丢失的问题,所以定期的去备份数据库对PROXYSQL是有必要的。

其中有四个重要的表

<李>

mysql_servers ,PROXYSQL接受MYSQL的数据库服务器的列表

<李>

mysql_users, PROXYSQL连接MYSQL的用户列表,这些用户必须已经建立在MYSQL中。

<李>

mysql_query_rules  PROXYSQL 对于查询的一些设置的规则

<李>

global_variables 存储展现当前系统正在应用的系统的变量

相对于上面的四个表,下面的命令集合就是在配置完相关的表后,需要将内存操作的数据,下载用disk 和upload 用运行时


MYSQL用户负载运行时,

MYSQL用户保存到磁盘;

MYSQL服务器负载运行时,

MYSQL服务器保存到磁盘;

加载MYSQL查询规则运行时;

MYSQL查询规则保存到磁盘;

加载MYSQL运行时变量;

MYSQL变量保存到磁盘;

,负载管理运行时变量;

管理变量保存到磁盘;

另外一个问题是,什么变量是必须通过重启PROXYSQL才能进行改变的

MYSQL接口,mysql-threads和mysql-stacksize这三个变量是必须通过重启才能生效的。

关于查询缓存实际上MYSQL本身在5。X时是有相关的查询缓存但实际上使用的并不常见,基本上都属于关闭的状态.PROXYSQL也具备查询缓存主要是针对高频的查询中的结果的返回,有人可能要说,其实这个功能也是鸡肋,其实我对这个看法是一半同意

一个功能是否是鸡肋要看他应用的场景和被需要的情况,底下图中的情况在有

 MYSQL PROXYSQL的基本原理是什么”>些场景中是常见的使用的方式,,那换一个思维的方式,如果将前面的复述,换成PROXYSQL查询缓存如何,部分简单的功能也是可以替换的。</p> <p> MYSQL查询缓存为所有表提供了一个通用的缓存空间,与此不同的是,在proxyysql查询缓存中,我们必须定义缓存的流量。这是通过定义查询规则来完成的,这些规则匹配将被缓存的流量,并为缓存的结果设置一个“cache_ttl”。</p> <p>通过下面的语句在PROXYSQL中查询</p> <p>,选择count_star sum_time, hostgroup,消化,从stats_mysql_query_digest_reset ORDER BY sum_time DESC digest_text; </p> <p> <img src=

我们找到频繁运行语句

插入mysql_query_rules (rule_id,活跃、消化、cache_ttl)值(1 1 & # 39;0 xac80a5ea0101522e& # 39;, 5000 1),

然后我们将这条语句输入到PROXYSQL中

MYSQL PROXYSQL的基本原理是什么