Aktivieren von Stretch Database für eine TabelleEnable Stretch Database for a table

Anwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher (nur Windows)Anwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) and later - Windows only

Wählen Sie Stretch > Aktivieren aus, um eine Tabelle für Stretch Database zu konfigurieren. So wird in SQL Server Management Studio für eine Tabelle der Assistent zum Aktivieren der Tabelle für Stretch geöffnet.To configure a table for Stretch Database, select Stretch | Enable for a table in SQL Server Management Studio to open the Enable Table for Stretch wizard. Sie können Transact-SQL auch verwenden, um Stretch Database für eine vorhandene Tabelle zu aktivieren oder um eine neue Tabelle zu erstellen, in der Stretch Database aktiviert ist.You can also use Transact-SQL to enable Stretch Database on an existing table, or to create a new table with Stretch Database enabled.

  • Wenn Sie kalte Daten in einer separaten Tabelle speichern, können Sie die gesamte Tabelle migrieren.If you store cold data in a separate table, you can migrate the entire table.

  • Wenn Ihre Tabelle sowohl heiße als auch kalte Daten enthält, können Sie eine Filterfunktion zum Auswählen der zu migrierenden Zeilen angeben.If your table contains both hot and cold data, you can specify a filter function to select the rows to migrate.

VoraussetzungenPrerequisites. Wenn Sie Stretch | Aktivieren für eine Tabelle auswählen, Stretch Database bisher jedoch noch nicht für die Datenbank aktiviert war, konfiguriert der Assistent zuerst die Datenbank für Stretch Database.If you select Stretch | Enable for a table, and you have not yet enabled Stretch Database for the database, the wizard first configures the database for Stretch Database. Führen Sie die Schritte unter Erste Schritte durch Ausführen des Assistenten zum Aktivieren von Stretch für eine Datenbank anstelle der in diesem Artikel aufgeführten Schritte durch.Follow the steps in Get started by running the Enable Database for Stretch Wizard instead of the steps in this article.

BerechtigungenPermissions. Um Stretch Database für eine Datenbank oder eine Tabelle zu aktivieren, benötigen Sie "db_owner"-Berechtigungen.Enabling Stretch Database on a database or a table requires db_owner permissions. Zum Aktivieren von Stretch Database für eine Tabelle sind auch ALTER-Berechtigungen für die Tabelle erforderlich.Enabling Stretch Database on a table also requires ALTER permissions on the table.

Hinweis

Bedenken Sie später beim Deaktivieren von Stretch Database Folgendes: Wenn Sie Stretch Database für eine Tabelle oder eine Datenbank deaktivieren, wird das Remoteobjekt nicht gelöscht.Later, if you disable Stretch Database, remember that disabling Stretch Database for a table or for a database does not delete the remote object. Wenn Sie die Remotetabelle oder Remotedatenbank löschen möchten, müssen Sie sie mithilfe des Azure-Verwaltungsportals löschen.If you want to delete the remote table or the remote database, you have to drop it by using the Azure management portal. Die Remoteobjekte erzeugen weiterhin Azure-Kosten, bis Sie die Objekte manuell löschen.The remote objects continue to incur Azure costs until you delete them manually.

Verwenden des Assistenten zum Aktivieren von Stretch Database für eine TabelleUse the wizard to enable Stretch Database on a table

Starten des AssistentenLaunch the wizard

  1. Wählen Sie im Objekt-Explorer in SQL Server Management Studio die Tabelle aus, für die Sie Stretch aktivieren möchten.In SQL Server Management Studio, in Object Explorer, select the table on which you want to enable Stretch.

  2. Klicken Sie mit der rechten Maustaste, wählen Sie Stretch, und wählen Sie anschließend Aktivieren aus, um den Assistenten zu starten.Right-click and select Stretch, and then select Enable to launch the wizard.

Introduction (Einführung)Introduction
Überprüfen Sie den Zweck des Assistenten und die Voraussetzungen.Review the purpose of the wizard and the prerequisites.

Auswählen von DatenbanktabellenSelect database tables
Vergewissern Sie sich, dass die Tabelle, die Sie aktivieren möchten, angezeigt wird und ausgewählt ist.Confirm that the table you want to enable is displayed and selected.

Sie können eine ganze Tabelle migrieren oder eine einfache Filterfunktion im Assistenten angeben.You can migrate an entire table or you can specify a simple filter function in the wizard. Wenn Sie zum Auswählen zu migrierender Zeilen eine andere Art von Filterfunktion verwenden möchten, führen Sie einen der folgenden Schritte aus.If you want to use a different type of filter function to select rows to migrate, do one of the following things.

  • Beenden Sie den Assistenten, und führen Sie die ALTER TABLE-Anweisung aus, um Stretch für die Tabelle zu aktivieren und eine Filterfunktion anzugeben.Exit the wizard and run the ALTER TABLE statement to enable Stretch for the table and to specify a filter function.

  • Führen Sie die ALTER TABLE-Anweisung aus, um eine Filterfunktion anzugeben, nachdem Sie den Assistenten beendet haben.Run the ALTER TABLE statement to specify a filter function after you exit the wizard. Die erforderlichen Schritte finden Sie unter Hinzufügen einer Filterfunktion nach Ausführen des Assistenten.For the required steps, see Add a filter function after running the Wizard.

Die ALTER TABLE-Syntax wird im weiteren Verlauf dieses Artikels beschrieben.The ALTER TABLE syntax is described later in this article.

ZusammenfassungSummary
Überprüfen Sie die im Assistenten eingegebenen Werte und ausgewählten Optionen.Review the values that you entered and the options that you selected in the wizard. Wählen Sie dann Fertig stellen aus, um Stretch zu aktivieren.Then select Finish to enable Stretch.

