Bagikan melalui


Gambaran umum migrasi: SQL Server ke Azure SQL Managed Instance

Berlaku untuk: Azure SQL Managed Instance

Dalam panduan ini, Anda mempelajari cara memigrasikan database pengguna Anda dari SQL Server ke Azure SQL Managed Instance.

Selesaikan langkah-langkah pra-migrasi , sebelum melanjutkan.

Migrate

Setelah menyelesaikan langkah-langkah untuk tahap pra-migrasi, Anda siap untuk melakukan skema dan migrasi data.

Migrasikan data Anda menggunakan metode migrasi yang Anda pilih.

Bagian ini menyediakan langkah-langkah migrasi umum untuk opsi migrasi yang direkomendasikan berikut ini:

  • Tautan instans terkelola
  • Log Replay Service (LRS)
  • Ekstensi migrasi Azure SQL untuk Azure Data Studio - migrasi dengan waktu henti yang hampir tidak ada sama sekali.
  • RESTORE DATABASE FROM URL asli - menggunakan cadangan asli dari SQL Server dan memerlukan waktu henti.

Instans Terkelola SQL menargetkan skenario pengguna yang memerlukan migrasi database massal dari implementasi database lokal atau Azure VM. Ini adalah pilihan optimal ketika Anda perlu mengangkat dan menggeser ujung belakang aplikasi yang secara teratur menggunakan fungsionalitas tingkat instans dan/atau lintas database. Jika ini adalah skenario Anda, Anda dapat memindahkan seluruh instans ke lingkungan yang sesuai di Azure tanpa perlu merancang ulang aplikasi Anda.

Untuk memindahkan instans SQL, Anda perlu merencanakan dengan hati-hati:

  • Migrasi semua database yang perlu dikolokasikan (database yang berjalan pada instans yang sama).
  • Migrasi objek tingkat instans tempat aplikasi bergantung, termasuk info masuk, kredensial, pekerjaan dan operator Agen SQL, dan pemicu tingkat server.

SQL Managed Instance adalah layanan terkelola yang memungkinkan Anda untuk mendelegasikan beberapa aktivitas DBA reguler ke platform saat dibangun. Oleh karena itu, beberapa data tingkat-instans tidak perlu dimigrasikan, seperti pekerjaan pemeliharaan untuk cadangan reguler atau konfigurasi Grup Ketersediaan AlwaysOn, karena high availability sudah dibangun.

Azure Data Studio

Bagian ini menyediakan langkah-langkah tingkat tinggi untuk bermigrasi dari SQL Server ke Azure SQL Managed Instance dengan waktu henti minimal dengan menggunakan ekstensi migrasi Azure SQL di Azure Data Studio. Untuk petunjuk terperinci, lihat Tutorial: Memigrasikan SQL Server ke Azure SQL Managed Instance secara online di Azure Data Studio.

Untuk bermigrasi dengan Azure Data Studio, ikuti langkah-langkah berikut:

  1. Unduh dan instal Azure Data Studio dan ekstensi migrasi Azure SQL untuk Azure Data Studio.
  2. Luncurkan wizard Migrasi ke Azure SQL Migration di ekstensi di Azure Data Studio.
  3. Pilih database untuk penilaian dan lihat kesiapan atau masalah migrasi (jika ada). Selain itu, kumpulkan data performa dan dapatkan rekomendasi Azure berukuran tepat.
  4. Pilih akun Azure dan Azure SQL Managed Instance target Anda dari langganan Anda.
  5. Pilih lokasi cadangan database Anda. Cadangan database Anda dapat ditemukan di berbagi jaringan lokal atau di kontainer Azure Blob Storage.
  6. Buat Azure Database Migration Service baru menggunakan wizard di Azure Data Studio. Jika sebelumnya Anda membuat Azure Database Migration Service menggunakan Azure Data Studio, Anda dapat menggunakan kembali hal yang sama jika diinginkan.
  7. Opsional: Jika cadangan Anda berada di berbagi jaringan lokal, unduh dan instal runtime integrasi yang dihost sendiri pada mesin yang dapat tersambung ke SQL Server sumber, dan lokasi yang berisi file cadangan.
  8. Mulai migrasi database dan pantau kemajuan di Azure Data Studio. Anda juga dapat memantau kemajuan di bagian sumber daya Azure Database Migration Service di portal Microsoft Azure.
  9. Selesaikan penghentian.
    1. Hentikan semua transaksi masuk ke database sumber.
    2. Buat perubahan konfigurasi aplikasi untuk mengarahkan ke database target di Azure SQL Managed Instance.
    3. Ambil cadangan log bagian akhir untuk database sumber di lokasi cadangan yang ditentukan.
    4. Pastikan semua cadangan database memiliki status Dipulihkan di halaman detail pemantauan.
    5. Pilih Selesaikan penghentian di halaman detail pemantauan.

