Gambaran umum migrasi: SQL Server ke Azure SQL Managed Instance

Berlaku untuk: Azure SQL Managed Instance

Panduan ini membantu Anda memigrasikan instans SQL Server Anda ke Azure SQL Managed Instance.

Anda dapat memigrasikan SQL Server yang berjalan di lokal atau di:

  • SQL Server on Virtual Machines
  • Amazon EC2 (Elastic Compute Cloud)
  • Amazon RDS (Relational Database Service) untuk SQL Server
  • Mesin Komputasi Google
  • Cloud SQL for SQL Server - GCP (Google Cloud Platform)

Untuk informasi migrasi selengkapnya, lihat gambaran umum migrasi. Untuk panduan migrasi lainnya, lihat Migrasi Database.

Alur proses migrasi

Prasyarat

Untuk memigrasikan SQL Server Anda ke Azure SQL Managed Instance, pastikan Anda telah:

Pramigrasi

Setelah Anda memastikan bahwa lingkungan sumber Anda didukung, mulailah dengan tahap pramigrasi. Temukan semua sumber data yang ada, nilai kelayakan migrasi, dan identifikasi masalah pemblokiran yang mungkin mencegah migrasi Anda.

Temukan

Dalam fase Temukan, pindai jaringan untuk mengidentifikasi semua instans dan fitur SQL Server yang digunakan oleh organisasi Anda.

Gunakan Azure Migrate untuk menilai kesesuaian migrasi server lokal, melakukan pengukuran berbasis performa, dan memberikan estimasi biaya untuk menjalankannya di Azure.

Atau, gunakanMicrosoft Assessment and Planning Toolkit ("MAP Toolkit") untuk menilai infrastruktur TI Anda saat ini. Toolkit menyediakan inventaris, penilaian, dan alat pelaporan yang kuat untuk menyederhanakan proses perencanaan migrasi.

Untuk informasi selengkapnya tentang ketersediaan alat untuk digunakan untuk fase Temukan ini, lihat Layanan dan alat yang tersedia untuk skenario migrasi data.

Setelah sumber data ditemukan, lakukan penilaian atas database SQL Server lokal yang dapat dimigrasikan ke Azure SQL Managed Instance untuk mengidentifikasi penghambat proses migrasi atau masalah kompatibilitas. Lanjutkan ke langkah-langkah berikut untuk menilai dan memigrasikan database ke Azure SQL Managed Instance:

Langkah-langkah untuk migrasi ke Azure SQL Managed Instance

Nilai

Catatan

Jika Anda menilai seluruh total estate datae SQL Server dalam skala besar di VMWare, gunakan Azure Migrate untuk mendapat rekomendasi penyebaran Azure SQL, ukuran target, dan estimasi bulanan.

Tentukan apakah Azure SQL Managed Instance kompatibel dengan persyaratan database aplikasi Anda. SQL Managed Instance dirancang untuk menyediakan migrasi angkat dan geser yang mudah untuk sebagian besar aplikasi yang ada yang menggunakan SQL Server. Namun, Anda terkadang memerlukan fitur atau kemampuan yang belum didukung dan biaya penerapan pemecahan masalah terlalu tinggi.

Ekstensi migrasi Azure SQL untuk Azure Data Studio memberikan pengalaman berbasis wizard yang lancar untuk menilai, mendapatkan rekomendasi Azure, serta memigrasikan database SQL Server lokal ke SQL Server pada Azure Virtual Machines. Selain menyoroti setiap pemblokir atau peringatan migrasi, ekstensi tersebut juga menyertakan opsi untuk rekomendasi Azure untuk mengumpulkan data performa database Anda guna merekomendasikan Azure SQL Managed Instance berukuran tepat untuk memenuhi kebutuhan performa beban kerja Anda (dengan harga paling rendah).

Anda dapat menggunakan ekstensi Migrasi Azure SQL untuk Azure Data Studio guna menilai database untuk mendapatkan:

Untuk menilai lingkungan Anda menggunakan ekstensi Migrasi Azure SQL, ikuti langkah-langkah berikut:

  1. Buka ekstensi Migrasi Azure SQL untuk Azure Data Studio.
  2. Menyambungkan ke instans SQL Server sumber Anda
  3. Klik tombol Migrasi ke Azure SQL, di wizard Migrasi Azure SQL di Azure Data Studio
  4. Pilih database untuk penilaian, lalu klik berikutnya
  5. Pilih target Azure SQL Anda, dalam hal ini, Azure SQL Managed Instance
  6. Klik Lihat/Pilih untuk meninjau laporan penilaian
  7. Cari masalah pemblokiran migrasi dan paritas fitur. Laporan penilaian juga dapat diekspor ke file yang dapat dibagikan dengan tim atau personel lain di organisasi Anda.
  8. Tentukan tingkat kompatibilitas database yang meminimalkan upaya pasca migrasi.

