联合MySQL Proxy 和MySQL Cluster,构建高性能数据库
联合MySQL Proxy 和MySQL Cluster,构建高性能数据库
原文:http://blogs.mysql.com/kaj/2007/12/10/combining-mysql-proxy-with-mysql-cluster/
不久前,我和Stewart Smith, Vinay Joosery, Monty Taylor 以及其他的mysql使用者(他们比我更熟悉MySQL Cluster )展开了一次讨论,探讨的主题是:在不更改应用的情况下,使用MySQL Proxy来消除MySQL Cluster 的全表扫描。
讨论源自我问Stewart的一个问题:扩展MySQL Cluster使用用户数量的瓶颈是什么?他回答:瓶颈可能来自Join和其他的select可能需要扫描数据库的大部分。这里有其他更快的存储引擎,比如 MyISAM and InnoDB。
从一个简单的图来看——如图1,应用和MySQL Cluster通过sql交互,同时得到一些服务的响应。这种观点可以图1 中带有双箭头的“sql”来表示。“sql”主要包括下面几部分:
UPDATE, INSERT, DELETE 语句,轻量级的,经常就影响几行——在图2中用蓝色的单向箭头表示
简单的SELECT语句,也是轻量级的,这种查询通常使用索引来返回几行——在图2中用黑色的双向箭头表示
复杂的SELECT语句,比如常见的使用" select *" ,但这种语句不是使用索引,而且经常会返回多行数据——这 种情况在图2中用带虚线的双向箭头(注意返回段的两个箭头代表返回多数据)表示
图2并没有在应用结构上和图1产生变化,只是更加的细粒度一点。现在我们来看普通的MySQL Server (带有MyISAM 或 InnoDB引擎)能够更快的发送复杂的查询请求。在图3中,我们能看到:
 
相关文档:
我们知道用powerdesigner导出的sql文件后缀为'.sql';用phpmyadmin很容易导入MysQL数据库,但是用PHP怎么导入数据库呢?
我用powerdesigner设计一个数据库后导出sql文件(一个投票系统)为'vote.sql';
文件内容为(一些sql语句和注释):
/*======================= ......
一、IP信息列表:
名称 IP
LVS-DR-VIP 192.168.50.245
LVS-DR-Master ......
管理节点:192.168.50.211 数据节点: 192.168.50.214 数据节点: 192.168.50.215 SQL节点: 192.168.50.212 SQL节点: 192.168.50.213 操作系统:Red Hat Enterprise Linux AS release 5 ------------------------------------------安装前必读---------------------------------------- 当前文档的版本为mysql-cluster- ......
Oracle与MySQL中“可串行化”的对比测试
Thomas Kyte 在“Oracle 9i&10g编程艺术”一书中为了说明事务的隔离级别,提供了一些例子。这里我们来看看“可串行化”级别下的表现。
以普通用户登录系统,并创建测试用的表。
idle> connect scott/tiger
......
<%@ page contentType="text/html;charset=GBK" language="java" import="java.sql.*,java.util.*"%>
<html>
<head>
<title>连接mysql的javabean实例+简单分页</title>
<link href="../CSS.css" rel="stylesheet" type="text/css">
</head>
<body>
<jsp:useBean ......