【问题标题】:CREATE DATABASE permission denied in database 'master'. error in MVC 4 application数据库“master”中的 CREATE DATABASE 权限被拒绝。 MVC 4 应用程序中的错误
【发布时间】:2013-08-16 09:07:54
【问题描述】:

部署我的 MVC 4 应用程序后,我尝试注册用户,得到这样的错误:

数据库“master”中的 CREATE DATABASE 权限被拒绝。

连接字符串是:

<add name="Market" providerName="System.Data.SqlClient" connectionString="Data Source=endine.arvixe.com; Initial Catalog=Market; Uid=mylogin; Password=mypass; MultipleActiveResultSets=true; " />

和 DbContext:

public class Market: DbContext
    {
        public Market()
        {
            Database.SetInitializer<Market>(new MarketInitializer());
        }
    }


public class MarketInitializer: DropCreateDatabaseIfModelChanges<Market>
    {
        protected override void Seed(Market context)
        {
            base.Seed(context);
        }
    }

我使用相同的myloginmypass 使用SQL Management Studio 访问数据库,并使用脚本创建了Market 数据库。但是在站点中,无法访问数据库。

我怎样才能找到它的原因?

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-4 database-connection connection-string dbcontext


    【解决方案1】:

    问题是这段代码DropCreateDatabaseIfModelChanges&lt;Market&gt;

    public class MarketInitializer: DropCreateDatabaseIfModelChanges<Market>
        {
            protected override void Seed(Market context)
            {
                base.Seed(context);
            }
        }
    

    模型在某个时候发生了变化,因此它正在尝试删除数据库并重新创建它

    【讨论】:

    • 数据库中是否有连接字符串指向的表?
    • DropCreateDatabaseIfModelChanges 创建当前模型的散列并将其与数据库散列进行比较,如果它们不同,则它将删除数据库并重新创建它。当您将应用程序部署到生产环境时,这不是您想要的
    • 现在我从数据库中删除了表。我会尝试,然后将结果写在这里..
    • 我从代码中删除了这一行,Database.SetInitializer(new MarketInitializer());并再次部署,再次重新创建数据库,但我仍然收到该错误..
    • web.config 文件中是否还有其他连接字符串?
    【解决方案2】:

    有时会发生这种情况,因为您在本地 SQL Server 实例上没有系统管理员角色。我找到了有用的文章,您可以在其中下载脚本命令并安装它。您将被要求提供 SQLEXPRESS 名称或实例名称,您只需输入“SQLEXPRESS”并输入即可。而已。它会将您添加到本地服务器实例的系统管理员角色。

    下载命令来自:http://archive.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=addselftosqlsysadmin&DownloadId=9198

    如果它不适合你,请告诉我。

    【讨论】:

      猜你喜欢
      • 2012-08-09
      • 2011-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-19
      相关资源
      最近更新 更多