alembic管理mysql数据库迁移

ceephoen · · 940 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

SQLalchemy ORM的数据库迁移管理alembic。
1 安装 pip install alembic
2 使用【terminal操作】
    数据库迁移管理:
    1>
    alembic init dir  # 添加version的文件夹
    alembic init C:\Users\xx\xx\xx\migrations
    2>
    编辑alembic.ini 更改sqlalchemy.url = mysql+mysqlconnector://user:pwd@localhost:3306/dbname?charset=utf8
    3>
    编辑migrations\env.py 在21行添加:
    # =============================
    sys.path.append(os.getcwd())
    from datum.datum import Base
    target_metadata = Base.metadata
    # target_metadata = None
    # =============================
    注意:顺序不能改变,sys.path.append(os.getcwd())之后才能成功导包
    4>操作:
    alembic revision --autogenerate -m "initial"  # 首次迁移
    alembic revision --autogenerate -m "del bak"  # 更新字段
    alembic upgrade head  # 迁移数据库
    alembic downgrade -1  # 回退一个版本
NOTE:
    from datum.datum import Base
    Base是SQLalchemy的实例化,如:
    from sqlalchemy.ext.declarative import declarative_base
    Base = declarative_base()
    定义的数据库继承Base


有疑问加站长微信联系(非本文作者)

本文来自:Segmentfault

感谢作者:ceephoen

查看原文:alembic管理mysql数据库迁移

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

940 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传