针对MySQL和PostgreSQL两数据库对比

PostgreSQL

在这篇文章中,我们选用MySQL 4.0.2-alpha与PostgreSQL 7.2进行比较,因为MySQL 4.0.2-alpha开始支持事务的概念,因此这样的比较对于MySQL应该较为有利。

我们这样的比较不想仅仅成为一份性能测试报告,因为至少从我个人来看,对于一个数据库,稳定性和速度并不能代表一切。对于一个成熟的数据库,稳定性肯定会日益提供。而随着硬件性能的飞速提高,速度也不再是什么太大的问题。

二、两者的共同优势

这两个产品都属于开放源码的一员,性能和功能都在高速地提高和增强。MySQL和PostgreSQL的开发者们都在尽可能地把各自的数据库改得越来越好,所以对于任何商业数据库使用其中的任何一个都不能算是错误的选择。

三、两者不同的背景

MySQL的背后是一个成熟的商业公司,而PostgreSQL的背后是一个庞大的志愿开发组。这使得MySQL的开发过程更为慎重,而PostgreSQL的反应更为迅速。这样的两种背景直接导致了各自固有的优点和缺点。

四、MySQL的主要优点

1、首先是速度,MySQL通常要比PostgreSQL快得多。MySQL自已也宣称速度是他们追求的主要目标之一,基于这个原因,MySQL在以前的文档中也曾经说过并不准备支持事务和触发器。但是在最新的文档中,我们看到MySQL 4.0.2-alpha已经开始支持事务,而且在MySQL的TODO中,对触发器、约束这样的注定会降低速度的功能也列入了日程。但是,我们仍然有理由相信,MySQL将有可能一直保持速度的优势。

2、MySQL比PostgreSQL更流行,流行对于一个商业软件来说,也是一个很重要的指标,流行意味着更多的用户,意味着经受了更多的考验,意味着更好的商业支持、意味着更多、更完善的文档资料。

3、与PostgreSQL相比,MySQL更适宜在Windows环境下运行。MySQL作为一个本地的Windows应用程序运行(在NT/Win2000/WinXP下,是一个服务),而PostgreSQL是运行在Cygwin模拟环境下。PostgreSQL在Windows下运行没有MySQL稳定,应该是可以想象的。

4、MySQL使用了线程,而PostgreSQL使用的是进程。在不同线程之间的环境转换和访问公用的存储区域显然要比在不同的进程之间要快得多。

5、MySQL可以适应24/7运行。在绝大多数情况下,你不需要为MySQL运行任何清除程序。PostgreSQL目前仍不完全适应24/7运行,这是因为你必须每隔一段时间运行一次VACUUM。

6、MySQL在权限系统上比PostgreSQL某些方面更为完善。PostgreSQL只支持对于每一个用户在一个数据库上或一个数据表上的INSERT、SELECT和UPDATE/DELETE的授权,而MySQL允许你定义一整套的不同的数据级、表级和列级的权限。对于列级的权限,PostgreSQL可以通过建立视图,并确定视图的权限来弥补。MySQL还允许你指定基于主机的权限,这对于目前的PostgreSQL是无法实现的,但是在很多时候,这是有用的。

7、由于MySQL 4.0.2-alpha开始支持事务的概念,因此事务对于MySQL不再仅仅成为劣势。相反,因为MySQL保留无事务的表类型。这就为用户提供了更多的选择。

8、MySQL的MERGE表提供了一个独特管理多个表的方法。

9、MySQL的myisampack可以对只读表进行压缩,此后仍然可以直接访问该表中的行。

时间: 2024-09-28 12:09:01

针对MySQL和PostgreSQL两数据库对比的相关文章

MySQL和PostgreSQL两数据库的对决

在这篇文章中,我们选用MySQL 4.0.2-alpha与PostgreSQL 7.2进行比较,因为MySQL 4.0.2-alpha开始支持事务的概念,因此这样的比较对于MySQL应该较为有利.我们这样的比较不想仅仅成为一份性能测试报告,因为至少从我个人来看,对于一个数据库,稳定性和速度并不能代表一切.对于一个成熟的数据库,稳定性肯定会日益提供.而随着硬件性能的飞速提高,速度也不再是什么太大的问题. 一.前言 前一段时间,我曾经翻译过一篇 将你的网站从MySQL改为PostgreSQL ,其实

在MySQL和PostgreSQL之外,为什么阿里要研发HybridDB数据库?

2016-12-09 来源:InfoQ 作者:萧少聪 阿里云为什么要做HybridDB?Pivotal么看待阿里云此举?Pivotal中国研发中心总经理冯雷(Ray Feng).阿里云数据库总负责人余锋(褚霸)于12月13日线上发布会剖析自己的想法.点击回顾视频:除了发布外,我们还想告诉你--阿里云为什么要做HybridDB? 编者按 在大数据火遍IT界之前,大家对数据信息的挖掘通常聚焦在BI(Business Intelligence)之上.BI具有着明确的分析需求,清晰地知道需要处理哪些信息

