如何从 V11 升级到 V12 SQL Azure?
How to upgrade from V11 to V12 SQL Azure?
我正在使用 V11 SQL Azure。
在这个阶段我不想升级我现有的 SQL 服务器,它包含我当前所有的 QA 和生产数据库。
从逻辑上讲,为 V12 创建一个新的 SQL 服务器设置似乎更安全,然后以某种方式 copy/migrate 从我的 V11 Sql 服务器到我的新 V12 [=21] 的 V11 数据库实例=] 服务器即 QA 数据库开始。我知道:V12 Upgrade article
这可能吗?如何实现?
最简单的方法是创建一个新的 V12 服务器,然后导出数据库并将它们导入到新服务器中。
有几种方法可以做到这一点,您可以使用门户 (https://manage.windowsazure.com) 并单击数据库,然后单击顶部的“导出”按钮,这会将数据库导出到 Azure 存储。要导入,请单击“新建”、“数据服务”、“导入”和 select 来自您的存储帐户的 bacpac 文件和 select 要将其导入的新 V12 服务器。
您的另一个选择是下载 SSMS (https://msdn.microsoft.com/en-us/library/mt238290.aspx) 并登录到两个服务器。右键单击要导出的数据库,然后转到任务 -> 导出数据层应用程序。 select local storage 在本地下载数据库。要导入,请右键单击 V12 服务器上的数据库文件夹,然后转到任务 -> 导入数据层应用程序。
目前这是从 V11 升级到 V12 的唯一直接方式,无需直接升级您的服务器。
我们需要为约 150 个数据库的生产部署做同样的事情。我们的策略是相似的:在我们评估了每个数据库的适当层之后,我们启动了一个单独的 V12 实例用于迁移。但是,我们选择在迁移前几周将数据库升级到 V11 实例中的新层,以验证它们的大小是否合适。
至于迁移,我不知道有任何自动或在线的方法可以做到这一点。我们基本上不得不使用门户或 PowerShell 脚本通过 Azure 存储备份/恢复数据库。不幸的是,在复制数据库期间,客户有停机时间。另请注意,在导入到 V12 服务器之前,您需要知道要使用哪个新数据库层。
在我们上周刚刚完成的测试周期中,我们将大约 12 GB(8 个数据库)从 V11 服务器迁移到 V12 服务器。备份数据库大约用了 1 小时 47 分钟,然后恢复数据库用了 2 小时 24 分钟。所以你得到了整个过程大约 21 min/GB 的粗略基准,如果你有很多大型数据库,这并不是很好。对我们来说幸运的是,我们的大多数数据库都很小(<1 GB)。如果你有很多更大的数据库,你可能需要在 V11 服务器内升级它们(这是一个在线操作),然后升级整个服务器(也是在线的)以避免停机。
我建议创建一个新服务器并进行数据库复制(创建数据库 [copy_db] 作为 [source_db] 的副本,然后将服务器升级到 V12。I/E 服务与这种方法相比花费的时间太长。如果您想要一致的状态,可以将源数据库设置为 read_only 模式
我正在使用 V11 SQL Azure。
在这个阶段我不想升级我现有的 SQL 服务器,它包含我当前所有的 QA 和生产数据库。
从逻辑上讲,为 V12 创建一个新的 SQL 服务器设置似乎更安全,然后以某种方式 copy/migrate 从我的 V11 Sql 服务器到我的新 V12 [=21] 的 V11 数据库实例=] 服务器即 QA 数据库开始。我知道:V12 Upgrade article
这可能吗?如何实现?
最简单的方法是创建一个新的 V12 服务器,然后导出数据库并将它们导入到新服务器中。
有几种方法可以做到这一点,您可以使用门户 (https://manage.windowsazure.com) 并单击数据库,然后单击顶部的“导出”按钮,这会将数据库导出到 Azure 存储。要导入,请单击“新建”、“数据服务”、“导入”和 select 来自您的存储帐户的 bacpac 文件和 select 要将其导入的新 V12 服务器。
您的另一个选择是下载 SSMS (https://msdn.microsoft.com/en-us/library/mt238290.aspx) 并登录到两个服务器。右键单击要导出的数据库,然后转到任务 -> 导出数据层应用程序。 select local storage 在本地下载数据库。要导入,请右键单击 V12 服务器上的数据库文件夹,然后转到任务 -> 导入数据层应用程序。
目前这是从 V11 升级到 V12 的唯一直接方式,无需直接升级您的服务器。
我们需要为约 150 个数据库的生产部署做同样的事情。我们的策略是相似的:在我们评估了每个数据库的适当层之后,我们启动了一个单独的 V12 实例用于迁移。但是,我们选择在迁移前几周将数据库升级到 V11 实例中的新层,以验证它们的大小是否合适。
至于迁移,我不知道有任何自动或在线的方法可以做到这一点。我们基本上不得不使用门户或 PowerShell 脚本通过 Azure 存储备份/恢复数据库。不幸的是,在复制数据库期间,客户有停机时间。另请注意,在导入到 V12 服务器之前,您需要知道要使用哪个新数据库层。
在我们上周刚刚完成的测试周期中,我们将大约 12 GB(8 个数据库)从 V11 服务器迁移到 V12 服务器。备份数据库大约用了 1 小时 47 分钟,然后恢复数据库用了 2 小时 24 分钟。所以你得到了整个过程大约 21 min/GB 的粗略基准,如果你有很多大型数据库,这并不是很好。对我们来说幸运的是,我们的大多数数据库都很小(<1 GB)。如果你有很多更大的数据库,你可能需要在 V11 服务器内升级它们(这是一个在线操作),然后升级整个服务器(也是在线的)以避免停机。
我建议创建一个新服务器并进行数据库复制(创建数据库 [copy_db] 作为 [source_db] 的副本,然后将服务器升级到 V12。I/E 服务与这种方法相比花费的时间太长。如果您想要一致的状态,可以将源数据库设置为 read_only 模式