Bagikan melalui


sys.sp_rda_reauthorize_db (T-SQL)

Berlaku untuk: SQL Server 2016 (13.x) dan versi yang lebih baru

Memulihkan koneksi terautentikasi antara database lokal yang diaktifkan untuk Stretch dan database jarak jauh.

Penting

Stretch Database tidak digunakan lagi di SQL Server 2022 (16.x) dan Azure SQL Database. Fitur ini akan dihapus dalam versi Mesin Database di masa mendatang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini.

Konvensi sintaks transact-SQL

Sintaks

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

Argumen

[ @credential = ] N'credential'

Kredensial cakupan database yang terkait dengan database yang diaktifkan Stretch lokal. @credential adalah sysname.

[ @with_copy = ] with_copy

Menentukan apakah akan membuat salinan data jarak jauh dan menyambungkan ke salinan (disarankan). @with_copy sedikit.

[ @azure_servername = ] azure_servername

Menentukan nama server Azure yang berisi data jarak jauh. @azure_servername adalah sysname.

[ @azure_databasename = ] azure_databasename

Menentukan nama database Azure yang berisi data jarak jauh. @azure_databasename adalah sysname.

Mengembalikan nilai kode

0 (berhasil) atau > 0 (kegagalan).

Izin

Memerlukan izin db_owner.

Keterangan

Saat Anda menjalankan sys.sp_rda_reauthorize_db (Transact-SQL) untuk menyambungkan kembali ke database Azure jarak jauh, operasi ini secara otomatis mengatur ulang mode kueri ke LOCAL_AND_REMOTE, yang merupakan perilaku default untuk Stretch Database. Artinya, kueri mengembalikan hasil dari data lokal dan jarak jauh.

Contoh

Contoh berikut memulihkan koneksi terautentikasi antara database lokal yang diaktifkan untuk Stretch dan database jarak jauh. Ini membuat salinan data jarak jauh (disarankan) dan terhubung ke salinan baru.

DECLARE @credentialName NVARCHAR(128);

SET @credentialName = N'<existing_database_scoped_credential_name>';

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