2

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

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

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

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

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

4

3 回答 3

3

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

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

在此处输入图像描述

于 2012-07-23T08:38:26.190 回答
1

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

于 2012-07-23T09:18:06.313 回答
1

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

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

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

于 2012-07-23T11:30:37.457 回答