【问题标题】:Moving Application Services database aka aspnetd from SQL Server 2008 to SQL Server 2005将应用程序服务数据库(即 aspnetd)从 SQL Server 2008 移动到 SQL Server 2005
【发布时间】:2011-11-28 22:06:44
【问题描述】:

我需要将 aspnetdb 从开发机器移动到测试机器。开发是 SQL server 2008,测试是 2005。我尝试编写 aspnetb schema+data 脚本,然后在测试中运行它,它工作正常并且数据库已填充,但是使用时是我的 asp.net 4 应用程序出现以下错误

“System.Web.Security.SqlRoleProvider”需要与架构版本“1”兼容的数据库架构。但是,当前的数据库架构与此版本不兼容。您可能需要安装与 aspnet_regsql.exe(可在框架安装目录中获得)兼容的架构,或将提供程序升级到更新版本。

我想知道我做错了什么以及如何解决这个问题。最好不要在测试机上运行 aspnet_regsql.exe 工具。

【问题讨论】:

    标签: asp.net sql-server aspnetdb


    【解决方案1】:

    我认为您不一定做错了什么,但是在“降级”数据库时只有几个选项可供选择。 1) 将数据库复制到较低版本,2) 将日志传送到较低版本,3) 复制架构和数据,正如您所做的那样,但是我会使用 SSIS 来完成此任务。

    但是,您看到的错误更像是排序规则问题。检查您的源数据库和目标数据库是否设置为使用相同的排序规则设置。

    也可以看看这个帖子The 'System.Web.Security.SqlMembershipProvider' requires a database schema compatible with schema version '1'

    【讨论】:

    • 我猜这是一个排序规则问题。我再次生成了脚本,但这次我很小心,在 Management Studio 中的 Generate and Publish Script 向导的 Advanced 选项卡中,我注意到 Script Collat​​ion 选项默认为 false。我将其设置为 true,最终现在一切正常。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多