【问题标题】:Emulate/Simulate SQL Azure Locally?在本地模拟/模拟 SQL Azure?
【发布时间】:2011-08-18 04:55:04
【问题描述】:

与常规的 MS 开发内容相比略有 OT。

我想使用 MSSQL 2008 作为 DB 来编写我的下一个 .NET 4.0 应用程序,但是以“Azure 就绪”的方式配置存储和访问方法,因此当新的财政年度在夏季开始时我们可以想象做一些低影响的事情,比如改变一个连接字符串(我知道还有更多),我们可以只使用 SQL Azure。

我确实在http://www.microsoft.com/en-us/sqlazure/videos.aspx看到了这些东西

有没有大师看过关于如何做到这一点的建议/指针?

谢谢。

【问题讨论】:

    标签: sql-server-2008 azure azure-sql-database


    【解决方案1】:

    Azure 的 SDK 中已经有本地模拟器,你可以直接使用。

    关于从 SQL 2k8 切换到 Azure SQL,请记住,您将失去很多功能。 Azure 不允许用户定义类型,不允许全文搜索,并且还丢弃了很多系统功能。

    Azure SQL 限制为每个数据库 10 GB,没有例外。而且你不能进行跨数据库查询。

    Azure 中不支持的 SQL Server 功能:http://msdn.microsoft.com/en-us/library/ff394115.aspx

    Azure 不支持的 T-SQL 功能:http://msdn.microsoft.com/en-us/library/ee336250.aspx

    【讨论】:

    • 支持最大 50GB 的数据库(使用 SQL Azure 联合更大),并且您已存储过程。您肯定会发现缺少 SQL Server 的某些功能,但称其为 LOT 具有误导性。像 CLR 支持这样的几个项目是晦涩的并且很少使用。跨数据库查询可以在中间层实现。
    • 我认为这根本没有误导性。 OP 所要求的计划所需的数量(将连接字符串从 2k8 切换到 Azure)肯定有资格作为 LOT。
    • 嗯......我们可以同意不同意这一点。我现在已经在他们的 Windows Azure 部署中与数十家 ISV 合作过,其中许多都使用 SQL Server 到 SQL Azure 的迁移。肯定存在差异,但在某些情况下,甚至从未注意到这些差异。对于像 OP 所描述的那样的新建项目,他可以提前做出决定,以避免有据可查的差异并且几乎没有摩擦。
    【解决方案2】:

    您可能想查看 SQL Azure 与 SQL Server 比较信息页面here。这将帮助您避免一些尚未在 SQL Azure 中找到的功能。然后,您可以在本地使用 SQL Server 的同时为 SQL Azure 构建。面向 SQL Azure 时需要注意的一些常见事项:

    • 某些系统表不存在
    • 没有分布式事务
    • 您无法从一台数据库服务器连接到另一台数据库服务器
    • 每个表都需要一个聚集索引

    您也可以查看SQL Azure Migration Wizard。此工具将为您执行兼容性分析并将您的架构迁移到 SQL Azure。

    【讨论】:

    • 是的,特别让我印象深刻的是,由于所有表都需要聚集索引,因此不支持 SELECT INTO。这在我们的许多存储过程中被证明有点痛苦,但您当然可以解决它。
    【解决方案3】:

    我个人不会打扰。

    我只是使用 SQL Azure 数据库进行开发和测试。这样你就可以确定它会起作用。

    David Makogon 对不存在的列表是正确的。当我将一个大型应用程序迁移到 azure 时,我发现最大的痛苦是缺少 SELECT INTO,我曾经用它来填充许多存储过程中的临时表。

    每月只需 7GBP,您就可以针对真正的 azure 数据库进行开发,并且 100% 确定它会在您迁移时工作。

    干杯

    【讨论】:

      【解决方案4】:

      如果您更喜欢在本地进行开发,可以使用 Red Gate 的 SQL 比较和数据比较来推动更改。只要您定期执行此操作,您就会发现您的本地 SQL 是否与 SQL-Azure 兼容,这样您就不会冒险使用不受支持的语法或对象类型。

      【讨论】:

        猜你喜欢
        • 2012-01-15
        • 1970-01-01
        • 1970-01-01
        • 2019-11-27
        • 1970-01-01
        • 1970-01-01
        • 2015-10-30
        • 2018-12-13
        • 2010-10-17
        相关资源
        最近更新 更多