flask-migrate

使用Flask-migrate 执行数据库迁移命令(mysql)

1.python manage.py db init #初始化,之后生成一个migrations文件夹
我在执行这步之前先把项目里的migrations文件夹删除。
执行完这步之后出现了这个文件夹,不过versions文件夹里变成空的了。

  1. python mange.py db migrate
    执行这一步之前请确保 mysql中已经创建好了连接的数据库。不然会报错
    执行结果:

    出现了这个文件 2c3282dc72cd_.py 是根据model.py 自动创建的建表语句,你可以根据需要自行调整。

  2. python mange.py db upgrade
    执行这一步后,会执行2c3282dc72cd_.py 里的upgrade函数,将迁移中的改动应用到数据库中

看了好多篇资料,好不容易才整理完发现一篇博客讲的挺清楚。
https://wing324.github.io/2017/02/26/Flask-Migrate的使用/

错误处理

数据库管理方法:

使用flask_sqlalchemy 建立model ,然后根据上面三步骤创建好数据库之后,如果之后想要修改数据库模型,直接修改model.py 的模型结构。然后再执行migrate ,upgrade 命令就行。数据库原先的数据不会消失。

flask-migrate数据迁移后再中途部署的同步方案

https://cloud.tencent.com/developer/news/213111
https://blog.csdn.net/yannanxiu/article/details/87087006
下面命令把当前数据库版本标记进去
flask db stamp <revision>
<revision>是数据库迁移的版本
flask db heads   # 显示最后一次数据库迁移版本(?),heads应该类似于git的head
# OR
# flask db current # 显示当前数据库迁移版本
posted @ 2019-03-23 15:30  P_PlusUltra  阅读(195)  评论(0编辑  收藏  举报