DB Ghost Change Manager
The Change Manager gives you all the tools to implement the full DB Ghost Process enabling you to script out your databases into
individual DROP/CREATE scripts, place those scripts under source control, modify them there and then build and deploy from those scripts.
Script databases into source control
Once a database has been successfully scripted and placed under source control it can then be regarded as the "source database". Therefore, instead of developers keeping
a database instance up to date with their changes they simply update the scripts in source control to reflect the desired schema.
Synchronize target databases to the source
Once you are ready to deploy those changes you simply baseline the entire set of source scripts using your source control system ("label" or "baselining" functionality is
found in most source control systems) and then extract those scripts to disk and use the Change Manager to build a new database (to verify all dependencies are ok
and that no syntax errors exist) and then compare and synchronize your target database.
To cater for any situations that can't be automatically handled the Change Manager allows "custom scripts" to be included at various points in the overall process enabling
virtually any build or synchronization situation to be handled.
Change Manager Features
- Scripts all object types into individual DROP/CREATE scripts, ready for check in to source control.
- Scripts data into boilerplate INSERT scripts.
- Builds databases from individual object scripts.
- Highlights syntax, dependency and data errors.
- Creates a single script for the database build that can be reused.
- Can synchronize two databases making them match precisely.
- Can synchronize an existing database to a set of base schema creation scripts in your Source Management System.
This means that your Source Management System itself provides a complete audit trail.
- Can insert custom scripts at the end of the build, before and after the synch process.
- Creates a script of the differences between two databases or base schema scripts and a target database.
- Handles all types of database object and all complex interactions.
- Intuitive, straightforward wizard based interface.
- SessionSave facility lets you save your wizard answers for later reuse.
The following set of screenshots show an example, using the Change Manager to build, compare and synchronize a database. The first step is to choose
the build, compare and synchronize options on the task list:
Next, the location of the scripts to be used to build the source database:
Next, the name of the database to be built as the source database is entered:
Next, the database that is to be synchronized to the set of source scripts (the
target database) is chosen:
Next, this screen allows you to limit the Change Manager to only objects that are new, different or redundant. It also allows further refinement in terms
of checking ordnal position, collations and extended properties etc. Note also that DB Ghost can report on duplicated indexes which are a performance
drain, especially on large databases:
Next, we can select any static data we wish to synchronize:
Finally on the process review screen we can save our settings, and review the options we have chosen before processing:
Detailed information is given during the build, compare and synchronization process:
After a few minutes the run is completed - the target database "AdventureWorks_Target" is now at the same schema level as the set of DROP/CREATE scripts
in the source control system.