Bagian ini menyediakan langkah-langkah tingkat tinggi untuk bermigrasi dari SQL Server ke Azure SQL Managed Instance dengan waktu henti minimal dengan menggunakan tautan Instans Terkelola. Untuk instruksi terperinci, tinjau Migrasi dengan tautan .

Untuk bermigrasi dengan tautan, ikuti langkah-langkah berikut:

  1. Buat SQL Managed Instance target Anda: portal Azure, PowerShell, Azure CLI.
  2. Siapkan lingkungan Anda untuk tautan.
  3. Konfigurasikan tautan dengan SQL Server Management Directory atau skrip.
  4. Hentikan beban kerja.
  5. Validasi data pada instans target.
  6. Gagal melalui tautan.

Log Replay Service (LRS)

Bagian ini menyediakan langkah-langkah tingkat tinggi untuk bermigrasi dari SQL Server ke Azure SQL Managed Instance dengan waktu henti minimal dengan menggunakan Log Replay Service (LRS). Untuk instruksi terperinci, tinjau Memigrasikan database dari SQL Server dengan menggunakan Layanan Pemutaran Ulang Log.

Untuk bermigrasi dengan LRS, ikuti langkah-langkah berikut:

  1. Buat akun penyimpanan Azure dengan kontainer blob.
  2. Autentikasi ke akun penyimpanan Blob Storage Anda menggunakan token SAS atau identitas terkelola dan validasi akses.
  3. Pastikan untuk mengonfigurasi struktur folder dengan benar jika Anda berencana untuk memigrasikan beberapa database.
  4. Unggah cadangan Anda ke akun penyimpanan Anda dengan menyalin cadangan Anda, atau mengambil cadangan secara langsung dengan menggunakan URL BACKUP TO.
  5. Tentukan apakah Anda ingin menjalankan LRS dalam mode lengkapi otomatis atau berkelanjutan.
  6. Mulai LRS.
  7. Memantau kemajuan migrasi.
  8. Selesaikan migrasi (jika dalam mode berkelanjutan).

Mencadangkan dan memulihkan

Salah satu kemampuan utama Azure SQL Managed Instance yang memungkinkan migrasi database yang cepat dan mudah adalah pemulihan asli ke file cadangan database (.bak) instans terkelola SQL yang disimpan di Azure Storage. Mencadangkan dan memulihkan adalah operasi asinkron berdasarkan ukuran database Anda.

Diagram berikut memberikan gambaran umum tingkat tinggi tentang proses:

Diagram memperlihatkan SQL Server dengan panah berlabel BACKUP/Unggah ke URL yang mengalir ke Azure Storage dan panah kedua berlabel RESTORE dari URL yang mengalir dari Azure Storage ke SQL Managed Instance.

Catatan

Waktu untuk mengambil cadangan, mengunggahnya ke penyimpanan Azure, dan melakukan operasi pemulihan asli ke Azure SQL Managed Instance bergantung pada ukuran database. Faktorkan waktu henti yang memadai untuk mengakomodasi pengoperasian database besar.

Tabel berikut menyediakan informasi selengkapnya mengenai metode yang dapat Anda gunakan tergantung pada versi SQL Server sumber yang Anda jalankan:

Langkah Mesin dan versi SQL Metode pencadangan/pemulihan
Menempatkan cadangan ke Azure Storage Sebelum 2012 SP1 CU2 Mengunggah .bak file langsung ke Azure Storage
2012 SP1 CU2 - 2016 Pencadangan langsung menggunakan sintaksis WITH CREDENTIAL yang tidak digunakan lagi
Versi 2016 dan yang lebih baru Pencadangan langsung menggunakan WITH SAS CREDENTIAL
Memulihkan dari Azure Storage ke instans terkelola RESTORE FROM URL dengan SAS CREDENTIAL

Penting

Saat Anda memigrasikan database yang dilindungi dengan enkripsi data transparan ke instans terkelola menggunakan opsi pemulihan asli, sertifikat yang sesuai dari SQL Server lokal atau Azure VM perlu dimigrasikan sebelum pemulihan database. Untuk langkah-langkah terperinci, lihat Memigrasikan sertifikat database yang dilindungi TDE ke Azure SQL Managed Instance.

Memulihkan database sistem tidak didukung. Untuk melakukan migrasi objek tingkat-instans (disimpan dalam database master atau msdb), kami sarankan untuk membuat skripnya dan menjalankan skrip T-SQL pada instans tujuan.

