Freigeben über


Sys.sp_rda_reauthorize_db (Transact-SQL)

Gilt für: SQL Server 2016 (13.x) und höhere Versionen

Stellt die authentifizierte Verbindung zwischen einer lokalen Datenbank wieder her, die für Stretch und die Remotedatenbank aktiviert ist.

Wichtig

Stretch Database ist in SQL Server 2022 (16.x) und der Azure SQL-Datenbank veraltet. Diese Funktion wird in einer zukünftigen Version der Datenbank-Engine entfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.

Transact-SQL-Syntaxkonventionen

Syntax

sp_rda_reauthorize_db
    [ @credential = ] credential
      , [ @with_copy = ] with_copy
    [ , [ @azure_servername = ] azure_servername
      , [ @azure_databasename = ] azure_databasename ]
[ ; ]

Argumente

[ @credential = ] N'Anmeldeinformationen'

Die datenbankbezogenen Anmeldeinformationen, die der lokalen Stretch-aktivierten Datenbank zugeordnet sind. @credential ist "sysname".

[ @with_copy = ] with_copy

Gibt an, ob eine Kopie der Remotedaten hergestellt und eine Verbindung mit der Kopie hergestellt werden soll (empfohlen). @with_copy ist bit.

[ @azure_servername = ] azure_servername

Gibt den Namen des Azure-Servers an, der die Remotedaten enthält. @azure_servername ist "sysname".

[ @azure_databasename = ] azure_databasename

Gibt den Namen der Azure-Datenbank an, die die Remotedaten enthält. @azure_databasename ist "sysname".

Rückgabecodewerte

0 (erfolgreich) oder > 0 Fehler.

Berechtigungen

Erfordert db_owner-Berechtigungen.

Hinweise

Wenn Sie sys.sp_rda_reauthorize_db (Transact-SQL) ausführen, um eine erneute Verbindung mit der Azure-Remotedatenbank herzustellen, setzt dieser Vorgang automatisch den Abfragemodus zurückLOCAL_AND_REMOTE, was das Standardverhalten für Stretch-Datenbank ist. Das heißt, Abfragen geben Ergebnisse aus lokalen und Remotedaten zurück.

Beispiele

Im folgenden Beispiel wird die authentifizierte Verbindung zwischen einer lokalen Datenbank wiederhergestellt, die für Stretch und die Remotedatenbank aktiviert ist. Es erstellt eine Kopie der Remotedaten (empfohlen) und stellt eine Verbindung mit der neuen Kopie hergestellt.

DECLARE @credentialName NVARCHAR(128);

SET @credentialName = N'<existing_database_scoped_credential_name>';

EXEC sp_rda_reauthorize_db
    @credential = @credentialName,
    @with_copy = 1;