Alembic 怎么使用?

数据库版本化

​ 一般大家会将大家的编码放进到某一VCS(版本自动控制系统)中 ,开展追朔的版本管理方法 。一个项目除开编码,一般还会继续有一个数据库,这一数据库将会会伴随着项目的演变产生变化 ,乃至必须能够 回退到以往的某一情况,因此一些专用工具将数据库的版本化也列入了管理方法。

​ 在以前的数据库实际操作中,大家增加一个字段名是否每一次都得删掉数据库表 ,随后再再次将新创建的数据库表映射到数据库中。那样实际操作是否很睾丸疼?对吧?因此Sqlalchemy创作者拜尔以便处理这一难题,开发设计了Alembic这一迁移专用工具 。

Alembic 功效:

便捷数据库与ORM实体模型的迁移与映射。

Alembic 安裝:

pip install alembic

复位

alembic init YOUR_ALEMBIC_DIR
'''
接着你的项目文件目录应当会增加一个alembic.ini文件及其一个YOUR_ALEMBIC_DIR文件目录,最好是特定一个合乎自身项目设计风格的取名。
'''

接下去的实际操作全是紧紧围绕这一文件目录

  • alembic.ini 出示了一些基础的配备
  • env.py 每一次实行Alembic都是载入这一控制模块 ,关键出示项目Sqlalchemy Model 的联接
  • script.py.mako 迁移脚本制作转化成模板
  • versions 储放转化成的迁移脚本制作文件目录
'''
yourproject/
    alembic.ini
    YOUR_ALEMBIC_DIR/
        env.py
        README
        script.py.mako
        versions/
'''

你需要编写alembic.ini文档去特定Alembic的数据库联接

sqlalchemy.url = mysql pymysql://root:admin@localhost/alembic_demo
# 注:和数据库联接信息内容一样

寻找env.py文件 ,改动target_metadata主要参数

import os
import sys
import alembic_demo

# 把当今项目相对路径添加到path中
sys.path.append(os.path.dirname(os.path.dirname(__file__)))

target_metadata = alembic_demo.Base.metadata

建立数据库迁移文档,指令以下:

alembic revision --autogenerate -m "first commit"

建立取得成功会在version文件目录下建立一个迁移文档 。

将迁移文档映射到数据库中,指令以下:

alembic upgrade head

OK ,数据库表已取得成功映射到数据库中。

流程许多 ,但如果你多敲几次,你也就会了解把握alembic的使用方法。自然 ,假如你确实记不得,再看看我的这篇博闻 。

文章来源于网络,如有侵权请联系站长QQ61910465删除
本文版权归趣快排营销www.seoguRubloG.com 所有,如有转发请注明来出,竞价开户托管,seo优化请联系✚Qq61910465