SQLAlchemy 版本迁移

pip install alembic

完成 pip 安装之后

  • 在 shell 或终端里面 cd 到项目根目录执行
    alembic init alembic


  • 如果用虚拟机的 pycharm 把生成的文件 download 回来(包括 alembic 目录和 alembic.ini

  • 修改 alembic.ini 设置数据库连接。

    默认是 sqlalchemy.url = driver://user:pass@localhost/dbname

    sqlalchemy.url = mysql+pymysql://admin:Root110qwe@127.0.0.1:3306/tornado

  • env.py 中设置,将target_metadata赋值成数据库的元数据(metadata) 我这是是BASE元数据(导入)
    如果执行 revision 有 import 报错,注意是否正确将当前项目目录添加到 sys.path 路径

  • 还有将路径添加

    import sys
    from os.path import abspath, dirname
    root = dirname(dirname(abspath(__file__))) # 把项目根目录加入 sys.path
    print(root)
    sys.path.append(root)
    

我这里有users和posts两张表

  • 配置完成执行

    alembic revision --autogenerate -m “create_user_table”

    这里可以看到虚拟机目录在 alembic/versions 里生成了 py 文件,然后执行

    alembic upgrade head

    这样就会更新 mysql 数据库了


同时会在versions下生成对应的py文件,里面执行的都是SQL语句

如果再次修改后再次执行,会报Target database is not up to date.

因为在version中有该表的记录,解决的办法就是删到对应的记录的py文件

tornado数据库迁移相关推荐

  1. MySQL基础之 恢复数据和数据库迁移

    1.mysql命令或者source命令恢复数据 这两个命令在进行恢复数据的时候要检查是否创建数据库.如果数据库不存在,则恢复失败. 数据库迁移 1.相同版本的mysql数据库之间的迁移. mysqld ...

  2. 简单分析Flask 数据库迁移详情

    本文给大家分享的是 Flask 数据库迁移详情,db.create_all()不会重新创建表或是更新表,需要先使用db.drop_all()删除数据库中所有的表之后再调用db.create_all() ...

  3. 数据库迁移_【干货分享】DM数据库迁移方法(物理迁移)

    在数据库的维护过程中,可能涉及换服务器,或者需要现网数据库环境测试的情况,这时,最简单快速的办法就是将源数据库相关的文件拷贝到目标主机,然后注册数据库实例服务.这就是数据库的物理迁移过程,可以是从wi ...

  4. 数据库迁移用到的命令

    //在程序包管理器控制台中执行以下语句,安装EntityFramework. PM> Install-Package EntityFramework //执行成功后,控制台应用程序代码结构中,添 ...

  5. 如何将本地数据库迁移到数据库上?

    使用数据传输服务(DTS)将本地数据库迁移到 阿里云的云数据库RDS,可以实现应用不停服务的情况下,平滑完成数据库的迁移工作.接下来我们将学习下如何使用DTS将本地数据库迁移到RDS上. 背景 DTS ...

  6. 用Kettle的一套流程完成对整个数据库迁移 费元星

    原地址 :http://ainidehsj.iteye.com/blog/1735434 需求:  1.你是否遇到了需要将mysql数据库中的所有表与数据迁移到Oracle.  2.你是否还在使用ke ...

  7. Oracle XTTS跨平台数据库迁移(从Unix迁移数据库到Linux)_Oracle数据库迁移项

    Oracle数据库迁移教程04 Oracle XTTS跨平台数据库迁移实战 (真正超越OCP/OCM的项目实战系列教程) 本套风哥Oracle教程学习内容 1.Oracle XTTS技术基础知识 2. ...

  8. yii 执行指定迁移文件_Web 云开发 · 云开发数据库迁移指南

    云开发数据库 云开发为我们提供了一个 JSON 文档型数据库(NoSQL),并集成了 「增删改查」 等 API,操作方便,简单易懂.并且相比传统数据库而言它具有「高性能的数据库读写服务」,「可以直接在 ...

  9. 使用容器和数据库克隆进行数据库迁移

    SQL Server迁移在DBA的生命周期中是一个常量,SQL Server 2008的支持终结正在推动大量的迁移规划.数据库迁移通常涉及将备份还原到目标环境,为应用程序测试提供开发和QA环境,以及识 ...

最新文章

  1. SPOJ Substring Problem(Rabin Karp TLE)
  2. Zabbix配置详解
  3. IOS8 Playground介绍
  4. 安防监控产业链全景梳理
  5. Java 8功能接口–实现Scala类型的随机思维
  6. exe文件解包_如何获取别人微信小程序的源文件?
  7. 树莓派(raspberry pi)系统开发
  8. 链接ftp,把文件或图片上传到ftp指定的文件夹中
  9. Oracle时间函数(转)
  10. c语言模拟试卷答案,C语言模拟试卷2(带答案)
  11. 开源中最好的Web开发的资源
  12. QT如何实现二级下拉菜单(Combo box)
  13. JSP空间上当受骗篇
  14. 26个字母大写及小写分别对应的ASCII码值
  15. 计算机图形学一:变换矩阵-Transformation Matrices
  16. Gartner点将分布式文件存储,浪潮存储缘何一鸣惊人?
  17. 【已解决】The server cannot or will not process the request due to something that is perceived to be ...
  18. Linux配置无密登录
  19. java o2o_全渠道java b2b b2c o2o平台
  20. 网站搭建(简洁版本)

热门文章

  1. esp32 tool指令参数及说明
  2. java全面的计算器代码_Java实现计算器的代码
  3. 全志 修改KEY Patch
  4. 3 左右_3万左右电动迷你小汽车,3万左右电动迷你小汽车车型推荐
  5. python 线程同步_Python并发编程-线程同步(线程安全)
  6. json解析数组 nlohmann_JSON 数组的遍历解析
  7. oracle数据表管理
  8. 提取手机游戏资源 特效 显存分析工具 无视任何加密
  9. CentOS7 LVM磁盘扩容
  10. flask tutorial = make a blog :) flask 搭建博客系统从零开始!