ErgebnisseResults
Überprüfen Sie die Ergebnisse.Review the results.

Verwenden von Transact-SQL zum Aktivieren von Stretch Database für eine TabelleUse Transact-SQL to enable Stretch Database on a table

Sie können Stretch Database mithilfe von Transact-SQL für eine vorhandene Tabelle aktivieren oder eine neue Tabelle erstellen, in der Stretch Database aktiviert ist.You can enable Stretch Database for an existing table or create a new table with Stretch Database enabled by using Transact-SQL.

OptionenOptions

Verwenden Sie die folgenden Optionen beim Ausführen von CREATE TABLE oder ALTER TABLE, um Stretch Database für eine Tabelle zu aktivieren.Use the following options when you run CREATE TABLE or ALTER TABLE to enable Stretch Database on a table.

  • Verwenden Sie optional die FILTER_PREDICATE = <function> -Klausel, um eine Funktion zum Auswählen der zu migrierenden Zeilen anzugeben, wenn die Tabelle sowohl heiße als auch kalte Daten enthält.Optionally, use the FILTER_PREDICATE = <function> clause to specify a function to select rows to migrate if the table contains both hot and cold data. Das Prädikat muss eine Inline-Tabellenwertfunktion aufrufen.The predicate must call an inline table-valued function. Weitere Informationen hierzu finden Sie unter Auswählen zu migrierender Zeilen mithilfe einer Filterfunktion.For more info, see Select rows to migrate by using a filter function. Wenn Sie keine Filterfunktion angeben, wird die gesamte Tabelle migriert.If you don't specify a filter function, the entire table is migrated.

    Wichtig

    Wenn Sie eine schwache Filterfunktion angeben, wird die Datenmigration ebenfalls unzureichend ausgeführt.If you provide a filter function that performs poorly, data migration also performs poorly. Stretch Database wendet die Filterfunktion mithilfe des CROSS APPLY-Operators auf die Tabelle an.Stretch Database applies the filter function to the table by using the CROSS APPLY operator.

  • Geben Sie MIGRATION_STATE = OUTBOUND an, um sofort mit der Datenmigration zu beginnen, oder MIGRATION_STATE = PAUSED , um den Beginn der Datenmigration zu verschieben.Specify MIGRATION_STATE = OUTBOUND to start data migration immediately or MIGRATION_STATE = PAUSED to postpone the start of data migration.

Aktivieren von Stretch Database für eine vorhandene TabelleEnable Stretch Database for an existing table

Um eine vorhandene Tabelle für Stretch Database zu konfigurieren, führen Sie den Befehl ALTER TABLE aus.To configure an existing table for Stretch Database, run the ALTER TABLE command.

Nachstehend sehen Sie ein Beispiel, das die gesamte Tabelle migriert und sofort mit der Datenmigration beginnt.Here's an example that migrates the entire table and begins data migration immediately.

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

Es folgt ein Beispiel, das nur die Zeilen migriert, die durch die Inline-Tabellenwertfunktion dbo.fn_stretchpredicate identifiziert wurden, und das die Datenmigration verschiebt.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. Weitere Informationen zur Filterfunktion finden Sie unter Auswählen zu migrierender Zeilen mithilfe einer Filterfunktion (Stretch-Datenbank).For more info about the filter function, see Select rows to migrate by using a filter function.

USE <Stretch-enabled database name>;
GO
ALTER TABLE <table name>  
    SET ( REMOTE_DATA_ARCHIVE = ON (  
        FILTER_PREDICATE = dbo.fn_stretchpredicate(),  
        MIGRATION_STATE = PAUSED ) ) ;  
 GO

Weitere Informationen hierzu finden Sie unter ALTER TABLE (Transact-SQL).For more info, see ALTER TABLE (Transact-SQL).

Erstellen einer neuen Tabelle, für die Stretch Database aktiviert istCreate a new table with Stretch Database enabled

Führen Sie zum Erstellen einer neuen Tabelle, für die Stretch Database aktiviert ist, den Befehl CREATE TABLE aus.To create a new table with Stretch Database enabled, run the CREATE TABLE command.

Nachstehend sehen Sie ein Beispiel, das die gesamte Tabelle migriert und sofort mit der Datenmigration beginnt.Here's an example that migrates the entire table and begins data migration immediately.

USE <Stretch-enabled database name>;
GO
CREATE TABLE <table name>
    ( ... )  
    WITH ( REMOTE_DATA_ARCHIVE = ON ( MIGRATION_STATE = OUTBOUND ) ) ;  
GO

Es folgt ein Beispiel, das nur die Zeilen migriert, die durch die Inline-Tabellenwertfunktion dbo.fn_stretchpredicate identifiziert wurden, und das die Datenmigration verschiebt.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. Weitere Informationen zur Filterfunktion finden Sie unter Auswählen zu migrierender Zeilen mithilfe einer Filterfunktion (Stretch-Datenbank).For more info about the filter function, see Select rows to migrate by using a filter function.

USE <Stretch-enabled database name>;
GO
CREATE TABLE <table name> 
    ( ... )  
    WITH ( REMOTE_DATA_ARCHIVE = ON (  
        FILTER_PREDICATE = dbo.fn_stretchpredicate(),  
        MIGRATION_STATE = PAUSED ) ) ;  
GO  

Weitere Informationen hierzu finden Sie unter CREATE TABLE (Transact-SQL).For more info, see CREATE TABLE (Transact-SQL).

Weitere InformationenSee Also

ALTER TABLE (Transact-SQL) ALTER TABLE (Transact-SQL)
CREATE TABLE (Transact-SQL)CREATE TABLE (Transact-SQL)