我必须用Java开发一个Web应用程序,这是一个非常庞大的应用程序,需要存储和操作大量数据。我也计划使用Hibernate和Spring。
现在有很多数据库可用,如MSSQL Server,MySQL Server,Oracle,db2等。你推荐哪一个?
我寻找的功能将是
Java - 数据库连接应该高效且易于实现
数据库服务器管理的良好用户界面
数据存储容量
支持
显然是成本因素。
我们将非常感谢所有宝贵的建议。在此先感谢: - )
已编辑:Web应用程序将托管在Linux服务器上。
答案 0 :(得分:3)
一切都适用于Java,如果您付费,您可以获得任何支持。
我的个人经历:
您的服务器是Windows机吗?如果没有,MSSQL就出局了。否则MSSQL有相当不错的GUI。我没有尝试过使用它和Java - Visual Studio支持使用它进行开发非常好。
我没有发现Oracle值得付出代价。我在一个支付费用的地方工作,但仍然花了很长时间才知道JDBC驱动程序中的数据错误(仍然没有修复,最后我检查过)。
我的MySql用法很简单 - 如果您需要复杂功能,请检查以确保支持
我的2美分:坚持使用MySql或Postgres,简单的SQL并尽量不制作任何存储过程或使用专有SQL。如果你发现它长大了,它将是一个微不足道的端口。
您尝试利用专有功能的次数越多,您锁定的就越多。
答案 1 :(得分:1)
只要数据库设计得当(针对OLTP进行规范化并针对OLAP进行非规范化),您提到的所有数据库都可以很好地扩展。
在所有其他条件相同的情况下,如果成本是一个很大的因素,那么MySQL可能会比其他产品便宜。
答案 2 :(得分:1)
除了MySQL,Postgresql和MS SQL Server之外,您可能还想查看Apache Derby(又名IBM Cloudscape,又名JavaDB)。它非常便携:数据库代码只是一个jar文件;数据库文件也可以从一个平台复制到另一个平台而没有任何问题。它支持SQL99 and SQL-2003 standards,in memory databases,可以用作嵌入式数据库或网络数据库。它没有自带的用户界面,您可以从众多JDBC SQL前端中选择一个,例如Squirrel SQL,Aqua Data Studio或SQL Developer(以及其他)。可以在IBM's web site找到更多参考资料。
我也同意这里的其他海报,甲骨文不值得花钱或头疼。一个值得注意的问题是它的JDBC驱动程序返回日期的非标准对象,因此您的Java代码需要包含Oracle特定的黑客攻击。
答案 3 :(得分:1)
您可以查看Firebird
数据库服务器管理的良好用户界面:IBExpert Database Worbench适用于Windows FlameRobin其他地方
数据存储容量:您可以查看此blog
显然是成本因素:免费
答案 4 :(得分:0)
我更喜欢MS SQL Server的速度,支持等大多数Windows主机以象征性的费用提供MS SQL支持。 这是一个免费的GUI SQl管理器 http://sqlmanager.net/en/products/mssql/manager/download SQl Server管理工作室也在那里 :)
答案 5 :(得分:0)
Java,Hibernate和Spring几乎可以与任何数据库一起使用。像Squirrel这样的工具也简化了DB之间的DB管理。
关键是成本。我推荐PostgreSql。它非常出色:具有庞大的数量,强大的功能列表,拥有可靠的用户社区,并且是免费/开源的。
答案 6 :(得分:0)
我建议你