我应该用于Web应用程序Postgres还是Oracle XE 以及为什么?
它们都是免费提供和商业用途。
为什么我要将一个数据库用在另一个数据库上?
答案 0 :(得分:9)
嗯,使用Oracle XE,如果达到极限,则必须购买Oracle或将整个应用程序迁移到其他数据库。使用PostgreSQL,没有限制,软件是完全免费的开源软件。
答案 1 :(得分:7)
如果您选择Oracle XE,请注意以下几点:
如果这些限制对您来说不是问题,并且您喜欢Oracle方法,那么请试一试,否则请考虑像Postgres或MySQL这样没有上述限制的开源服务器。
如果您确实选择了XE,然后发现您的要求已经发生变化,那么Oracle的下一个版本是5个座位的900USD,每个座位额外增加180个。事实上这比MS SQL Server更便宜了。
选择Oracle有一些很好的理由,特别是如果您是Java开发人员,例如你可以用Java编写存储过程,我认为它对Java Web服务有本机支持。但最终您需要权衡成本和应用程序的要求。 MySQL和Postgres允许您无需任何成本即可扩展应用程序(显然除了硬件)。
答案 2 :(得分:3)
您没有提供太多信息,但除非您已经是Oracle专家,否则我认为没有理由选择Oracle XE而不是PostgreSQL。 PostgreSQL永远是免费的,功能更强大,可扩展性更强。
您可以选择在Windows,Mac OS X或Linux上运行PostgreSQL。我认为Oracle XE仅限于Windows和Linux。
答案 3 :(得分:1)
选择数据库供应商时,请注意将应用程序的需求与供应商的数据库产品的优势相匹配。并留意他们的弱点。
例如,如果您知道您的写入将与您的读取一样频繁并且两者同时发生,那么您将想知道您考虑的每个供应商如何处理可靠性。依赖精心设计的锁定管理器和复杂锁定升级方案的供应商可能会让您感到悲伤,如果您期望应用程序负载过重。你会花更多的时间来解决数据库的锁定管理器,而不是实际解决你的问题。
这是一个例子。每个DB都有其优点和缺点需要考虑。做你的研究,找到一个比较供应商的网站,并做出选择,以平衡你的需求。如果你能获得一个eval副本,那么最好运行一些概念验证测试。编写脚本,将数据库打造成类似于您期望应用程序生成的内容并从那里开始。在此期间,请从每个供应商处获取脚本中SQL的查询计划,并了解您可以从中了解每个供应商的优化程序的工作原理。
还有更多可以说的,但希望你能得到主旨。
答案 4 :(得分:0)
您的首选平台是什么?如果它是Windows,我会选择Oracle或MySQL,因为我只听说过在Windows机器上运行PostgreSQL的坏事。
此外,Oracle有更多的GUI配置,所以如果你不是Linux黑客,你可能会更喜欢它。
另一方面,Postgres有一种优越的方式,SQL控制台和控制台工具通常更加开发和易用。 Oracle有更多的工具,但是体面的东西(比如PL / SQL导航器)并不是免费的,免费的只是糟透了。请记住,选择数据库是一项长期决策,因此请考虑应用程序需求的可能变化。如果您不准备最终在Oracle上花钱,最好选择Postgres - 安全选项。对大多数项目而言都足够好。