MySQL与PostgreSQL比较哪个数据库更好?

  如果打算为项目选择一款免费.开源的数据库,那么你可能会在MySQL与PostgreSQL之间犹豫不定.MySQL与PostgreSQL都是免费.开源.强大.且功能丰富的数据库.你主要的问题可能是:哪一个才是最好的开源数据库,MySQL还是PostgreSQL呢?该选择哪一个开源数据库呢? 在选择数据库时,你所做的是个长期的决策,因为后面如果再改变决定将是非常困难且代价高昂的.你希望一开始就选择正确.两个流行的开源数据库MySQL与PostgreSQL常常成为最后要选择的产品.对这两个开源数据

MySQL与PostgreSQL:该选择哪个开源数据库?哪一个更好?

Naresh Kumar是一位软件工程师与热情的博主,对编程与新事物充满了激情和兴趣.近日,Naresh撰写了一篇博文,对开源世界最常见的两种数据库MySQL与PostgreSQL的特点进行了详尽的分析和比对. 如果打算为项目选择一款免费.开源的数据库,那么你可能会在MySQL与PostgreSQL之间犹豫不定.MySQL与PostgreSQL都是免费.开源.强大.且功能丰富的数据库.你主要的问题可能是:哪一个才是最好的开源数据库,MySQL还是PostgreSQL呢?该选择哪一个开源数据库呢?

性能测试:自建数据库对比RDS中应当注意的地方(适用于MySQL,SQL SERVER,MongoDB)

性能测试:自建数据库对比RDS中应当注意的地方 背景 常常很多用户对比测试自建数据库和RDS的性能差异,其测试结果往往是RDS不如ECS自建,用户往往怀疑难道我花了那么多的钱买的RDS难道还不如自己在ECS上搭建?   从数据库测试的角度来看,测试首先必须是的公平的进行,其结果才具有说服力.RDS作为一个公共的关系数据库服务,其必须要包括稳定高可用,高安全,然后才是高性能.没有前面的两者,我相信没有多少人愿意去使用即不稳定又不安全的服务.所以RDS在稳定性上必须上主备双节点的,双节点甚至是在不同

评价:MySQL和PostgreSQL的优劣较量

这篇文章中,我们选用MySQL 4.0.2-alpha与PostgreSQL 7.2进行比较,因为MySQL 4.0.2-alpha开始支持事务的概念,因此这样的比较对于MySQL应该较为有利. 我们这样的比较不想仅仅成为一份性能测试报告,因为至少从我个人来看,对于一个数据库,稳定性和速度并不能代表一切.对于一个成熟的数据库,稳定性肯定会日益提供.而随着硬件性能的飞速提高,速度也不再是什么太大的问题. 一.两者的共同优势 这两个产品都属于开放源码的一员,性能和功能都在高速地提高和增强.MySQL

使用 PHP + MySQL 处理负载过重的数据库问题思考和总结

以下是我对使用 PHP + MySQL 处理负载过重的数据库问题思考和总结,经验方面一定有着不少欠缺的地方,欢迎高手前来指教: 在设计时考虑合理的表结构和相应大概要承受多少访问压力,需不需要分表,如果需要分表每个表放多少条记录合适: 对于分表的实现可以采用 PHP 处理或是 MySQL 自带的 MERGE 表类型(即 MRG_MyISAM)来处理: ⑴如果是使用 PHP 处理有两种情况: ①没有数据的新库新表要为抗压做准备,比如一个聊天室一开始就要考虑可能有多个子聊天室,可以根据一些条件来进行,

Sun推出针对MySQL的新系统和存储解决方案

 11月5日,Sun Microsystems公司发布了针对MySQL的新的Sun系统产品 (Sun Systems for MySQL),这是一套专门用于快速改变Web服务提供的经济效果的解决方案,让企业客户将基于MySQL的Web基础应用部署到Sun服务器上.该系统产品已经得到客户确认和部署,并表明,性能的改善高达300%,功耗减少83%,性价比提高了10倍,且拥有更高的系统可靠性,可更快推向市场.新的解决方案将MySQL与Sun的其他创新产品整合在一起,使客户可以通过Sun开放软件.广泛的

Hive简介、什么是Hive、为什么使用Hive、Hive的特点、Hive架构图、Hive基本组成、Hive与Hadoop的关系、Hive与传统数据库对比、Hive数据存储(来自学习资料)

1.1 Hive简介 1.1.1   什么是Hive Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能. 1.1.2   为什么使用Hive Ø  直接使用hadoop所面临的问题 人员学习成本太高 项目周期要求太短 MapReduce实现复杂查询逻辑开发难度太大   Ø  为什么要使用Hive 操作接口采用类SQL语法,提供快速开发的能力. 避免了去写MapReduce,减少开发人员的学习成本. 功能扩展很方便. 1.1.3   H