Kelola dan pecahkan masalah Stretch Database
Berlaku untuk:
SQL Server 2016 (13.x) dan yang lebih baru - hanya Windows
Untuk mengelola dan memecahkan masalah Stretch Database, gunakan alat dan metode yang dijelaskan dalam artikel ini .
Mengelola data lokal
Mendapatkan info tentang database dan tabel lokal yang diaktifkan untuk Stretch Database
Buka tampilan katalog sys.databases dan sys.tables untuk melihat info tentang database dan tabel SQL Server yang diaktifkan Stretch. Untuk informasi selengkapnya, lihat sys.databases (Transact-SQL) dan sys.tables (Transact-SQL).
Untuk melihat berapa banyak ruang yang digunakan tabel yang diaktifkan Stretch di SQL Server, jalankan pernyataan berikut.
USE <Stretch-enabled database name>;
GO
EXEC sp_spaceused '<Stretch-enabled table name>', 'true', 'LOCAL_ONLY';
GO
Mengelola migrasi data
Memeriksa fungsi filter yang diterapkan ke tabel
Buka tampilan katalog sys.remote_data_archive_tables dan periksa nilai kolom filter_predicate untuk mengidentifikasi fungsi yang digunakan Stretch Database untuk memilih baris yang akan dimigrasikan. Jika nilainya null, seluruh tabel memenuhi syarat untuk dimigrasikan. Untuk informasi selengkapnya, lihat sys.remote_data_archive_tables (Transact-SQL) dan Pilih baris untuk dimigrasikan dengan menggunakan fungsi filter.
Memeriksa status migrasi data
Pilih | Tugas | Peregangan Pantau database di SQL Server Management Studio untuk memantau migrasi data di Stretch Database Monitor. Untuk informasi selengkapnya, lihat Memantau dan memecahkan masalah migrasi data (Stretch Database).
Atau, buka tampilan manajemen dinamis sys.dm_db_rda_migration_status untuk melihat berapa banyak batch dan baris data yang telah dimigrasikan.
Memecahkan masalah migrasi data
Untuk saran pemecahan masalah, lihat Memantau dan memecahkan masalah migrasi data (Stretch Database).
Mengelola data jarak jauh
Mendapatkan info tentang database dan tabel jarak jauh yang digunakan oleh Stretch Database
Buka tampilan katalog sys.remote_data_archive_databases dan sys.remote_data_archive_tables untuk melihat info tentang database dan tabel jarak jauh tempat data yang dimigrasikan disimpan. Untuk informasi selengkapnya, lihat sys.remote_data_archive_databases (SQL T-SQL) dan sys.remote_data_archive_tables (SQL Bertransaksi).
Untuk melihat berapa banyak ruang yang digunakan tabel yang diaktifkan Stretch di Azure, jalankan pernyataan berikut.
USE <Stretch-enabled database name>;
GO
EXEC sp_spaceused '<Stretch-enabled table name>', 'true', 'REMOTE_ONLY';
GO
Menghapus data yang dimigrasikan
Jika Anda ingin menghapus data yang telah dimigrasikan ke Azure, ikuti langkah-langkah yang dijelaskan dalam sys.sp_rda_reconcile_batch.
Mengelola skema tabel
Jangan ubah skema tabel jarak jauh
Jangan ubah skema tabel Azure jarak jauh yang terkait dengan tabel SQL Server yang dikonfigurasi untuk Stretch Database. Secara khusus, jangan ubah nama atau jenis data kolom. Fitur Stretch Database membuat berbagai asumsi tentang skema tabel jarak jauh sehubungan dengan skema tabel SQL Server. Jika Anda mengubah skema jarak jauh, Stretch Database berhenti berfungsi untuk tabel yang diubah.
Rekonsiliasi kolom tabel
Jika Anda tidak sengaja menghapus kolom dari tabel jarak jauh, jalankan sp_rda_reconcile_columns untuk menambahkan kolom ke tabel jarak jauh yang ada di tabel SQL Server yang diaktifkan Stretch tetapi tidak dalam tabel jarak jauh. Untuk informasi selengkapnya, lihat sys.sp_rda_reconcile_columns.
Penting
Saat sp_rda_reconcile_columns membuat ulang kolom yang tidak sengaja Anda hapus dari tabel jarak jauh, kolom tersebut tidak memulihkan data yang sebelumnya ada di kolom yang dihapus.
sp_rda_reconcile_columns tidak menghapus kolom dari tabel jarak jauh yang ada di tabel jarak jauh tetapi tidak dalam tabel SQL Server yang diaktifkan Stretch. Jika ada kolom dalam tabel Azure jarak jauh yang tidak lagi ada dalam tabel SQL Server yang diaktifkan Stretch, kolom tambahan ini tidak mencegah Stretch Database beroperasi secara normal. Anda dapat secara opsional menghapus kolom tambahan secara manual.
Mengelola performa dan biaya
Memecahkan masalah performa kueri
Kueri yang menyertakan tabel yang diaktifkan Stretch diharapkan berkinerja lebih lambat daripada sebelum tabel diaktifkan untuk Stretch. Jika performa kueri turun secara signifikan, tinjau kemungkinan masalah berikut.
Apakah server Azure Anda berada di wilayah geografis yang berbeda dari SQL Server Anda? Konfigurasikan server Azure Anda agar berada di wilayah geografis yang sama dengan SQL Server Anda untuk mengurangi latensi jaringan.
Kondisi jaringan Anda mungkin mengalami penurunan. Hubungi administrator jaringan Anda untuk informasi tentang masalah atau pemadaman terbaru.
Meningkatkan tingkat performa Azure untuk operasi intensif sumber daya seperti pengindeksan
Saat Anda membangun, membangun kembali, atau mengatur ulang indeks pada tabel besar yang dikonfigurasi untuk Stretch Database, dan Anda mengantisipasi kueri berat data yang dimigrasikan di Azure selama waktu ini, pertimbangkan untuk meningkatkan tingkat performa database Azure jarak jauh yang sesuai selama durasi operasi. Untuk informasi selengkapnya tentang tingkat performa dan harga, lihat SQL Server Stretch Database Pricing.
Anda tidak dapat menjeda layanan SQL Server Stretch Database di Azure
Pastikan Anda memilih tingkat performa dan harga yang sesuai. Jika Anda meningkatkan tingkat performa untuk sementara untuk operasi intensif sumber daya, pulihkan ke tingkat sebelumnya setelah operasi selesai. Untuk informasi selengkapnya tentang tingkat performa dan harga, lihat SQL Server Stretch Database Pricing.
Mengubah cakupan kueri
Kueri terhadap tabel yang diaktifkan Stretch mengembalikan data lokal dan jarak jauh secara default. Anda bisa mengubah cakupan kueri untuk semua kueri oleh semua pengguna, atau hanya untuk satu kueri oleh administrator.
Mengubah cakupan kueri untuk semua kueri oleh semua pengguna
Untuk mengubah cakupan semua kueri oleh semua pengguna, jalankan prosedur tersimpan sys.sp_rda_set_query_mode. Anda dapat mengurangi cakupan untuk mengkueri data lokal saja, menonaktifkan semua kueri, atau memulihkan pengaturan default. Untuk informasi selengkapnya, lihat sys.sp_rda_set_query_mode.
Mengubah cakupan kueri untuk satu kueri oleh administrator
Untuk mengubah cakupan kueri tunggal oleh anggota peran db_owner, tambahkan petunjuk kueri WITH ( REMOTE_DATA_ARCHIVE_OVERRIDE = value ) ke pernyataan SELECT. Petunjuk kueri REMOTE_DATA_ARCHIVE_OVERRIDE bisa memiliki nilai berikut.
LOCAL_ONLY. Kueri data lokal saja.
REMOTE_ONLY. Kueri data jarak jauh saja.
STAGE_ONLY. Kueri hanya data dalam tabel di mana baris tahap Stretch Database memenuhi syarat untuk migrasi dan mempertahankan baris yang dimigrasikan untuk periode yang ditentukan setelah migrasi. Petunjuk kueri ini adalah satu-satunya cara untuk mengkueri tabel penahapan.
Misalnya, kueri berikut hanya mengembalikan hasil lokal.
USE [<Stretch-enabled database name>];
GO
SELECT *
FROM [<Stretch_enabled table name>]
WITH (REMOTE_DATA_ARCHIVE_OVERRIDE = LOCAL_ONLY)
WHERE someCol = 1 /* sample predicate only, please replace with an appropriate one */ ;
GO
Membuat pembaruan dan penghapusan administratif
Secara default Anda tidak dapat MEMPERBARUI atau MENGHAPUS baris yang memenuhi syarat untuk migrasi, atau baris yang telah dimigrasikan, dalam tabel yang diaktifkan Stretch. Ketika Anda harus memperbaiki masalah, anggota peran db_owner dapat menjalankan operasi UPDATE atau DELETE dengan menambahkan petunjuk kueri WITH ( REMOTE_DATA_ARCHIVE_OVERRIDE = value ) ke pernyataan . Petunjuk kueri REMOTE_DATA_ARCHIVE_OVERRIDE bisa memiliki nilai berikut.
LOCAL_ONLY. Perbarui atau hapus data lokal saja.
REMOTE_ONLY. Perbarui atau hapus data jarak jauh saja.
STAGE_ONLY. Perbarui atau hapus hanya data dalam tabel tempat baris tahap Stretch Database memenuhi syarat untuk migrasi dan mempertahankan baris yang dimigrasikan untuk periode yang ditentukan setelah migrasi.
Lihat juga
Pantau dan pecahkan masalah migrasi data (Stretch Database)
Database yang mendukung Stretch Cadangan (Stretch Database)
Memulihkan database yang diaktifkan Stretch (Stretch Database)