Untuk mendapatkan rekomendasi Azure menggunakan ekstensi Migrasi Azure SQL, ikuti langkah-langkah berikut:

  1. Buka ekstensi Migrasi Azure SQL untuk Azure Data Studio.
  2. Menyambungkan ke instans SQL Server sumber Anda
  3. Klik tombol Migrasi ke Azure SQL, di wizard Migrasi Azure SQL di Azure Data Studio
  4. Pilih database untuk penilaian, lalu klik berikutnya
  5. Pilih target Azure SQL Anda, dalam hal ini, Azure SQL Managed Instance
  6. Buka bagian rekomendasi Azure, klik Dapatkan rekomendasi Azure
  7. Pilih Kumpulkan data performa sekarang. Pilih folder di komputer lokal Anda untuk menyimpan log performa, lalu pilih Mulai.
  8. Setelah 10 menit, Azure Data Studio menunjukkan bahwa rekomendasi tersedia untuk Azure SQL Managed Instance.
  9. Periksa kartu Azure SQL Managed Instance, di panel target Azure SQL untuk meninjau rekomendasi SKU Azure SQL Managed Instance Anda

Untuk mempelajari selengkapnya, lihat Tutorial: Memigrasikan SQL Server ke Azure SQL Managed Instance online dengan menggunakan Azure Data Studio.

Untuk mempelajari selengkapnya, lihat Tutorial: Memigrasikan SQL Server ke Azure SQL Managed Instance offline dengan menggunakan Azure Data Studio.

Jika penilaian menemukan beberapa pemblokir untuk mengonfirmasi bahwa database Anda tidak siap untuk Azure SQL Managed Instance, maka pertimbangkan secara alternatif:

Penilaian dan analisis berskala

Ekstensi Migrasi Azure SQL untuk Azure Data Studio dan Azure Migrate mendukung melakukan penilaian berskala dan konsolidasi laporan penilaian untuk analisis.

Jika Anda memiliki beberapa server dan database yang perlu dinilai dan dianalisis dalam skala besar untuk memberikan tampilan yang lebih luas tentang bidang data, lihat tautan berikut ini untuk mempelajari lebih lanjut:

Penting

Menjalankan penilaian dalam skala besar untuk beberapa database juga dapat diotomatisasi menggunakan Command Line Utility DMA, yang hasilnya dapat diunggah ke Azure Migrate untuk analisis lebih lanjut dan kesiapan target.

Menyebarkan ke instans terkelola berukuran optimal

Anda dapat menggunakan ekstensi migrasi Azure SQL untuk Azure Data Studio guna mendapatkan rekomendasi Azure SQL Managed Instance yang tepat. Ekstensi ini mengumpulkan data performa dari instans SQL Server sumber Anda untuk memberikan rekomendasi Azure berukuran tepat yang memenuhi kebutuhan performa beban kerja Anda dengan biaya minimal. Untuk mempelajari selengkapnya, lihat Mendapatkan rekomendasi Azure berukuran tepat untuk database SQL Server lokal Anda

Berdasarkan informasi dalam fase penemuan dan penilaian, buatlah target SQL Managed Instance dengan ukuran yang tepat. Anda dapat melakukannya dengan menggunakan portal Microsoft Azure,PowerShell,atau Templat Azure Resource Manager (ARM).

SQL Managed Instance dirancang untuk beban kerja lokal yang berencana untuk pindah ke cloud. SQL Managed Instance memperkenalkan model pembelian yang memberikan fleksibilitas lebih besar dalam memilih tingkat sumber daya yang tepat untuk beban kerja Anda. Di dunia lokal, Anda mungkin terbiasa mengukur beban kerja ini dengan menggunakan inti fisik dan bandwidth IO. Model pembelian untuk instans terkelola didasarkan pada inti virtual, atau "vCores," dengan penyimpanan tambahan dan IO yang tersedia secara terpisah. Model vCore adalah cara yang lebih sederhana untuk memahami persyaratan komputasi Anda di cloud versus apa yang Anda gunakan secara lokal saat ini. Model pembelian ini memungkinkan Anda untuk menyesuaikan ukuran lingkungan tujuan Anda di cloud. Beberapa panduan umum yang mungkin membantu Anda memilih tingkat layanan dan karakteristik yang tepat dijelaskan di sini:

  • Berdasarkan penggunaan CPU garis besar, Anda dapat provisikan instans terkelola yang cocok dengan jumlah inti yang Anda gunakan di SQL Server, mengingat bahwa karakteristik CPU mungkin perlu diskalakan agar cocok dengan karakteristik Mesin Virtual tempat instans terkelola diinstal.
  • Berdasarkan penggunaan memori dasar, pilih tingkat layanan yang memiliki memori yang cocok. Jumlah memori tidak dapat dipilih secara langsung, jadi Anda harus memilih instans terkelola dengan jumlah vCore yang memiliki memori yang cocok (misalnya, 5,1 GB/vCore dalam seri standar (Gen5)).
  • Berdasarkan latensi IO dasar dari subsistem file, pilih antara tingkat layanan Tujuan Umum (latensi lebih besar dari 5 ms) dan Kritis Bisnis (latensi kurang dari 3 ms).
  • Berdasarkan throughput dasar, pra-alokasikan ukuran data atau file log untuk mendapatkan performa IO yang diharapkan.

