万水千山ABP - 系统发布后迁移 CodeFirst 数据库[原创]
在项目开发的过程中,常会遇到项目发布后还变更数据库的情况。这时如何方便地进行数据库迁移呢 ?
下面直接列出操作的步骤:
1. 发布修改后的应用:
将最新版本的应用更新到目标机器中。更新的文件当然不包括数据库。
这时运行应用,将显示错误信息:
支持“AbpZeroTemplateDbContext”上下文的模型已在数据库创建后发生更改。请考虑使用 Code First 迁移更新数据库
表示我们的数据库需要更新。
2. 拷贝迁移工具:
将我们的项目文件夹下的 migrate.exe 拷贝到目标机器中。
源文件: <项目文件夹>\packages\EntityFramework.<版本>\tools\migrate.exe,如 C:\project-Epmp\packages\EntityFramework.6.1.3\tools\migrate.exe
目标目录: <发布文件夹>\bin,如 D:\project-Epmp\publish\bin
目标机器 bin 目录下,应该有文件 EntityFramework.dll 等
3.执行迁移命令:
在命令提示符下,执行下面的命令(数据库连接以SqlServer为例)
migrate.exe xxx.yyy.EntityFramework.dll /connectionString="Server=localhost;Database=数据库名;User=用户名;Password=用户密码;" /connectionProviderName="System.Data.SqlClient"
执行顺利的话,会显示“正在应用显示迁移 ...” 等信息。
好,到这里就迁移结束了。
在打开更新后的应用,应该可以正常运行了。
万水千山ABP - 系统发布后迁移 CodeFirst 数据库[原创]的更多相关文章
- Windows系统崩溃后快速恢复Oracle数据库的妙招
Windows系统崩溃后快速恢复Oracle数据库,以下是操作步骤 假设oracle数据安装在d:\\oracle文件夹中,数据库名称orcl 1>将崩溃的数据库安装目录"d:\\or ...
- 系统重装后恢复Oracle数据库
这周装系统的固态盘坏了,固态硬盘用到坏也是第一次碰到....只能新买个硬盘重装系统了.到了Oracle数据库恢复那一步了,其实很简单.只要没把数据库安装路径放在系统盘就行.*^____^* 先找到重装 ...
- 系统重装后,Mysql数据库重装加载原来数据库
相信不只我一个人因为重新装了系统后,导致mysql数据库无法使用的问题.尽管可以重新安装一个mysql服务端程序在自己的电脑上,但是要如何才能够将之前的数据库也一并重新恢复呢? 今天,我找到了解决之道 ...
- Asp.Net mvc4 项目 在vs中调试正常 在IIS发布后连接oracle数据库时提示数据库连接关闭
解决办法: 1.打开iis,找到发布的程序 2.右键单击“TAKANAPP” 从右键菜单选择“管理应用程序”--“高级设置....” 在打开的高级设置 面板 查看对应的应用程序池 名称 3.设置应用 ...
- Qt+数据库发布后无法打开数据库
在main.cpp中: QApplication a(argc, argv); QString strLibPath(QDir::toNativeSeparators(QApplication::ap ...
- 在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移
在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移 最近发布的ASP.NET MVC 5 及Visual ...
- System.InvalidOperationException: 支持“XXX”上下文的模型已在数据库创建后发生更改。请考虑使用 Code First 迁移更新数据库(http://go.microsoft.com/fwlink/?LinkId=238269)。
System.InvalidOperationException: 支持“XXX”上下文的模型已在数据库创建后发生更改.请考虑使用 Code First 迁移更新数据库(http://go.micro ...
- ABP 3.7版本迁移数据库报错未能加载文件或程序集“Castle.Core, Version=4.0.0.0”
ABP 3.7 3.8版本升级后迁移数据库,报错未能加载文件或程序集“Castle.Core, Version=4.0.0.0”,System.ComponentModel.Annotations也可 ...
- Asp.Net 应用程序在IIS发布后无法连接oracle数据库问题的解决方法
asp.net程序编写完成后,发布到IIS,经常出现的一个问题是连接不上Oracle数据库,具体表现为Oracle的本地NET服务配置成功:用 pl/sql 等工具也可以连接上数据库,但是通过浏览器中 ...
随机推荐
- 【安卓网络请求开源框架Volley源码解析系列】定制自己的Request请求及Volley框架源码剖析
通过前面的学习我们已经掌握了Volley的基本用法,没看过的建议大家先去阅读我的博文[安卓网络请求开源框架Volley源码解析系列]初识Volley及其基本用法.如StringRequest用来请求一 ...
- [ExtJS5学习笔记]第四节 欢迎来到extjs5-手把手教你实现你的第一个应用
本文地址:http://blog.csdn.net/sushengmiyan/article/details/38331347 本文作者:sushengmiyan ------------------ ...
- 与信号相关的linux系统编程API
1. kill(pid_t pid, int sig); //给指定的进程发送sig信号 raise(int sig); //给当前进程发送sig信号2. 处理指定的信号 typedef v ...
- Android面试题目总结
1.java 基础题,输入结果是什么? public static void main(String[] args) { String str = new String("abc" ...
- 【一天一道LeetCode】#206. Reverse Linked List
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Reverse ...
- MyEclipse2014搭建JSF项目实例
开发环境: Windows2008 R2 64位 + MyEclipse Professional 2014 +JDK1.7+Tomcat7.0 搭建步骤: 1.打开MyEclipse2014后新建 ...
- 记录github出错及解决方案
刚刚在github上更新自己项目的一些内容时出现了一些错误,几经折腾及在网上查找资料终于解决.具体记录如下: 主要就是就是在push时报错,错误信息如下: 根据报错信息原本以为是要重新pull一下,但 ...
- Android Studio(AS)-->导入项目
1:首先,你必须要有一个工程(Project), 才可以打开项目(Module); (注意:Eclipse中的Workspace对应Android Studio 中的Project, Eclipse中 ...
- Android开发技巧——实现底部图标文字的导航栏(已更新)
本文章的导航栏代码参考了viewpagerindicator的实现.本文叙述的是之前版本的qq或微信中,底部的图标加文字的导航栏的实现. 2014-09-14 13:59:42更新:library的代 ...
- flex 强制转换类型失败无法将object转换为XXX
错误描述 flex在加载module时报出如题所示的错误, 实际表现 问题就出现在这 我取消这个错误提示框 再次在前台查询数据 就一切ok 问题就出现在这一句 var zoufangModel:ZfR ...