I have to develop a web application in Java, a pretty big one with loads of data to store and manipulate. I am also planning to use Hibernate and Spring.
There are many databases available now like MSSQL Server, MySQL Server, Oracle, db2, etc.. Which do you recommend?
Features I look for would be
-
Java – database connection should be efficient and easy to implement
-
good user interface for Database Server Management
-
data storage capacity
-
support
-
and obviously the cost factor.
All valuable suggestions would be appreciated. Thanks in advance 🙂
Edited: The web application will be hosted on a Linux Server.
Everything works with Java, and you can get support for anything if you pay for it.
My personal experience:
Are your servers Windows machines? If not, MSSQL is out. Otherwise MSSQL has pretty decent GUIs. I haven’t tried working with it and Java — the Visual Studio support for developing with it is very good.
I haven’t found Oracle to be worth the cost. I worked at a place that paid for support and still it took them forever to acknowledge data-munging bugs in the JDBC driver (still not fixed, last I checked).
My MySql usage is simple — if you need complex functionality, check to make sure that it’s supported
My 2 cents: stick with MySql or Postgres, simple SQL and try not to make any stored procedures or use proprietary SQL. If you find that you outgrow it, it will be a trivial port.
The more you try to take advantage of the proprietary features, the more you will be locked in.