不使用MySQL数据库的五个给力理由解析

 更新时间:2011年03月06日 15:45:13   作者:  
众所周知,MySQL数据库虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。
在我们实际工作中,往往会能听到很多关于不使用MySQL数据库的理由,当然也有一些是对MySQL(和PHP搭配之最佳组合)的误解,下面我将讲述的是5个不使用MySQL(和PHP搭配之最佳组合)的响亮理由。

首先我们要知道,或许有一项技术存在很多理由让我们可以选择使用它,但是让我们不使用它往往只要有一个理由就足够了。选择一个软件产品同样也是如此。 MySQL数据库虽然应用很广泛,受到大家的青睐,但MySQL数据库也有负面的作用,下面就介绍五个不适用 MySQL数据库的给力理由。

1、MySQL(和PHP搭配之最佳组合)的授权方式

MySQL(和PHP搭配之最佳组合)采用双重授权(Dual Licensed),它们是GPL和MySQL(和PHP搭配之最佳组合) AB制定的商业许可协议。

如果你在一个遵循GPL的自由(开源)项目中使用MySQL(和PHP搭配之最佳组合),那么你可以遵循GPL协议使用MySQL(和PHP搭配之最佳组合)。然而,如果你的项目不是在GPL协议下的话,你必须为使用MySQL(和PHP搭配之最佳组合)来支付许可费用,或者你可能因为这个因素而将你的项目改为遵循GPL,那么你需要处理因此带来的更多的支持工作,这有可能会带来成本上的提高。在这种情况下,一些软件发行商可能倾向于选择别的开源数据库,例如遵循BSD授权的PostgreSQL。

2、产品成熟性

到2009年,甲骨文的数据库Oracle(大型网站数据库平台)已经诞生了30周年,而MySQL(和PHP搭配之最佳组合)却连它的一半时间都没有。微软的sql server(WINDOWS平台上强大的数据库平台)仅仅比MySQL(和PHP搭配之最佳组合)大两年,但是sql server(WINDOWS平台上强大的数据库平台)的发布是建立在Sybase的基础上,那时候Sybase已经诞生了6年的时间。至于其他值得关注的开源数据库,PostgreSQL将在2009年达到20岁的生日。虽然MySQL(和PHP搭配之最佳组合)并不是市场上最年轻的数据库,但是却有更多成熟的数据库可供我们选择。

当然,或许这并不是我们拒绝MySQL(和PHP搭配之最佳组合)的一个有说服力的理由,但是对于一些比较守旧的IT经理来说,在为一些关键业务选择平台的时候,平台的成熟性却是必须要考虑的一个因素,在这一点上,MySQL(和PHP搭配之最佳组合)无疑毫无优势。

3、功能设置成熟性

要想在MySQL(和PHP搭配之最佳组合)与其他数据库之间进行一个面面俱到的功能设置对比,并不是一件容易的事情。随着新软件版本的发布或一些补丁的推出,曾经的功能列表可能会迅速变得过时了。而且,有些功能对有的应用程序非常重要,但是对别的应用程序则不一定。

有的时候,一些缺失的功能可以通过别的办法来实现,例如,在MySQL(和PHP搭配之最佳组合) 4.1以前,你可以通过使用join方法来替代子查询的功能。在MySQL(和PHP搭配之最佳组合) 5.0中,大多数关系型数据库所要求的功能已经都具备,但是我们却有理由怀疑这些功能在MySQL(和PHP搭配之最佳组合) 5.0中的成熟性。充其量它们在MySQL(和PHP搭配之最佳组合)中被支持的时间也就一年左右,而在其他关系型数据库中则已经存在了近10年的时间。

4、认证的作用

尽管MySQL(和PHP搭配之最佳组合)也有一个认证培训项目,但是它的培训却要比Oracle(大型网站数据库平台)或MS-SQL相差很远。尽管有的使用MySQL(和PHP搭配之最佳组合)的用户表示,MySQL(和PHP搭配之最佳组合)很容易上手,但是对于具有企业级数据库需求的用户来说,无疑希望员工得到系统、有深度的培训,显然MySQL(和PHP搭配之最佳组合)在这一点上还做得很不够。

