5-5-13-ProxySQL+PXC.md
本文演示ProxySQL代理PXC(Percona XtraDB Cluster)的方法 , 不涉及原理 , 纯配置过程 , 所以如有不懂之处 , 请先掌握相关理论。 ProxySQL要代理PXC , 需要使用ProxySQL额外提供的脚本/usr/sh
本文演示ProxySQL代理PXC(Percona XtraDB Cluster)的方法 , 不涉及原理 , 纯配置过程 , 所以如有不懂之处 , 请先掌握相关理论。 ProxySQL要代理PXC , 需要使用ProxySQL额外提供的脚本/usr/sh
在拓扑结构中 , ProxySQL部署在应用程序和MySQL集群的中间位置。应用程序向ProxySQL发起SQL语句 , ProxySQL分析收到的SQL语句 , 进行匹配、重写等操作 , 然后路由给后端MySQL集群中的某实例。
multiplexing , 作用是将语句分多路路由。开启了multiplexing开关 , 读/写分离、按规则路由才能进行。但有时候 , 有些语句要求路由到同一个主机组 , 甚至是同一个主机组中的同一个节点上。这时会自动禁用multiplexing。禁用multiplexing后 , 语句会根据同
1. 理解链式规则 在mysql_query_rules表中 , 有两个特殊字段"flagIN"和"flagOUT" , 它们分别用来定义规则的入口和出口 , 从而实现链式规则(chains of rules)。
1.不同类型的读写分离 数据库中间件最基本的功能就是实现读写分离 , ProxySQL当然也支持。而且ProxySQL支持的路由规则非常灵活 , 不仅可以实现最简单的读写分离 , 还可以将读/写都分散到多个不同的组 , 以及实现分库sharding(分表sha
ProxySQL支持查询缓存的功能 , 可以将后端返回的结果集缓存在自己的内存中 , 在某查询的缓存条目被清理(例如过期)之前 , 前端再发起同样的查询语句 , 将直接从缓存中取数据并返回给前端。如此一来 , ProxySQL处理的性能会大幅提升 , 也会大幅减轻后端MySQL Server的压力。
1. 为什么要重写SQL语句 ProxySQL在收到前端发送来的SQL语句后 , 可以根据已定制的规则去匹配它 , 匹配到了还可以去重写这个语句 , 然后再路由到后端去。 什么时候需要重写SQL语句?
1. 关于ProxySQL路由的简述 当ProxySQL收到前端app发送的SQL语句后 , 它需要将这个SQL语句(或者重写后的SQL
1. 配置后端节点前的说明 为了让ProxySQL能够找到后端的MySQL节点, 需要将后端的MySQL Server加入到ProxySQL中。P
1. ProxySQL的线程 ProxySQL由多个模块组成 , 是一个多线程的daemon类程序。每个模块都有一个或多个线程去执行任务。 例如 , 以下是刚启动ProxySQL时的进程情况 , 一个main进程