Disabilitare Stretch Database e recuperare i dati remoti

Si applica a: SQL Server 2016 (13.x) e versioni successive - Solo Windows

Importante

Stretch Database è deprecato in SQL Server 2022 (16.x) e database SQL di Azure. Questa funzionalità verrà rimossa nelle versioni future del motore di database. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata.

È possibile usare Transact-SQL per disabilitare Stretch Database per una tabella o per un database.

Dopo aver disabilitato Stretch Database per una tabella, la migrazione di dati viene interrotta e i risultati della query non includono più i risultati della tabella remota.

Se si vuole sospendere la migrazione dei dati, vedere Sospendere e riprendere la migrazione dei dati (Stretch Database).

Nota

La disabilitazione di Stretch Database per una tabella o per un database non elimina l'oggetto remoto. Se si vuole eliminare la tabella remota o il database remoto, è necessario eliminarlo tramite il portale di gestione di Azure. Gli oggetti remoti continuano a generare costi di Azure fino a quando non vengono eliminati. Per altre informazioni, vedere i prezzi di SQL Server Stretch Database.

Disabilitare Stretch Database per una tabella

Usare Transact-SQL

  • Per disabilitare l'estensione per una tabella e copiare i dati remoti per la tabella da Azure a SQL Server, eseguire il comando seguente. Dopo aver copiato tutti i dati remoti da Azure a SQL Server, l'estensione viene disabilitata per la tabella.

    Questo comando non può essere annullato.

    USE [<Stretch-enabled database name>];
    GO
    ALTER TABLE [<Stretch-enabled table name>]
       SET ( REMOTE_DATA_ARCHIVE ( MIGRATION_STATE = INBOUND ) );
    GO
    

    Copiare i dati remoti per la tabella da Azure a SQL Server comporta costi per il trasferimento dei dati. Per altre informazioni, vedere Dettagli prezzi dei trasferimenti di dati.

  • Per disabilitare l'estensione per una tabella e abbandonare i dati remoti, eseguire il comando seguente.

    USE <Stretch-enabled database name>;
    GO
    ALTER TABLE <Stretch-enabled table name>
       SET ( REMOTE_DATA_ARCHIVE = OFF_WITHOUT_DATA_RECOVERY ( MIGRATION_STATE = PAUSED ) );
    GO
    

    La disabilitazione di Stretch Database per una tabella non elimina i dati remoti o la tabella remota. Se si vuole eliminare la tabella remota, è necessario eliminarla tramite il portale di gestione di Azure. La tabella remota continua a generare costi di Azure fino a quando non viene eliminata. Per altre informazioni, vedere i prezzi di SQL Server Stretch Database.

Disabilitare Stretch Database per un database

Prima di disabilitare Stretch Database per un database, è necessario disabilitare Stretch Database su singole tabelle abilitate per Stretch nel database.

Usare Transact-SQL

Esegui il comando seguente:

ALTER DATABASE [<Stretch-enabled database name>]
    SET REMOTE_DATA_ARCHIVE = OFF;
GO

La disabilitazione di Stretch Database per un database non elimina il database remoto. Per eliminare il database remoto è necessario rimuoverlo usando il portale di gestione di Azure. Il database remoto continua a generare costi di Azure fino a quando non viene eliminato. Per altre informazioni, vedere i prezzi di SQL Server Stretch Database.

Vedi anche