暂停和恢复数据迁移(Stretch Database)
适用于: SQL Server 2016 (13.x) 及更高版本 - 仅限 Windows
重要
SQL Server 2022 (16.x) 和 Azure SQL 数据库中已弃用 Stretch Database。 在数据库引擎的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。
要暂停或继续将数据迁移到 Azure,请在 SQL Server Management Studio 中选择某个表对应的“延伸”,然后选择“暂停”以暂停数据迁移,或选择“恢复”以恢复数据迁移。 你也可以使用 TRANSACT-SQL 来暂停或恢复数据迁移。
若要排查本地服务器上的问题,或最大限度地扩大可用网络带宽,请暂停各个表上的数据迁移。
暂停数据迁移
使用 SQL Server Management Studio
在 SQL Server Management Studio 的对象资源管理器中,选择要对其暂停数据迁移的已启用延伸的表。
右键单击并选择“Stretch”->“暂停”。
使用 Transact-SQL
运行以下命令。
USE [<Stretch-enabled database name>];
GO
ALTER TABLE [<Stretch-enabled table name>]
SET ( REMOTE_DATA_ARCHIVE ( MIGRATION_STATE = PAUSED ) );
GO
恢复数据迁移
使用 SQL Server Management Studio
在 SQL Server Management Studio 的对象资源管理器中,选择要对其恢复数据迁移的已启用延伸的表。
右键单击并选择“Stretch”->“继续”。
使用 Transact-SQL
运行以下命令。
USE [<Stretch-enabled database name>];
GO
ALTER TABLE [<Stretch-enabled table name>]
SET ( REMOTE_DATA_ARCHIVE ( MIGRATION_STATE = OUTBOUND ) );
GO
检查迁移处于活动状态还是暂停状态
使用 SQL Server Management Studio
在 SQL Server Management Studio 中,打开“Stretch Database 监视器”并检查“迁移状态”列的值。 有关详细信息,请参阅 数据迁移的监视与故障排除。
使用 Transact-SQL
查询目录视图 sys.remote_data_archive_tables
并检查 is_migration_paused
列的值。 有关详细信息,请参阅 sys.remote_data_archive_tables。