SchemaCrawler is a free database schema discovery and comprehension tool. SchemaCrawler has a good mix of useful features for data governance. You can search for database schema objects using regular expressions, and output the schema and data in a readable text format. The output serves for database documentation, and is designed to be diff-ed against other database schemas. SchemaCrawler also generates schema diagrams. You can execute scripts in any standard scripting language against your database. You can find potential schema design issues with lint.
SchemaCrawler supports almost any database that has a JDBC driver, but for convenience is bundled with drivers for some commonly used RDBMS systems. SchemaCrawler works with any operating system that supports Java SE 8 or better.
SchemaCrawler is also a Java API that makes working with database metadata as easy as working with plain old Java objects.
SchemaCrawler is available under a number of licenses.
Explore the SchemaCrawler command-line with a live tutorial on Katacoda.
SchemaCrawler is available in a number of formats, including a download with examples, source code examples, plugin starters, a Maven reporting plugin, Docker containers, operating system specific installers, and jars on The Central Repository. For a complete list, see downloads and distributions.