Currently, I work in a company with about 20 developers, give or take a few, and am looking for a way to give each developer their own development database for dev/testing purposes.

Each developers database would come from a "master" database. So, each database would be built from a snapshot of the this master database and could then be upgraded to a new version when schemes, tables, columns, or whatever changes.

So, essentially, a developer would:

  • Come into work, and fire up their windows pc (all are on windows 7 with a not to real shot of updating to windows 8/10 soon)
  • Update their VM (or whatever is hosting their individual database) to the new development database to include any database changes that occurred the previous day and apply the snapshot of the master database. Either manually or through some kind of "automated" way with a button click that would run powershell or other scripts.
  • OR continue work from the previous day without upgrading/updating their development database to include previous day changes to keep any test data they are working with and table changes that haven't passed through code review

We are working with

  • Windows 7 machines (as stated earlier) with 16 GB ram, 500ish GB harddrives
  • Oracle 11g / 12c databases

What are some recommendations for having local test databases and tool(s) that will make them easy to upgrade/manage and are lightweight?

Currently, I'm looking into VMWare, OracleVM, and Hyper-V on a Widows 8/Server 2012 box. Really just looking for Windows 7 compatible suggestions even though a Hyper-V solution would need Windows 8.

  • Shouldn't the development database be the same as the production database? Have you decided yet what that will be? Jul 23 '15 at 7:21
  • Sqlite might be easiest, since you can "update" the database simply by copying a file. However, other databases will have export/import or backup/restore functionality. You can pretty much use what you want - but I would suggest figuring our which database you will use for production and using that. Jul 23 '15 at 7:23
  • We have a database that will have production data on it and be updated from time to time. But we want all developers to have their own local copy to be able to revert/update/upgrade
    – B-M
    Jul 23 '15 at 13:46
  • What are you using for the production database ? e.g MySql. Jul 23 '15 at 14:47
  • We use Oracle 11g, upgrading to 12c within a year, as our production database environment.
    – B-M
    Jul 23 '15 at 15:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.