Gerald is a general purpose database schema toolkit written in Python. It can be used for cataloguing, managing and deploying database schemas. It is designed to allow you to easily identify the differences between databases.
You can use Gerald to determine the differences between your development and test environments, or to integrate changes from a number of different developers into your integration database.
You can use Gerald to compare schemas across different database engines (e.g. Oracle and MySQL), you can also use it to produce database agnostic documentation in text or XML.
Gerald is designed from the ground up to support as many popular relational database systems as possible. Currently it will document and compare schemas from databases implemented in MySQL, Oracle and PostgreSQL. Other databases will be supported in future releases.
You can download Gerald at the package page
Everything you need to get and run Gerald is at these links;
svn checkout http://halfcooked.svn.sourceforge.net/svnroot/halfcooked/tags/release-0.4.1.1/gerald/ gerald/
This is release 0.4.1.1 of Gerald. It’s still alpha code, but I use it all of the time. Having said that, I’m fairly happy with the current functionality so I will only change it if I absolutely have to, and then usually to extend the features available. This is a minor release with a few bug fixes, improvements and tidying up of the code. It fixes a number of bugs. The main purpose of this release is to fix the installation process when using easy_install. Full details can be found in the CHANGELOG.txt file provided with the code.
The core function is fairly solid and will support a number of enhancements. I’m specifically thinking about, but in no particular order;
If anyone has suggestions I’m happy to hear your thoughts. Send an email to andy47@halfcooked.com