Untuk melakukan migrasi menggunakan pencadangan dan pemulihan, ikuti langkah-langkah berikut:

  1. Cadangkan database Anda ke Azure Blob Storage. Misalnya, gunakan pencadangan ke url di SQL Server Management Studio. Gunakan Microsoft Azure Tool agar dapat mendukung database yang usianya lebih lama dari SQL Server 2012 SP1 CU2.

  2. Sambungkan ke Azure SQL Managed Instance Anda dengan menggunakan SQL Server Management Studio.

  3. Buat kredensial menggunakan Tanda Tangan Akses Bersama untuk mengakses akun penyimpanan Azure Blob Anda dengan cadangan database Anda. Contohnya:

    CREATE CREDENTIAL [https://mitutorials.blob.core.windows.net/databases]
        WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
            SECRET = '<secret>'
    
  4. Pulihkan cadangan dari kontainer blob penyimpanan Azure. Contohnya:

    RESTORE DATABASE [TargetDatabaseName]
    FROM URL = 'https://mitutorials.blob.core.windows.net/databases/WideWorldImporters-Standard.bak'
    
  5. Setelah pemulihan selesai, tampilkan database di Object Explorer dalam SQL Server Management Studio.

Untuk mempelajari selengkapnya tentang opsi migrasi ini, lihat Mulai Cepat: Memulihkan database ke Azure SQL Managed Instance dengan SQL Server Management Studio.

Catatan

Operasi pemulihan database bersifat asinkron dan dapat dicoba lagi. Anda dapat mengalami kesalahan di SQL Server Management Studio jika koneksi terputus atau waktu tunggu habis. Microsoft Azure SQL Database akan terus mencoba untuk memulihkan database di latar belakang, dan Anda dapat melacak progres pemulihan menggunakan tampilan sys.dm_exec_requests dan sys.dm_operation_status.

Sinkronisasi dan transisi langsung data

Saat menggunakan opsi migrasi yang terus-menerus mereplikasi/menyinkronkan perubahan data dari sumber ke target, data sumber dan skema dapat berubah serta menyimpang dari data dan skema pada target. Selama sinkronisasi data, pastikan bahwa semua perubahan pada sumber diterima dan diterapkan ke target selama proses migrasi.

Setelah Anda memverifikasi bahwa datanya sama pada sumber maupun target, Anda dapat beralih langsung dari sumber ke lingkungan target. Penting untuk merencanakan proses peralihan langsung dengan tim bisnis/aplikasi guna memastikan gangguan minimal selama peralihan langsung tidak memengaruhi kelangsungan bisnis.

Penting

Untuk detail tentang langkah-langkah spesifik yang terkait dengan melakukan transisi langsung sebagai bagian dari migrasi menggunakan DMS, lihat Melakukan migrasi langsung.

Pasca-migrasi

Setelah Anda berhasil menyelesaikan tahap migrasi, lakukan serangkaian tugas pascamigrasi untuk memastikan bahwa semuanya berfungsi dengan lancar dan efisien.

Fase pasca-migrasi sangat penting untuk melakukan rekonsiliasi masalah akurasi data, memverifikasi kelengkapan, dan mengatasi masalah performa dengan beban kerja.

Memantau dan memulihkan aplikasi

Setelah menyelesaikan migrasi ke instans terkelola, Anda harus melacak perilaku aplikasi dan performa beban kerja Anda. Proses ini mencakup aktivitas berikut:

Melakukan pengujian

Pendekatan pengujian untuk migrasi database terdiri dari aktivitas berikut:

  1. Mengembangkan pengujian validasi: Untuk menguji migrasi database, Anda perlu menggunakan kueri SQL. Anda harus membuat kueri validasi untuk dijalankan terhadap database sumber dan target. Kueri validasi Anda harus mencakup cakupan yang Anda tentukan.
  2. Menyiapkan lingkungan pengujian: Lingkungan pengujian harus berisi salinan database sumber dan database target. Pastikan untuk mengisolasi lingkungan pengujian.
  3. Menjalankan pengujian validasi: Jalankan pengujian validasi terhadap sumber dan target, lalu analisis hasilnya.
  4. Menjalankan uji performa: Jalankan uji performa terhadap sumber dan target, lalu analisis hasil dan bandingkan hasilnya.

Menggunakan fitur tingkat lanjut

Anda dapat memanfaatkan fitur berbasis cloud tingkat lanjut yang ditawarkan oleh SQL Managed Instance, seperti high availability bawaan, deteksi ancaman, dan pemantauan dan penyetelan beban kerja Anda.

Azure SQL Analytics memungkinkan Anda memantau serangkaian instans terkelola dalam jumlah besar secara terpusat.

Beberapa fitur SQL Server hanya tersedia saat tingkat kompatibilitas database diubah ke tingkat kompatibilitas terbaru (150).