新客网
首页 | 新闻 | 系统·网络·服务器·安全 | 工具·办公 | 编程·数据库 | 图象·网页·运营 | 硬件·存储 | 专题教程 | 论坛·old
 → 当前位置:首页 > 教程 > 数据库 > mysql > 正文

MySQL高级特性----对比与其他数据库

XKER.COM   2006-10-10 9:12:23  来源:新客整理  点击:

  性能 
  
  对于速度的真实比较,请教不断成熟的MySQL基准套件。见10.8 使用你自己的基准。因为没有线程创建开销、一个较小的语法分析器、较少功能和简单的安全性,mSQL应该在下列方面更快些:
  执行重复的连接和断开的测试,在每个连接期间运行一个非常简单的查询。
  有很少的列和键的插入很简单的表的INSERT操作。
  CREATE TABLE和DROP TABLE。
  在不是一个索引的一些东西上SELECT。(一个表扫描是很容易的。)
  因为这些操作是如此简单,当你有更高的启动开销时,很难在这些方面变得更好。在连接被建立以后,MySQL应该性能好一些。在另一方面,MySQL比mSQL(以及大多数其他的SQL实现)在下列方面更好些:
  
  复杂的SELECT操作
  
  检索较大的结果(MySQL有一个更好、更快并且更安全的协议)。
  有变长字符串的表,因为MySQL有更有效的并可在VARCHAR列上索引。
  有很多列的表的处理。
  由长记录的表的处理。
  有很多许多表达式的SELECT。
  在大表上的SELECT。
  同时处理很多连接。MySQL充分是完全多线程化的,每个连接有它自己的线程,这意味着没有线程必须等待另一个线程(除非一个线程正在修改一张表,另外的线程想要存取)在mSQL中,一旦一个连接被建立了,所有其它线程必须等到第一个线程完成,不管连接正在运行的查询是短的或是长的。当第一个连接终止时,下一个才能工作,而此时所有其它线程再次等待,等等。
  
  联结。如果你改变一个SELECT中的表的顺序,mSQL可能变得异常地慢。在基准套件中,比MySQL要慢超过15000倍的时间。这是由于mSQL缺乏一个联结优化器以便以最佳的顺序排定表。然而,如果你把表按完全正确的顺序放在mSQL2中并且WHERE是很简单的并使用索引列,联结将相对快些!见10.8 使用你自己的基准。
  ORDER BY和GROUP BY。
  DISTINCT。
  使用TEXT或BLOB列。
  
  SQL功能 
  
  GROUP BY和HAVING。mSQL根本不支持GROUP BY。MySQL支持一个有两个HAVING和下列函数: COUNT()、AVG()、MIN()、MAX()、SUM()和STD()的完整的GROUP BY。如果SELECT从一张表中检索,没有其他列被检索并且没有WHERE子句,COUNT(*)被优化以很快地返回。 MIN()和MAX()可以取字符串参数。
  带计算的INSERT和UPDATE。MySQL能在一个INSERT或UPDATE中做计算。例如:
  mysql> UPDATE SET x=x*10+y WHERE x<20;
  
  别名,MySQL有列的别名。
  限制列名。在MySQL中,如果一个列名在用于查询的表之间唯一的,你不必须使用完整的 合格者。
  带函数的SELECT。MySQL有很多函数(太多不能在这里列出;见7.4 用在SELECT和WHERE子句中的函数)。
  
  磁盘空间效率 
  
  即,你能使你的表有多小?MySQL有很精确的类型,因此你可以创建占据很小空间的表。一个有用的MySQL数据类型的例子是MEDIUMINT,它是3个字节长。如果你有100,000,000个记录,每个记录节省甚至一个字节也是很重要的。mSQL2有一个较有限的列类型集合,因此更难于使表更小。
  
  稳定性 
  
  这较难客观地评价。对于MySQL稳定性的讨论,见1.5 MySQL有多么稳定?。我们没有mSQL稳定性的经验,因此我们对此不能说任何东西。
  价格
  另一个重要的问题是许可证。MySQL有一个比mSQL更灵活的许可证,并且也不比mSQL昂贵。无论你选择使用哪个产品,记得要至少考虑支付一个许可证或电子邮件支持的费用。(当然如果你把你出售的一个产品包括在MySQL中,你将被要求获得一个许可证。)
  
  Perl接口
  MySQL有与mSQL基本相同Perl接口,当有一些增加的功能。
  
  JDBC ( Java ) 
  
  MySQL目前有4个JDBC驱动程序:
  gwe 驱动程序:由GWE technologies 开发的一个Java接口(不再支持)。

本新闻共3页,当前在第1页  1  2  3  

上一篇教程:MySQL中文参考手册---MySQL 文件系统
下一篇教程:MySQL中文参考手册--- 安装MySQL
收藏本文】 【我要投稿】 【打印本文】 【论坛讨论】 【关闭窗口

相关文章
·MySQL数据导入导出方法与工具介绍三·MySQL数据导入导出方法与工具介绍二
·MySQL数据导入导出方法与工具介绍一·如何才能使图形化管理MySQL更轻松(二)
·如何才能使图形化管理MySQL更轻松(一)·MySQL管理员指南之--MySQL用户管理
·MySQL数据的导出和导入工具mysqldump·MySQL的管理工具:phpMyAdmin
·MySQL中文参考手册-- 常用查询的例子·MySQL中文参考手册-- 输入查询
·MySQL中文参考手册-- 连接与断开服务者·MySQL中文参考手册-- 获得数据库和表的信息
·MySQL中文参考手册-- 创造并使用一个数据库·MySQL服务器的启动与停止
·MySQL中文参考手册--- 安装MySQL·MySQL中文参考手册---MySQL 文件系统

学院文章搜索
  
推荐文章
·用CSS实现动态显示的五角星
·MySQL数据导入导出方法与工
·从网络设置着手 教你四招让
·制作正式版优化大师绿色免
·编程过把瘾:自己动手写操
·数据恢复指南 专题
·硬盘“逻辑锁”解决办法
·DOS使用中的常见问题解答
·DOS下常用的相关网络命令
·Win2000优化技巧篇之:硬件
阅读排行
·免费代理IP(每日更新)
·流氓网站招招看 详细剖析恶
·ghost教程 专题
·DB2 9数据库专题
·轻松恢复硬盘数据 EasyRec
·克隆软件Ghost初级使用教程
·DOS下对系统重新进行分区
·DOS常用命令
·Fdisk分区详解
·编程过把瘾:自己动手写操
专题教程
·数据恢复指南 专题
·Web服务器专题
·DB2 9数据库专题
·ghost教程 专题
·局域网技术专题
·虚拟机专题
·CDN加速技术专题
·注册表教程专题
·电脑技巧 专题
·Linux与虚拟化技术
最新文章
·用手机免费申请QQ号 既方便
·用CSS实现动态显示的五角星
·MySQL数据导入导出方法与工
·MySQL数据导入导出方法与工
·MySQL数据导入导出方法与工
·如何才能使图形化管理MySQ
·如何才能使图形化管理MySQ
·MySQL管理员指南之--MySQL
·MySQL数据的导出和导入工具
·MySQL的管理工具:phpMyAdm
设为首页 - 加入收藏 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyright © 2003 - 2006 XKER Inc. All Rights Reserved
新客网 版权所有