Conversation
SchemaSynchronizer keeps a relational database aligned with a version-controlled schema definition. It applies additive and otherwise safe changes automatically, while returning destructive or ambiguous changes as SQL for a human operator to review. The project and repository are named SchemaSynchronizer; the published Maven artifacts are com.thinkaillc:schema-synchronizer (library) and com.thinkaillc:schema-synchronizer-cli (command-line tools), and the Java package is com.thinkaillc.schemasynchronizer. Use it as: two command-line utilities that serialize a source schema and synchronize a target (plus validate and dry-run for hand-authored definitions); a Spring Boot database initializer that runs before JPA validation; or a small Java API over an existing JDBC connection. Applications typically hand-author schema-definition.json in source control and apply it to each environment's database on startup. Serializing a live database is optional bootstrap.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
SchemaSynchronizer keeps a relational database aligned with a version-controlled schema definition. It applies additive and otherwise safe changes automatically, while returning destructive or ambiguous changes as SQL for a human operator to review.
The project and repository are named SchemaSynchronizer; the published Maven artifacts are com.thinkaillc:schema-synchronizer (library) and com.thinkaillc:schema-synchronizer-cli (command-line tools), and the Java package is com.thinkaillc.schemasynchronizer.
Use it as:
two command-line utilities that serialize a source schema and synchronize a target (plus validate and dry-run for hand-authored definitions); a Spring Boot database initializer that runs before JPA validation; or a small Java API over an existing JDBC connection. Applications typically hand-author schema-definition.json in source control and apply it to each environment's database on startup. Serializing a live database is optional bootstrap.
Suggestion type
Checklist
README_SOURCE.md, not the generatedREADME.md.Summary by cubic
Adds SchemaSynchronizer to the database tools list in
README_SOURCE.md.SchemaSynchronizer keeps relational database schemas aligned with version-controlled schema definitions, applying safe changes automatically and returning destructive or ambiguous changes as SQL for human review. It supports Postgres, MariaDB, MySQL, SQL Server, and Oracle.
Written for commit 1b4eb52. Summary will update on new commits.