我们正在将一个简单的ASP.NET MVC应用程序部署到我们的一个暂存服务器上,当EntityFramework尝试迁移现有数据库时,我们遇到了以下错误。
CREATE DATABASE permission denied in database 'master'.
情况如下:
- 这是迁移首次运行。
- 数据库已经存在(实际上是一个 Umbraco 数据库)。
很明显,以下方法(来自 EntityFramework)的返回值为 false,但它应该返回 true:
System.Data.Entity.Migrations.DbMigrator.EnsureDatabaseExists()
数据库初始化器有以下代码:
Database.SetInitializer(new MigrateDatabaseToLatestVersion<DataContext, Configuration>());
由于我们使用基于代码的迁移,因此关闭了自动迁移。
连接字符串指向正确的数据库,并且用户对该数据库具有db_owner权限。用户没有访问服务器上其他表的权限。
这是一个常见的问题吗? 有人知道解决方法吗?
谢谢!