sys.sp_rda_reauthorize_db (Transact-SQL)
適用対象: SQL Server 2016 (13.x) 以降のバージョン
Stretch が有効になっているローカル データベースとリモート データベースの間の認証済み接続を復元します。
重要
拡張データベースは、SQL Server 2022 (16.x) および Azure SQL Database では非推奨になります。 この機能は、データベース エンジンの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。
構文
sp_rda_reauthorize_db
[ @credential = ] credential
, [ @with_copy = ] with_copy
[ , [ @azure_servername = ] azure_servername
, [ @azure_databasename = ] azure_databasename ]
[ ; ]
引数
[ @credential = ] N'credential'
ローカルの Stretch 対応データベースに関連付けられているデータベース スコープの資格情報。 @credential は sysname です。
[ @with_copy = ] with_copy
リモート データのコピーを作成し、コピーに接続するかどうかを指定します (推奨)。 @with_copy は ビットです。
[ @azure_servername = ] azure_servername
リモート データを含む Azure サーバーの名前を指定します。 @azure_servername は sysname です。
[ @azure_databasename = ] azure_databasename
リモート データを含む Azure データベースの名前を指定します。 @azure_databasename は sysname です。
リターン コードの値
0
(成功) または > 0
(失敗)。
アクセス許可
db_ownerのアクセス許可が必要です。
解説
sys.sp_rda_reauthorize_db (Transact-SQL) を実行してリモート Azure データベースに再接続すると、この操作によってクエリ モードが自動的にLOCAL_AND_REMOTE
にリセットされます。これは Stretch Database の既定の動作です。 つまり、クエリはローカル データとリモート データの両方から結果を返します。
例
次の例では、Stretch が有効になっているローカル データベースとリモート データベースの間の認証済み接続を復元します。 リモート データのコピーを作成し (推奨)、新しいコピーに接続します。
DECLARE @credentialName NVARCHAR(128);
SET @credentialName = N'<existing_database_scoped_credential_name>';
EXEC sp_rda_reauthorize_db
@credential = @credentialName,
@with_copy = 1;