【问题标题】:Migrating asp.net membership to Windows Azure将 asp.net 成员身份迁移到 Windows Azure
【发布时间】:2012-07-23 22:53:46
【问题描述】:

我正在将我的 asp.net mvc-3 项目迁移到 Windows azure。我必须将 asp.net 成员身份迁移到 Windows azure。我读了this article. 从这篇文章中我了解到迁移成员的以下几点:

1) 迁移成员资格意味着只需更改存储用户相关信息的数据存储。就我而言,意味着我使用 SQL Server Express 2008 作为本地数据存储。我只需要将其更改为 SQL azure 数据中心。

2) 我通过 Nuget 下载了 ASP.NET 通用提供程序。这将自动将成员资格支持扩展到 SQL azure。意味着我只需要更改 web.config 文件中的连接字符串。在该连接字符串中,它需要服务器名称和数据库。为此,我必须在 Windows azure 中创建一个帐户。我可以在哪里创建数据库。从那里我可以得到现成的连接字符串,我必须将其粘贴到我的 web.config 文件中。

我想知道做完这一切之后的下一步。

我只想知道我的方向是否正确。如果我有什么遗漏或我不在正确的道路上,那么请指导正确的方向?谢谢

【问题讨论】:

    标签: asp.net-mvc-3 azure asp.net-membership


    【解决方案1】:

    使用 ASP.NET 通用提供程序是可行的方法。对于迁移部分,我建议您只需使用 SQL Server 的生成脚本功能(右键单击您的数据库,选择任务,选择生成脚本)。

    在导出向导中,您可以选择导出到 SQL Azure,并且脚本应该包含架构和数据。这将使您可以非常轻松地将当前的本地数据库迁移到 SQL Azure。

    【讨论】:

      【解决方案2】:

      除了 Sandrino 的回答之外,我只想添加一个使用 SQL Azure Migration Wizard 的建议,因为它比 SSMS 中的集成功能要好得多。举个简单的例子,SQL Azure 迁移向导会自动为没有聚集索引的表创建聚集索引。另一件事是,迁移向导将为您提供任何不兼容 SQL Azure 的定义/数据/语句的详细解释,而迭代的“生成脚本”只会抛出“它不兼容”..

      【讨论】:

        【解决方案3】:

        首先,如果它有效,@astaykov 对 SQL Azure 迁移向导的建议应该是您的第一步。它会告诉您数据库的哪些部分与 SQL Azure 不兼容。 SSMS 将为需要迁移的每一行生成一个插入语句。迁移向导将使用效率更高的 BCP。

        大约一年前,我不得不为一位客户迁移会员数据库。我遇到的问题是,由于 aspnet_regsql.exe 生成的数据库包含与 SQL Azure 不兼容的元素,因此无法进行自动迁移。有一个新版本aspnet_regsqlazure.exe 创建具有相同架构的表,但支持的存储过程与 SQL Azure 兼容。创建匹配架构后,您可以通过任何您喜欢 SSMS、迁移向导或 BCP 的方式移动表内容。

        再次,请务必先尝试 astaykov 的建议。如果最近生成的会员数据库发生了变化,那我要做的事情会容易得多。

        【讨论】:

          猜你喜欢
          • 2012-08-27
          • 2014-04-20
          • 2013-04-26
          • 1970-01-01
          • 1970-01-01
          • 2021-03-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多