Audience
Application developers seeking a tool to manage their database migration operations
About Alembic
Alembic is a lightweight database migration tool that can be used with the SQLAlchemy database toolkit for Python. Alembic is written by the author of SQLAlchemy. While Alembic can be installed system-wide, it’s more common that it’s installed locally in a virtual environment, as it also uses libraries such as SQLAlchemy and database drivers that are more appropriate for local installations. Can emit statements to a database in order to change the structure of tables and other constructs. Provides a system whereby "migration scripts" may be constructed; each script indicates a particular series of steps that can "upgrade" a target database to a new version, and optionally a series of steps that can "downgrade" similarly, doing the same steps in reverse. Very open-ended and transparent configuration and operation. A new Alembic environment is generated from a set of templates which is selected among a set of options when setup first occurs.