proxymysql的安装与应用
具体的资料我们可以查看官方的文档:https://github.com/sysown/proxysql/wiki/ProxySQL-Configuration
推荐下载最新的Proxysql。
下面跟大家一起来安装和使用我们的proxy的一个简单使用。
首先我给大家说说Proxy的一些理论知识,说到中间件,首先我们关注的可定是自带连接池,能读写分离,能自动的分库分表等等,其它的就不说了,反正Proxy在每个公司玩的花样都蛮多的。我就跟大家说说我印象中的ProxySQL:server可以进行分组、 读写分离 动态指定某一个SQL进行Cache、 故障切换(依赖于他的配置动态加载)、配置的动态更新,不具备故障选主(可以结合keepalived )Proxy的一些其他优点:
1.SQL 的归一化统计, 2 .可以在6033 端口上进行数据的一些统计 3 prepare
connection pool的概念:1 连接池保护 2允许延迟最大值(max_replication_lag)3对响应延迟 (max_latency_ms)
环境说明:我在我的虚拟机上面安装了2个MySQL的实例. 端口一个是3306 ,另外一个是3307
1:启动我们的proxysql
service proxysql start
小结:和MySQL的很相似,我们启动一个进程,然后fork出一个子进程,父进程负责监控子进程运行状况如果挂了则拉起来,子进程负责执行真正的任务。
ProxySQL也是有管理接口和客户端接口,通过配置文件/etc/proxysql.cnf可以看到管理和客户端接口的信息
2 查看端口号
Active Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 0 *:sunrpc *:* LISTENtcp 0 0 *:6032 *:* LISTENtcp 0 0 *:6033 *:* LISTENtcp 0 0 *:ssh *:* LISTENtcp 0 0 localhost:ipp *:* LISTENtcp 0 0 *:4505 *:* LISTENtcp 0 0 localhost:smtp *:* LISTENtcp 0 0 *:4506 *:* LISTENtcp 0 0 *:43709 *:* LISTENtcp 0 0 pxc1:ssh 192.168.5.209:51899 ESTABLISHEDtcp 0 0 10.0.2.15:54410 64.145.88.40:http ESTABLISHEDtcp 0 0 *:46667 *:* LISTEN
/usr/local/mysql/bin/mysql -h127.0.0.1 -uadmin -padmin -P6032
[root@pxc1 etc]# /usr/local/mysql/bin/mysql -h127.0.0.1 -uadmin -padmin -P6032mysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 1Server version: 5.7.20 (ProxySQL Admin Module)Copyright (c) 2009-2017 Percona LLC and/or its affiliatesCopyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.
"admin@127.0.0.1:6032 [(none)]>show databases;+-----+---------+-------------------------------+| seq | name | file |+-----+---------+-------------------------------+| 0 | main | || 2 | disk | /var/lib/proxysql/proxysql.db || 3 | stats | || 4 | monitor | |+-----+---------+-------------------------------+
use mainshow create table global_variables;
"admin@127.0.0.1:6032 [main]>show create table global_variables;+------------------+----------------------------------------------------------------------------------------------------------------------+| table | Create Table |+------------------+----------------------------------------------------------------------------------------------------------------------+| global_variables | CREATE TABLE global_variables (variable_name VARCHAR NOT NULL PRIMARY KEY,variable_value VARCHAR NOT NULL) |+------------------+----------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)
select * from mysql_servers;
2:配置用户
[root@pxc1 ~]# /usr/local/mysql/bin/mysql -h127.0.0.1 -uczg -P6033 -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 3Server version: 5.7.20 (ProxySQL)Copyright (c) 2009-2017 Percona LLC and/or its affiliatesCopyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
"admin@127.0.0.1:6032 [monitor]>select * from stats_mysql_query_digest;+-----------+------------+----------+--------------------+----------------------------------+------------+------------+------------+----------+----------+----------+| hostgroup | schemaname | username | digest | digest_text | count_star | first_seen | last_seen | sum_time | min_time | max_time |+-----------+------------+----------+--------------------+----------------------------------+------------+------------+------------+----------+----------+----------+| 100 | czg | czg | 0x3765930C7143F468 | select * from t1 | 12 | 1510032943 | 1510035665 | 20094 | 576 | 7004 || 100 | czg | czg | 0xF62E7C5ACFD919B2 | insert into t1 values (?,?) | 2 | 1510033783 | 1510034106 | 2583 | 1157 | 1426 || 100 | czg | czg | 0x54C6E5B16410BDE5 | delete from t1 where id=? | 1 | 1510039448 | 1510039448 | 744 | 744 | 744 || 100 | czg | czg | 0x226CD90D52A2BA0B | select @@version_comment limit ? | 1 | 1510032930 | 1510032930 | 0 | 0 | 0 || 101 | czg | czg | 0x4DE01DE1A91A7A02 | select * from t1 where id>? | 1 | 1510036110 | 1510036110 | 1347 | 1347 | 1347 || 1 | czg | root | 0x226CD90D52A2BA0B | select @@version_comment limit ? | 1 | 1510026604 | 1510026604 | 0 | 0 | 0 || 1 | czg | root | 0x99531AEFF718C501 | show tables | 2 | 1510026649 | 1510026878 | 20001881 | 10000756 | 10001125 || 1 | czg | root | 0xBA1ADF966D0B70F4 | show databses | 1 | 1510026623 | 1510026623 | 10001112 | 10001112 | 10001112 || 1 | czg | root | 0x02033E45904D3DF0 | show databases | 2 | 1510026897 | 1510026946 | 20000713 | 10000051 | 10000662 || 100 | czg | czg | 0x6F60EEB7FFFC144D | insert into values (?,?) | 1 | 1510034097 | 1510034097 | 547 | 547 | 547 || 1 | czg | root | 0x594F2C744B698066 | select USER() | 1 | 1510026604 | 1510026604 | 0 | 0 | 0 || 100 | czg | czg | 0x620B328FE9D6D71A | SELECT DATABASE() | 1 | 1510032938 | 1510032938 | 523 | 523 | 523 || 100 | czg | czg | 0x3DCE919B79C9576C | select * from t1 where id=? | 1 | 1510033820 | 1510033820 | 1570 | 1570 | 1570 || 100 | czg | czg | 0x28652853E5DCDAB9 | select * from t1 where id =? | 1 | 1510033203 | 1510033203 | 540 | 540 | 540 || 100 | czg | czg | 0x4DE01DE1A91A7A02 | select * from t1 where id>? | 1 | 1510034958 | 1510034958 | 1281 | 1281 | 1281 || 100 | czg | czg | 0x594F2C744B698066 | select USER() | 1 | 1510032930 | 1510032930 | 0 | 0 | 0 || 100 | czg | czg | 0x9ED2186F2E9C392C | update t1 set name=? where id=? | 2 | 1510034987 | 1510036037 | 3477 | 1410 | 2067 || 101 | czg | czg | 0x9FF6DCAA8E5CFDBB | select * from t3 | 1 | 1510035978 | 1510035978 | 3964 | 3964 | 3964 || 100 | czg | czg | 0x02033E45904D3DF0 | show databases | 1 | 1510032934 | 1510032934 | 4791 | 4791 | 4791 || 101 | czg | czg | 0x3DCE919B79C9576C | select * from t1 where id=? | 1 | 1510036074 | 1510036074 | 947 | 947 | 947 || 100 | czg | czg | 0x340305CD48735BD6 | insert into t1 names (?,?) | 1 | 1510039342 | 1510039342 | 521 | 521 | 521 || 101 | czg | czg | 0x3765930C7143F468 | select * from t1 | 3 | 1510035957 | 1510039371 | 5215 | 452 | 3027 || 100 | czg | czg | 0x3CE4C46484576DFD | insert into t1 values(?,?) | 2 | 1510039362 | 1510039411 | 2422 | 865 | 1557 |+-----------+------------+----------+--------------------+----------------------------------+------------+------------+------------+----------+----------+----------+
select * from stats_mysql_query_digest_reset;
proxymysql的安装与应用的更多相关文章
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法
如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...
- Sublime Text3安装JsHint
介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...
- Fabio 安装和简单使用
Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...
- gentoo 安装
加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- 【原】nodejs全局安装和本地安装的区别
来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...
- tLinux 2.2下安装Mono 4.8
Tlinux2.2发行版基于CentOS 7.2.1511研发而成,内核版本与Tlinux2.0发行版保持完全一致,更加稳定,并保持对Tlinux2.0的完全兼容.Mono 4版本要求CentOS 7 ...
随机推荐
- 大三小学期 Android开发的一些经验
1.同一个TextView几种颜色的设置: build=(TextView)findViewById(R.id.building); SpannableStringBuilder style = ne ...
- 洛谷 P1017 进制转换
推荐洛谷 题目描述 我们可以用这样的方式来表示一个十进制数: 将每个阿拉伯数字乘以一个以该数字所处位置的(值减1)为指数,以10为底数的幂之和的形式.例如:123可表示为 1*10^2+2*10^1+ ...
- python数据库连接池设计
一.背景: 传统访问资源,一般分为一下几个步骤: 1.实例数据驱动对象与链接资源.2.实例操作资源游标.3.获取资源.4.关闭链接资源. 根据以上步骤,我们可以很简单使用这个原始方法来访问资源为我们业 ...
- loadrunner录制上传文件,但是回放失败
用Loadrunner录制上传文件,脚本回放时发现,文件没有上传成功,检查脚本发现脚本中没有上传文件的路径. 脚本录制时选择的协议,如果说是socket协议,则不需要上传文件的路径,Loadrunne ...
- php基础知识(三)---常用函数--2017-04-16
常用函数如下:(红色为重点) 1.取字符串的长度 echo strlen("hello"); 2.echo strcmp("字符串1","字符串2&q ...
- cesium 显示北京时间
cesium用的JulianDate:代表天文朱利安时间,用的是世界协调时,比北京时间晚8个小时,所以在源代码中给默认的时间格式加上8小时. 应该会有更好的办法,希望有大神可以告诉我!!!!!!!!! ...
- Java基本包装类型
基本类型的对象包装,也就是将常用的基本数据类型包装成对象 byte Byte short Short int Integer long Long boolean Boolean float Float ...
- 【Python】 配置解析ConfigParser & 命令行参数解析optparser
ConfigParser ConfigParser包装了配置文件的读取和写入,使得python程序可以更加轻松操作配置文件了.这里的配置文件是指.ini的那种文件,基本格式如下 [section_a] ...
- color 圆盘染色
Color 圆盘染色 题目大意:给你一个圆盘,等分成n个扇形,有m种颜色,每两个相邻的扇形不能相交,求染色方案数. 注释:m,n<=$10^6$. 想法:这题是小圆盘染色的加强版(小圆盘染色?) ...
- 【Spring源码深度解析学习系列】核心类介绍(一)
一.DefaultListableBeanFactory 首先看一下结构 由图可知XmlBeanFactory继承自DefaultListableBeanFactory,而DefaultListabl ...