上周就看到了mysql-proxy出来的消息,今天下午才抽空体验了一下
1. 编译-安装
http://forge.mysql.com/wiki/MySQL_Proxy下载mysql-proxy的代码,
./configure报错,找不到lua包,然后下lua包,再./confgure,又报
错,找不到glib,再去下glib,这次ok了,make下来生成了一个
mysql-proxy的可执行文件,执行一下./mysql-proxy --help有help信息
输出,这一步搞定,看了一下文档,依赖的包:
libevent lua glib mysqlclient
2. 运行,配置
主页上有个getting started,粗看了一遍,没有配置文件,就一个mysql
-proxy可执行文件加上执行参数(比较爽),
主要的执行参数:
--admin-address=<ip:port> admin server的ip:port,admin server是
一个伪代理,可以用mysql客户端连过来,但只支持一些特殊的查看proxy
状态的一些指令
--proxy-address=<ip:port> 代理的ip:port,默认是0.0.0.0:4040
--proxy-read-only-address=<ip:port> 代理的只读连接ip:port 默认0.0.0.0:4042(试了一下好像没有作用)
--proxy-backend-addresses=<ip:port> db server的地址,默认是127.0.0.1:3306,可以指定多个来做failover和load balance
--proxy-profiling enable profiling of queries (没试)
--proxy-fix-bug-25371 fix bug #25371 (mysqld > 5.1.12) for older libmysql versions (没试)
--proxy-lua-script=<file> lua脚本文件
运行./mysql-proxy --admin-address=127.0.0.1:4041 &,这样代理服务器运行在4040端口,admin服务器在
127.0.0.1:4041,转发db server为127.0.0.1:3306,没有lua-script
然后运行mysql --host 127.0.0.1 --port 4040
show database; use mysql; select user,代理工作正常。
3. 持续工作
-学习lua脚本
-测试多个backend时候的failover 和load balance的行为
-如何使用lua来实现后端多个切分的数据库对前端client的透明(用proxy的主要目的)
-如何达到client-proxy大量连接 proxy-db少量连接,来增加db的并发能力,目前看
好像是client-proxy-db一对一连接的方式
分享到:
相关推荐
**Sharding-Proxy:MySQL 分库中间件** Sharding-Proxy 是一款开源的数据库中间件,主要用于 MySQL 数据库的分库分表处理。它提供了一种透明化的数据库访问体验,使得应用程序无需修改代码就能实现数据库的分布式...
MySQL Proxy 是一个轻量级的中间件,...通过以上的方法,你可以有效地处理连接问题、字符编码问题,以及稳定性问题,提升 MySQL Proxy 的使用体验。记得保持 MySQL Proxy 的更新,以便获得最新的 bug 修复和性能改进。
MySQL是世界上最受欢迎的开源数据库系统之一,而"mysql-gui-tools_5r17"则是一套专为MySQL...此外,定期更新和学习新的MySQL版本和工具特性也是保持工作效率的关键,因为MySQL社区不断推出新功能和优化来提升用户体验。
MySQL Proxy应用入门 1 安装MySQL Proxy MySQL Proxy应用入门 2 MySQL Proxy配置选项 MySQL Proxy应用入门 3 使用MySQL Proxy MySQL UDF Mysql Proxy安装配置测 MySQL5 5 Semi synchronous Replication(半同步复制...
2. **ShardingSphere-Proxy**:作为一个数据库代理层,ShardingSphere-Proxy提供了一个与原生数据库客户端相同的使用体验,支持MySQL和PostgreSQL协议。用户可以直接使用SQL语句进行操作,而无需关心背后的分布式...
MySQL 读写分离解决方案 - MySQL Proxy MySQL Proxy 是一个位于客户端和 MySQL 服务器端之间的程序,它可以监测、分析或改变客户端与服务器端之间的通信。MySQL Proxy 最常用的用途包括负载平衡、故障分析、查询...
2. ShardingSphere-Proxy:这是一个面向SQL的标准数据库代理层,它可以作为MySQL、PostgreSQL或Oracle等数据库的透明代理,提供与原生数据库相同的使用体验。用户同样需要配置相应的规则,引入依赖,并启动服务,...
为保证良好的用户体验和数据安全性,DaaS平台在部署上使用共享数据方式实现数据隔离,并通过单机多MySQL实例的方法实现数据库性能隔离。 系统架构上,DaaS系统采用分层的结构,其核心是引入了代理层(MySQL-Proxy)...
MySQL GUI Tools 5.0 还包含了其他实用工具,如MySQL Administrator和MySQL Proxy,它们各自专注于特定的数据库管理任务,如服务器监控和数据库代理服务。 总的来说,MySQL GUI Tools 5.0 提供了一整套全面的解决...
它以proxy形式工作,接收SQL请求,根据数据分布规则转发到相应的后台分库,并合并结果,为应用提供单一数据库的体验。cobar的应用场景包括高并发环境和大规模数据存储。 TDDL(Table Data Layer)是淘宝开源的...
- **Auto-Switch**:基于MySQL-Proxy 0.8.2进行定制扩展,实现了自动切换等功能,提升了系统的可用性。 #### DBA职业发展 robincui 在分享中还提到了DBA的职业发展规划,强调了持续学习的重要性以及面对新技术挑战...
ShardingSphere-Proxy 是一个数据库代理层,它提供了一个与原生数据库客户端相同的使用体验,支持MySQL、PostgreSQL和Oracle协议。用户可以直接使用SQL语句进行操作,而无需关心底层的分片逻辑。同样,Proxy也支持...
Apache ShardingSphere 是一个专注于数据库分片和分布式管理的开源项目,主要由两个核心产品构成:...无论是在 Java 还是 MySQL 的环境中,ShardingSphere 都能为开发者带来更高效、更安全的数据库管理体验。
根据描述,当前的MySQL数据库服务器CPU占用率高,SQL队列中读写操作频繁,这可能导致响应速度下降,影响用户体验。为此,这里提供两种主要的优化策略:读写分离和使用MySQL Proxy。 读写分离是一种常见的数据库优化...
4. **检索难题**:数据库代理中间件如mysql-proxy、Cobar、MaxScale可分发查询并汇总结果,减轻单点压力。 5. **统计分析**:离线处理(如Hadoop)结合近实时分析(如Spark)处理大规模数据分析需求。 **Elastic...
在选择高可用方案时,飞信最终采用了结合MySQL Proxy与Galera Cluster的方式,既保证了数据的一致性,又兼顾了系统的扩展性和灵活性。 #### 六、总结 通过对比分析各种MySQL高可用架构的特点与适用场景,我们可以...
中间件(proxy)有mysql proxy官方提供的mysql中间件产品可以实现负载平衡,读写分离,failover 等,但其不支持大数据量的分库分表且性能较差。Mycat用java语言开发,是中国开发者以自组织形式(暂且称之中国开源...
### MySQL+Tomcat+Apache优化 #### 1. MySQL优化: ##### 1.1 简介: ...综上所述,通过对MySQL、Tomcat和Apache的合理配置和优化,可以显著提高系统的性能和稳定性,为用户提供更流畅的使用体验。