咱們在升級系統的時候,常常碰到須要更新服務器端數據結構等操做,以前的方式是經過手工編寫alter sql腳本處理,常常會發現遺漏,致使程序發佈到服務器上後沒法正常使用。python
如今咱們可使用Flask-Migrate插件來解決之,Flask-Migrate插件是基於Alembic,Alembic是由大名鼎鼎的SQLAlchemy做者開發數據遷移工具。sql
具體操做以下:數據庫
1. 安裝Flask-Migrate插件flask
$ pip install Flask-Migrate
2. 修改Flask App部分的代碼,以增長Migrate相關的Command服務器
db = SQLAlchemy(app) migrate = Migrate(app, db) manager = Manager(app) manager.add_command('db', MigrateCommand)
3. 初始化數據結構
$ python app.py db init
4. 數據遷移,自動建立遷移代碼app
$ python app.py db migrate
5. 更新數據庫工具
$ python app.py db upgrade
後面若是有Model變動的話,在開發環境下只須要重複執行第四、5步便可。spa
而在服務器端只須要執行第5步便可實現數據庫的遷移工做。插件