Oracle RDBMS比MySQL RDBMS更稳定,更安全,更健壮吗?

时间:2008-09-19 13:32:31

标签: mysql database oracle comparison rdbms

我作为程序员在各种系统上工作过,有些用Oracle,有些用MySQL。我一直听到有人说Oracle更稳定,更强大,更安全。是这种情况吗?

如果是这样,为什么?为什么?

出于这个问题的目的,考虑一个中小型的生产数据库,大约可能有500,000条记录。

11 个答案:

答案 0 :(得分:22)

是。 Oracle是企业级软件。

我不确定它是否真的更稳定了mysql,我没有那么多使用mysql,但我永远不会记得让mysql崩溃了。我有过oracle崩溃,但是当它崩溃时,它会向我提供有关崩溃原因的更多信息,而Oracle支持总是在那里提供帮助(收费)。

它非常强大,Oracle数据库在破坏数据之前几乎可以做任何事情,我已经让mysql服务器在磁盘空间不足时做了很奇怪的事情,Oracle将暂停所有事务,并最终关闭它无法写入所需的文件。我从来没有在oracle中丢失数据,即使我做了愚蠢的事情,比如忘记where子句并更新每一行而不是一行,很容易让数据库回到原来的状态。

不确定安全性,当然Oracle为您提供了许多选择,以便您连接到数据库并进行身份验证。它提供了许多关于哪些用户可以访问什么等等的选项。但是就像大多数事情一样,如果你想认真对待安全性,那么你需要专家来做。如果他们没有获得正确的安全性,甲骨文肯定会失去更多。但是,就像所有事情一样,有一些功绩。

如果不出意外,请考虑一下......当Oracle填满时,他们的客户每个CPU支付4万美元(如果他们是吸盘和支付定价)许可证+年度维护费用。这给了他们一个非常好的强烈密集,以确保客户对产品满意。

对于一个小型数据库,我会在mysql之前认真推荐Oracle XE。它具有mysql(免费)的重要功能,它易于安装,附带一个漂亮的Web界面和应用程序框架(Application Express),如果你的数据库很乐意在单个cpu,1gb ram和4gb数据上运行,那么XE是恕我直言的方式。

Mysql有它的用途,很多人都表明你可以用它构建出色的东西,但它在功能方面远远落后于oracle(以及SQL Server和DB2)......但是,它也是免费的,非常的易于学习,这对许多人来说是最重要的特征。

答案 1 :(得分:7)

当磁盘空间不足时,我已经让Oracle创建了一个损坏的数据库。它很难调试,使用大量资源,如果没有认真熟练的DBA牵着你的手,很难使用。当我安装在一个视频中时,Oracle甚至在/ usr / bin /中替换了系统二进制文件(例如gcc)。

另一方面,使用PostgreSQL更令人愉快。如果您习惯使用开源* nix系统,它会提供可读的错误消息并以更易理解的方式执行操作。设置复制非常容易,从而使您的数据相当安全。

答案 2 :(得分:5)

可以在手机上运行500K记录数据库。说真的,它太小了,以至于Oracle XE和MySQL都足以管理它。

答案 3 :(得分:5)

  • 对于小型数据库(几百万条记录),Oracle有点过分
  • 您需要经验丰富的DBA才能正确安装和管理Oracle系统
  • Oracle有一个更大的“基础开销”,即你需要一台更强大的机器来运行Oracle
  • Oracle的“开箱即用”体验曾经是残酷的(我多年没有安装oracle系统;不知道它目前的表现如何),而mysql非常好

答案 4 :(得分:4)

Oracle是一个真正需要DBA知识的野兽。我同意那些说500k记录什么都不是的人。如果它是简单的数字/文本数据,那么它的复杂性是不值得的。

另一方面,Oracle对blob非常有效。如果您的每条记录都是100MB二进制文件,那么您需要一大笔钱在Oracle上运行(我建议使用一个带有良好SAN的3节点RAC集群)。

答案 5 :(得分:3)

我有一个项目将数据(~10M行,1.2GB数据)发送到三个不同的数据库,2个Oracle和1个MySQL。我在使用任何一种系统时都没有遇到任何问题,也没有看到任何一方有任何重大优势。如果您所在的地方已经将Oracle用于其他项目,那么添加一个新数据库不应该是一个太大的问题,但是如果您考虑设置一个新的数据库服务器并且没有任何内容已经存在,MySQL会省钱。

答案 6 :(得分:3)

Oracle Enterprise假定有一个企业支持它,即真正的Oracle DBA。新手(但能干)DBA应该能够比Oracle更容易保护MySQL,因为Oracle本质上更复杂。当然,Oracle拥有超出MySQL目前功能的企业监控工具(据我所见),但DBA需要能够使用它们才能有效。

你所描述的这么小的数据库可以被大多数东西处理,所以除非基础设施已经到位,否则我看不到Oracle的保证。两者都有复制,事务和热备份,因此要么很好。

答案 7 :(得分:2)

答案取决于完全如何配置每个DBMS。 两者都能够多次处理500,000条记录。

答案 8 :(得分:1)

Oracle更加强大。它的许多功能只能在更大的企业或高性能设置中查找。它们主要与扩展,复制和负载平衡有关。

对于小型DB,请考虑使用SQLite。对于中小型,请查看MySQL或PostgreSQL。对于最大的,请查看MSSQL,Oracle,DB2等。

编辑:看完其他答案后,我会补充一点,如果您的数据确实存在,真的至关重要,那么您需要一个复制的设置,而您可能希望查看其中一个像这样的大数据库提供商。

如果您可以牺牲潜在的(非常罕见的)数据丢失并希望提高性能,请查看一些较轻的选项。

答案 9 :(得分:1)

甲骨文确实是一头野兽。

Oracle也被广泛认为是最安全的主要数据库。

问题是甲骨文的开发人员似乎没有抓住关键的安全概念。 Oracle是市场上安全性最低的数据库服务器(据独立安全研究人员称)

http://itic-corp.com/blog/2010/09/sql-server-most-secure-database-oracle-least-secure-database-since-2002/

根据这些研究人员的说法,MySQL实际上相当安全。我对它可用的工具知之甚少。这项研究最有趣的是那些将微软SQL服务器称为玩具的人会将攻击者窃取他们的数据,因为他们使用的是具有可怕安全模型的野兽,而不是“玩具”。安全

答案 10 :(得分:0)

我正在将Oracle / SQL Server / MySql用于不同的应用程序和站点

没有数据库可以在许多不同的领域击败Oracle,但它是需要深入了解管理的数据库。

如果您发现oracle存在问题,即使有优秀的DBA员工也可能花费几次时间来解决它。

你可以使用MySql获取500K或数百万条记录,它比其他数据库更轻,并且需要零管理工作,并且不会占用大量的计算机资源,我总是在我的开发PC中使用它,而且从不我遇到了任何严重的问题。

如果您不需要Oracle的高级功能,我会要求您使用MySql或PostgreSQL。