一个相关的问题是第三方支持的资格问题,尽管直接来自厂商的支持和服务可以一定程度上减缓这个问题,但是,对于有的企业来说,通过强有力的本地化支持显然更有吸引力。

5、关于可扩展的看法

关于这个理由我把它放在最后一位。在很多业界专家中有一个相当一致的观点:MySQL(和PHP搭配之最佳组合)不能很好的扩展。关于这点可能有很大的分歧,争论的焦点主要集中于水平可扩展性和垂直可扩展性上。MySQL(和PHP搭配之最佳组合)则更倾向于垂直可扩展性。

据我的观察,现在有一个趋势,那些经过正式培训的数据库管理员DBA更倾向于选择一个专有关系数据库,例如Oracle(大型网站数据库平台)。对于一些具有专门数据库管理员的比较大的环境来说,MySQL(和PHP搭配之最佳组合)很难得到宠爱,这时候,关于MySQL(和PHP搭配之最佳组合)是否真的具有良好的可扩展性的争论已经没有意义。

不可否认,MySQL(和PHP搭配之最佳组合)也是一个很好的关系型数据库,或许在技术上它与其他领先的关系数据库相差并不大,或不具有劣势。但是,对于一些企业环境来说,MySQL(和PHP搭配之最佳组合)显然不具有优势。 所以不要盲目随大流,也要根据其功能性能的好坏去选择,对MySQL数据库的选用也不是说一定不好,只是在上面这五点上做的不是很好,其他方面还是值得肯定的。

相关文章

  • MySQL中ROUND函数进行四舍五入操作陷阱分析

    MySQL中ROUND函数进行四舍五入操作陷阱分析

    这篇文章主要介绍了MySQL中ROUND函数进行四舍五入操作陷阱,结合实例形式分析了mysql使用ROUND函数进行四舍五入运算中出现的问题及其错误原因,需要的朋友可以参考下
    2018-06-06
  • MySQL日志管理和备份与恢复

    MySQL日志管理和备份与恢复

    这篇文章主要介绍了MySQL如何实现日志的管理,备份与恢复,本文有一定的参考价值,感兴趣的小伙伴可以参考阅读
    2023-04-04
  • MySQL无法创建外键的原因及解决方法

    MySQL无法创建外键的原因及解决方法

    这篇文章主要介绍了MySQL无法创建外键的原因及解决方法,然后在文中给大家及时了MySQL无法创建外键、查询外键的属性知识,感兴趣的朋友一起看看吧
    2017-10-10
  • mysql修改表结构方法实例详解

    mysql修改表结构方法实例详解

    这篇文章主要介绍了mysql修改表结构方法,以实例形式较为详细的分析了mysql修改表结构的具体方法与相关注意事项,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • MySQL创建用户与授权方法

    MySQL创建用户与授权方法

    MySQL中创建用户与授权的实现方法,对于刚开始接触mysql的朋友可以参考下
    2012-11-11
  • MySQL变量原理及应用实例

    MySQL变量原理及应用实例

    这篇文章主要介绍了MySQL变量原理及应用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • 创建mysql表分区的方法

    创建mysql表分区的方法

    我来给大家介绍一下mysql表分区创建与使用吧,希望对各位同学会有所帮助。表分区的测试使用,主要内容来自于其他博客文章以及mysql5.1的参考手册。
    2013-10-10
  • Mysql中关于0值判断的坑及解决

    Mysql中关于0值判断的坑及解决

    这篇文章主要介绍了Mysql中关于0值判断的坑及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 关于mysql合并表的详细介绍

    关于mysql合并表的详细介绍

    本篇文章是对mysql中的合并表进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • mysql服务1067错误多种解决方案分享

    mysql服务1067错误多种解决方案分享

    今天我的mysql服务器突然出来了1067错误提示,无法正常启动了,我今天从网上找寻了大量的解决mysql服务1067错误的办法,有需要的朋友可以看看
    2012-03-03

最新评论