Anda dapat memilih sumber daya komputasi dan penyimpanan pada waktu penyebaran lalu mengubahnya setelah itu tanpa memperkenalkan waktu henti untuk aplikasi Anda menggunakan portal Microsoft Azure:

Ukuran Instans Terkelola

Untuk mempelajari cara membuat infrastruktur VNet dan instans terkelola, lihat Membuat instans terkelola.

Penting

Penting untuk tetap membuat VNet tujuan dan subnet sesuai dengan persyaratan VNet instans terkelola. Ketidakcocokan apa pun dapat mencegah Anda membuat instans baru atau menggunakan instans yang sudah Anda buat. Pelajari lebih lanjut tentang membuat jaringan baru dan mengonfigurasi jaringan yang sudah ada.

Migrate

Setelah Anda menyelesaikan tugas-tugas yang terkait dengan tahap Pra-migrasi, Anda siap untuk melakukan skema dan migrasi data.

Migrasikan data Anda menggunakan metode migrasi yang Anda pilih.

Instans Terkelola SQL menargetkan skenario pengguna yang memerlukan migrasi database massal dari implementasi database lokal atau Azure VM. Skenario tersebut adalah pilihan optimal saat Anda perlu mengangkat dan menggeser back end aplikasi yang secara teratur menggunakan tingkat instans dan/atau fungsiionalitas 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.

Artikel ini mencakup dua opsi migrasi yang direkomendasikan:

  • Ekstensi Azure SQL Migration untuk Azure Data Studio - migrasi dengan waktu henti mendekati nol.
  • RESTORE DATABASE FROM URL asli - menggunakan cadangan asli dari SQL Server dan memerlukan waktu henti.

Panduan ini mendeskripsikan dua opsi paling populer - Azure Database Migration Service (DMS) dan cadangan dan pemulihan native.

Untuk alat migrasi lainnya, lihat Membandingkan opsi migrasi.

Bermigrasi menggunakan ekstensi migrasi Azure SQL untuk Azure Data Studio (waktu henti minim)

Untuk melakukan migrasi waktu henti minimal menggunakan Azure Data Studio, ikuti langkah-langkah tingkat tinggi di bawah ini. Untuk memahami detail tutorial langkah demi langkah, lihat Migrasikan SQL Server ke Azure SQL Managed Instance secara online menggunakan Azure Data Studio:

  1. Unduh serta instal Azure Data Studio dan ekstensi migrasi Azure SQL.
  2. Luncurkan wizard Migrasi ke Azure SQL Migrasi 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 telah membuat Azure Database Migration Service menggunakan Azure Data Studio, Anda dapat menggunakan kembali 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.

Pencadangan dan pemulihan

Salah satu kemampuan kunci Azure SQL Managed Instance untuk mengaktifkan migrasi database yang cepat dan mudah adalah pemulihan native file (.bak) cadangan database 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
Memasukkan cadangan ke Azure Storage Sebelum 2012 SP1 CU2 Mengunggah file .bak langsung ke Azure Storage
2012 SP1 CU2 - 2016 Pencadangan langsung menggunakan sintaksis WITH CREDENTIAL yang tidak digunakan lagi
2016 ke atas 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 oleh Enkripsi Data Transparan ke instans terkelola menggunakan opsi pemulihan asli, sertifikat terkait dari SQL Server lokal atau Azure VM perlu dimigrasikan sebelum pemulihan database. Untuk langkah mendetail, lihat Memigrasikan sertifikasi TDE ke instans terkelola.
  • 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 urldi 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 = 'sv=2017-11-09&ss=bfqt&srt=sco&sp=rwdlacup&se=2028-09-06T02:52:55Z&st=2018-09-04T18:52:55Z&spr=https&sig=WOTiM%2FS4GVF%2FEEs9DGQR9Im0W%2BwndxW2CQ7%2B5fHd7Is%3D'
    
  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 Memulihkan database ke Azure SQL Managed Instance dengan SQL Server Management Studio (SSMS).

Catatan

Operasi pemulihan database bersifat asinkron dan dapat dicoba lagi. Anda mungkin 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 ditangkap 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 transisi langsung sebagai bagian dari migrasi menggunakan DMS, lihat Melakukan migrasi langsung.

Pascamigrasi

Setelah Anda berhasil menyelesaikan tahap migrasi, lakukan serangkaian tugas pasca-migrasi untuk memastikan bahwa semuanya berfungsi 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 Anda 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 melingkupi cakupan yang telah 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).

Langkah berikutnya