Flashcache 加速MySQL的内核模块 Flashcache 是由Facebook发布的开源项目,用来通过将数据缓存在SSD硬盘上来加速MYSQL的内核模块。刚发布时只测试了Linux kernel版本2.6.18和2.6.20。...
数据库中继器 SQL Relay SQL Relay 是一个持久化的数据库连接池,用来为 Unix 或者 Linux 提供数据库连接池、代理以及负载均衡的功能。
SQL Relay 的应用思路:
加速数据库驱动的基于 Web 的应用程序
增加 Web 应用程序的可扩展性
分布式的访问复制的数据库系统
对数据库访问进行节流
从不被支持的平台上访问某个数据库
可以轻松的对数据库系统进行移植
目前 SQL Reply 支持的数据库包括:
Oracle
MySQL
mSQL
PostgreSQL
Sybase
MS SQL Se......
数据库防火墙 GreenSQL GreenSQL 是一个数据库防火墙程序,用来防止 SQL 注入攻击。GreenSQL 使用的是代理的模式来支持 MySQL 数据库,结构图如下所示:...
MySQL High Availability clustering MySQL High Availability clustering 包含一些脚本和程序用来提供高可用性的MySQL数据库集群,它采用MySQL复制的方式,对客户端程序来说是透明的,通过一个共享的浮动IP来提供对数据库集群的访问。...
LightCloud Plurk 前陣子放出 LightCloud,試著解決 Amazon 所提出的 Dynamo 用某些複雜方法解決問題。
比起 Dynamo 的優點是:
使用 Tokyo Cabinet 當底層,這是目前最快的 key-value database 之一,而且檔案也小。
因為使用 Tokyo Cabinet,所以可以用他的 master-master replication 取代 Dynamo 內的 replication,也就是固定以 n = 2 解決問題,以 node 本身的 HA 架構解決 Dynamo 裡面的 consistent 問題。(在 Dynamo 裡透過很多方......
CowNewSQL CowNewSQL实现了多个数据库之间的SQL语句翻译功能,其网站只是作者的一个博客,国产开源项目哦。...
P6SPY P6Spy是一个可以用来在应用程序中拦截和修改数据操作语句的开源框架。 通过P6Spy我们可以对SQL语句进行拦截,相当于一个SQL语句的记录器,这样我们可以用它来作相关的分析,比如性能分析。
P6SPY提供了如下几个功能:
记录SQL语句的执行时间戳。 记录SQL语句类型 记录SQL填入参数的和没有填入参数的SQL语句 根据配置的时间控制SQL语句的执行时间,对超出时间的SQL语句输出到日志文件中......
HiveDB HiveDB是一个用来横向切分mysql数据库的开源框架,构建一个高性能和可扩展的基于mysql的系统需要大量的系统设计经验和良好的代码的实现,一个比较好的策略是将你的数据横向切分在多个server上,HiveDB就是个不错的选择,它的发展情况和特点如下:
1. HiveDB是 在2007年5月"Bay Area Community Meetup"首次出现,底层基于Hibernate shards基础实现。Hibernate shards 则是 Google 的开发工程师在"20%工作时间可以干别的有兴趣事情......
SQL请求路由器 Amoeba amoeba是一个以MySQL为底层数据存储,并对应用提供MySQL协议接口的proxy。它集中地响应应用的请求,依据用户事先设置的规则,将SQL请求发送到特定的数据库上执行。基于此可以实现负载均衡、读写分离、高可用性等需求。与MySQL官方的MySQL Proxy相比,作者强调的是amoeba配置的方便(基于XML的配置文件,用SQLJEP语法书写规则,比基于lua脚本的MySQL Proxy简单)。
amoeba相当于一个SQL请求的路由器,目的是为负载均衡、读写分离......
MySQL-Proxy MySQL-Proxy是处在你的MySQL数据库客户和服务端之间的程序,它还支持嵌入性脚本语言Lua。这个代理可以用来分析、监控和变换(transform)通信数据,它支持非常广泛的使用场景:
负载平衡和故障转移处理
查询分析和日志
SQL宏(SQL macros)
查询重写(query rewriting)
执行shell命令
MySQL Proxy更强大的一项功能是实现“读写分离(Read/Write Splitting)”。基本的原理是让主数据库处理事务性查询,而从数......
PGCluster PGCluster是一个为PostgreSQL设计的多主机数据同步备份系统。从PGCluster的官方介绍来看,它最大的两个特点就是:多主机和同步备份。1. Since a replication system is a synchronous replication, delay does not occur with the data duplicate between the Cluster DBs.2. Since a server is multi-master composition, two or more the Cluster DBs can receive access from a user simultaneously.......
PL Proxy PL/Proxy和PostgreSQL集群的结构关系可以用下图清楚地表示
下面是详细的安装方法:
以下操作是在三台不同机器上执行的情况,其中plproxy节点的机器名是P1,数据库节点的机器名分别是D1和D2。机器硬件配置如下,同时需要Linux-4.2、postgresql-8.3.0和plproxy-2.0.4,pgbouncer的安装过程略去。plproxy节点:hostname: P1inet addr:10.0.0.1OS: Linux 2.6.9-42.ELsmpCPU:Intel(R) Xeon(R) CPU L5320 @ 1.86GHzMemTotal: 514440......
Sequoia Sequoia是一个能够为任何数据库提供群集,负载平衡和容错服务的中间件。Sequoia是C-JDBC项目的扩展。C-JDBC是一个数据库集成方式,包括同步、复制、备份和集群等,Sequoia的出现 也说明了C-JDBC的成熟性,在这里万分感觉INRIA公司,一个法兰西的公司C-JDBC(Java 数据库连接群集)是一个数据库集成方式,包括同步、复制、备份和集群等。 数据库可以分布在多个节点并可以进行数据复制,C-JDBC能够均衡在这些节点之间的查询负载。 ......
Slony-I Slony-I可以来实现PostgreSQL数据库的主从复制。
下面是Slony-I 的安装配置简明指南,实现主副数据库的同步。后面我会再介绍Pgbouncer的安装和配置1. 主副数据库机器Master:hostname: M_DBinet addr:10.0.0.11OS: Linux 2.6.9-42.ELsmpCPU:Intel(R) Xeon(R) CPU L5320 @ 1.86GHzMemTotal: 254772 kBPgSQL: postgresql-8.3.0Slave:hostname:S_DBinet addr:10.0.0.12OS: Linux 2.6.9-42.ELsmpCPU:Intel(R) Xeon(R) CPU L5320 @ ......
mysqlsla hackmysql.com推出的一款MySQL的日志分析工具
整体来说, 功能非常强大. 数据报表,非常有利于分析慢查询的原因, 包括执行频率, 数据量, 查询消耗等.
格式说明如下:
总查询次数 (queries total), 去重后的sql数量 (unique)
输出报表的内容排序(sorted by)
最重大的慢sql统计信息, 包括 平均执行时间, 等待锁时间, 结果行的总数, 扫描的行总数.
Count, sql的执行次数及占总的slow log数量的百分比.
Time, 执行时间, 包括总时......
MySQL压力测试工具 mysqlslap mysqlslap是一个mysql官方提供的压力测试工具。以下是比较重要的参数: –defaults-file,配置文件存放位置 –concurrency,并发数 –engines,引擎 –iterations,迭代的实验次数 –socket,socket文件位置
自动测试: –auto-generate-sql,自动产生测试SQL –auto-generate-sql-load-type,测试SQL的类型。类型有mixed,update,write,key,read。 –number-of-queries,执行的SQL......
优化的内存访问 TCMalloc TCMalloc (google-perftools) 是用于优化C++写的多线程应用,比glibc 2.3的malloc快。这个模块可以用来让MySQL在高并发下内存占用更加稳定。
本站使用的MySQL已经用 TCMalloc 优化过了。...
HA-JDBC HA-JDBC是一个JDBC驱动代理(proxy).它让其它JDBC驱动具备轻量的、透明化的群集处理能力....