网站首页 工具软件 操作系统 办公软件 网页制作 PHP教程 script脚本专栏 photoshop教程 其他精品教程
我发布的文章 - 教程搜索 - 交流论坛 - 帮助中心 - 网站首页 网络工具 - 常用工具 - 媒体工具 - 系统工具 - 实用工具 NT/2003 - Win Xp - Win2000 - DOS/Win9x - IE/注册表 - Linux - 苹 果 Office - Word - Excel - PowerPoint - 输入法 - 邮件处理 Flash - Dreamweaver - Fireworks - FrontPage - HTMLCSS 基础文章 - PHP函数 - PHP技巧 - 数据库相关 - 高级应用 - PHP安装 - 转载精华 - 常见问题 综 合 类 - 状 态 栏 - 游 戏 类 - 页面背景 - 页面特效 - 页面导航 - 文本操作 - 文本特效 - 图形特效 - 鼠标特效 - 时间日期 - 密 码 类 文字特效 - 按钮与图标 - 色彩运用 - 滤镜魔法 - 综合实例 XML教程 - DELPHI基础教程 - VB教程
首页 -> 操作系统 -> Linux

TOP

Linux数据库大比拚(三)
文章内容
相关信息
用户评论
文章内容
    
  
  作 者: Matthias Warkus
  
  
  原文作者: Matthias Warkus
  译者:yanzi clyan@sohu.com
  
  
  评估大量因素
  我们将要在中途改变方向。在这部分,我将涉及与性能无关的话题。在下一个并且是最后一部分,我将全面研究基准测试并以最终结论结束。
  
  一般差别
  不同于PostgreSQL,MySQL和mSQL不是真正的关系数据库管理系统。我看到有人在新闻组里把MySQL称为“只是一个快速存储工具”,并且mSQL甚至被称为了一个玩具--不敢恭维。至少mSQL实现了部分一个完整的SQL DBM应该提供的功能。
  
  如果一个人需要一个真实的RDBMS,三者中唯一可行的选择是PostgreSQL。如果计算原始的性能表现,特别是如果对数据库所做的存取并不复杂并且大多数是自动的,一个更小的系统可能更好一些。因此,mSQL和MySQL被宣传为网数据库系统。
  
  许可证
  PostgreSQL以一个BSD风格许可证被分发,在所有相关的方面均是自由的(也许对一些狂热者来说太自由了),如果版权声明被保留,基本上一个人可以用该软件做任何事情。
  
  MySQL是免费的并且在某些条件下源代码允许被修改,但是禁止为了商业目的的再分发。
  
  mSQL对非商业性组织的使用是免费的;但在一个14天评估时期以后,购买一个许可证是必要的。
  
  因为这些差别,在使用他们之一的企业的人们需要仔细地考虑许可条件。
  
  ANSI 标准的实现
  这3个系统都是在叫喊是完全实现 ANSI SQL 标准的,公平地讲,这在我看来有点可怕。当MySQL实现了开发者已经定义好的一个子集时,mSQL甚至没有尝试真正遵循ANSI 标准。PostgreSQL 最后定位在与 ANSI 完全兼容,但是它仍然有一条长路要走。
  
  PostgreSQL确实还没有支持参考完整性(RI),但是只测试了DBMS的事务(transaction)。另外,新的SQL特征像SQLSTATE变量也没有实现。
  
  MySQL既不支持事务也不保证参考完整性;对事务存取数据库表能明确地为锁定和解锁。
  
  mSQL缺乏 ANSI SQL 的大多数特征,它仅仅实现了一个最最少的API,没有事务和参考完整性。
  
  APIs
  所有3个系统测试的API大部分对处理是透明的,发生任何问题通常是由于不正确的文档,而不是API本身。
  
  mSQL和MySQL都没有嵌入式SQL(ESQL)预处理器功能。随着ESQL的诞生,现在我相当喜欢它,但是使用mSQL 和 MySQL 本身提供的C API并不困难。有同样光标的含义,但以一个不同的方法实现,并且把字符串传递给C函数仅比在代码中使用码嵌入式 SQL语句稍难一点儿。
  
  除了提到的ESQL API,PostgreSQL带有C API、C++绑定、JDBC、ODBC、Perl绑定、Python和Tcl绑定。
  
  MySQL对Win32平台有附加的ODBC支持;语言联编 (接口)至少有C++、Eiffel、Java、Perl、Python、PHP和Tcl可以得到。
  
  mSQL与Lite(一种类似C的脚本语言,与分发一起发行)紧密结合,可以得到一个称为 W3-mSQL的一个网站集成包,它是JDBC、ODBC、Perl和PHP API。
  
  注意我没有测试那些任何附加的绑定和特征;他们的质量和文档的表述不是很好。能获得很多对这3个系统的第三方扩展;本文不再赘述。
  
  文档和更多
  PostgreSQL以DocBook SGML格式记录文档。手册分为管理员指南、程序员指南、用户指南和一本教程。另外,FAQ和各种各样的说明文件涉及一些话题。软件的好多领域缺乏足够的文档。
  
  MySQL以GNU Texinfo格式记录文档;手册看起来完全。
  
  mSQL有一个单个文件的手册(没有超文本),它有PostScript和HTML形式。作为能从一个商业软件产品的的角度所期望的,它覆盖了所有的特征。
  
  认证和一般的安全
  这时我还没谈及的一个话题,但是需要在这个比较中提及的是存取认证。ANSI SQL 对于存取控制提供很复杂且很精致的机制, 也就是GRANT和REVOKE语句。
  
  PostgreSQL和MySQL能理解这些标准语句,但内部处理存取控制是不同的。可以得到mSQL的网站集成包中的一个认证增强程序(W3-mSQL),但是在它基本形态中,大多数数据库系统似乎没有任何内置的存取控制支持。不像safe_mysqld和postmaster,mSQL数据库守护程序假定有root运行的,它可以可能造成安全隐患。
  
  任何大型数据库都需要一个安全概念,就像它需要一个彻底的数据库设计一样。不可能说他们中支持认证系统(即 PostgreSQL或MySQL)的哪一个是更安全的;这里, 任何事情均取决于设计。
  
  在本系列的第四部分,本文做作者集中精力研究DBMS的性能测量和工具的全面总结。
  
  
  

相关信息
Linux数据库大比拚(三)
发布者:mmcbbs
浏览量:126
发布日期:2005-04-10 03:02:05
所属专题:
用户评论
称  呼:
内  容:

广告位

广告招租,欢迎抢订

热门信息

·怎样用linux拨号上网
·TCP/IP基础----为Linux做准..
·Linux操作系统下的浏览器举要
·Linux中的字型(FONTS)设定
·用FIPS为LINUX分区
·Linux 下文件的压缩、打包..
·Squid -- Linux下的一个优..
·Linux御敌策略谈

推荐信息