Would like to hear other peoples thoughts

Hello everyone,

I am currently re-Architecting my companies IT infrastructure from the ground up.

Currently my company uses Open-source Community MySQL 5.0.51a for the database for each of our clients. We have two models for our customers, Hosted - ASP (where their totally hosted out of our own data center), or LAND where the customer has their stuff in their own data center on their site. Now currently each of our customers have their own MySQL database.

My change is to stand up Oracle - Standard 11.0.2.3 databases servers and make each of those databases Multi - Tenant (having multiple customers per each database) in our production data center Hosted - ASP . Now as for a Staging / UAT environment, I intend to use a VM farm where I will have Oracle on VMware 5.1 VMs with a Linux (SUSE) guest. I will have support from Oracle on both the production and staging/UAT servers.

Now I was considering using PostgreSQL 9.2 on VMWare 5.1 VMs for DEV / TST / QA databases for back at our data center. I was also considering obtaining and using Postgres Plus Advanced Server from EnterpriseDB which adds many Oracle related features to Open Source PostgreSQL, making it better than Oracle Standard but not quite Oracle Enterprise edition. The cost for that software , tools and support is slightly less than what MySQL 5.6 support would be from Oracle.

Also since we will use Virtualization (VMWare 5.1) alot, it will make testing, deployment, and support very easy and extremely economical for us and our customers. So for our customers with the deployment on their own data centers, we will offer to deploy on Open Source PostgreSQL, if they want the added features we will obtain the Postgres Plus Advanced Server from EnterpriseDB as well. Now if the customer wants more, then we will allow them to obtain at their own cost the Oracle Licenses for Oracle Standard edition with support as well.

Now our company software and stuff would work just fine using Open Source PostgreSQL, but it would be nice to have some of the added features that Postgres Plus Advanced Server from EnterpriseDB adds to the mix like Materialized views, and standby database at a fraction of Oracle's costs.

Personally, I would be a bit nervous about using a different database system in production than I have in Dev and QA. Seems like there would be a pretty good chance of bugs creeping into the application that are not caught until production simply due to minor differences in the database systems. SQL in particular is not known for its cross vendor compatibility. Additionally if such a bug did appear, the developers would have to debug it on production.

I understand the reasoning there is licensing costs, but if the application runs fine with Postgresql why not just use that in production too? I also understand that Oracle has more features, but if the developers don't have access to those features in development how can they make use of them?

Maybe you could have a limited number of development and QA instances of Oracle that are shared among your team members, and then use Postgresql for team members' private development copies.

Hi there and I hear what your saying. Let me lay out my design better.

Production : Oracle Standard 11.2.0.3 databases/multi-tenant

Staging: Oracle Standard 11.2.0.3 databases/multi-tenant

DEV / Test : PostgreSQL 9.2 with the EnterpriseDB extensions that also give us Materialized views - doing these on VMWare 5.1 VMS with a Linux/Suse guest

Basically work will be done on PostgreSQL first and then bug tested on Staging. Our code has been set up so it is not complicated and would work in MySQL, MariaDB, Oracle Standard, and PostgreSQL as well. So any update to our code will be always bug tested/QA'd against the staging Oracle Standard DBS. Materialized views are a key add-on for faster reporting purposes.

BTW PostgreSQL is alot like Oracle Standard, and with the added EnterpriseDB add-ons it has even more features that could be included. As always we are a Software Developement shop and anything that would be included would be confirmed and tested that it works in both Oracle and PostgreSQL the same way.

The licenses for Oracle software and then support is a killer, thus Oracle should change their flag from Red to Green (for the dollar sign).