Memecahkan masalah saat bermigrasi ke Azure SQL Managed Instance

Artikel ini membantu Anda memecahkan masalah umum yang mungkin Anda temui saat memigrasikan database SQL Server ke Azure SQL Managed Instance dengan menggunakan migrasi SQL Server di Azure Arc.

Nota

Anda dapat memberikan umpan balik tentang pengalaman migrasi Anda langsung ke grup produk.

Versi agen Arc

Saat Anda menggunakan migrasi SQL Server di Azure Arc, fitur tertentu memerlukan versi minimum agen Arc. Agen Arc adalah executable yang berjalan bersama instans SQL Server Anda untuk menyediakan konektivitas ke Azure. Selalu perbarui versi agen Arc Anda untuk mendapatkan perbaikan dan pembaruan terbaru.

Dengan pembaruan otomatis diaktifkan, agen Arc akan diperbarui secara otomatis. Namun, ketika versi baru agen Arc diluncurkan, perlu beberapa hari agar pembaruan menjangkau semua server. Anda dapat mempercepat proses dengan manual menjalankan pembaruan agen Arc sesuai permintaan melalui portal Azure atau antarmuka baris perintah.

Jika Anda melihat kesalahan berikut saat mengakses panel migrasi Database di portal Azure, Anda perlu memutakhirkan agen Arc Anda ke versi yang didukung:

To enable migration and monitoring capabilities, 
please update your Azure Arc agent extension "WindowsAgentSQLServer" to the latest version.

Masalah agen Arc

Jika Anda mengalami masalah dengan agen Arc, seperti status ekstensi yang tidak sehat atau instans SQL Server yang terputus, gunakan panduan pemecahan masalah ekstensi berikut: Troubleshoot ekstensi Azure untuk SQL Server.

Masalah penilaian kesiapan migrasi

Sistem menjalankan penilaian kesiapan migrasi setiap hari Minggu pukul 23.00 (23.00) lokal ke server. Penilaian untuk instans SQL Server yang baru diaktifkan oleh Azure Arc dapat memakan waktu beberapa hari untuk muncul di portal Azure. Gunakan Jalankan penilaian untuk memicu penilaian sesuai permintaan. Penilaian muncul setelah beberapa menit.

Jika halaman penilaian kesiapan migrasi database kosong di portal Azure, penilaian terjadwal kemungkinan tidak berjalan, atau ada masalah saat menjalankan penilaian pada instans SQL Server. Menonaktifkan agen Arc mencegah pelaksanaan penilaian. Pastikan agen Arc diaktifkan. Untuk informasi selengkapnya, lihat Mengubah pengaturan penilaian.

Pertimbangkan masalah yang diketahui berikut:

  • Saat xp_cmdshell diaktifkan dan digunakan, penilaian mencatat peringatan untuk SQL Managed Instance karena Anda masih dapat memigrasikan database. Namun, ini mengganggu fungsionalitas objek yang secara khusus menggunakan xp_cmdshell. Gunakan panduan remediasi yang disediakan dalam penilaian untuk mengurangi masalah.

Hubungi Microsoft Support jika Anda mengalami salah satu masalah berikut:

  • Laporan penilaian tidak muncul di portal bahkan setelah waktu yang dijadwalkan.
  • Ketersediaan data performa tidak meningkat setelah satu minggu mengumpulkan data.

Menampilkan log aktivitas Azure untuk masalah migrasi

Log aktivitas di portal Azure, ketika diakses melalui sumber daya, memberikan wawasan tentang peristiwa tingkat sumber daya yang terjadi di Azure. Wawasan ini mencakup informasi tentang kapan Anda memodifikasi atau menghapus sumber daya, serta detail tentang kesehatan layanan dan peristiwa penting lainnya.

Saat memecahkan masalah migrasi ke Azure SQL Managed Instance dengan menggunakan migrasi SQL Server di Azure Arc, log Aktivitas adalah sumber daya yang berharga untuk mengidentifikasi masalah dan memahami urutan peristiwa yang menyebabkan masalah.

Untuk mengakses log aktivitas di portal Azure untuk instans SQL Server Anda yang diaktifkan oleh sumber daya Azure Arc, ikuti langkah-langkah berikut:

  1. Buka instans SQL Server yang diaktifkan oleh sumber daya Azure Arc di portal Azure.

  2. Pilih Log aktivitas dari menu sumber daya:

    Screenshot dari log aktivitas yang disorot untuk sebuah sumber daya instans SQL Server di portal Azure.

Anda juga dapat mengakses log aktivitas tingkat langganan untuk tampilan peristiwa yang lebih luas di semua sumber daya dalam langganan Anda dengan memilih ikon bel pemberitahuan dari bilah navigasi atas lalu memilih Peristiwa lainnya di log aktivitas:

Screenshot ikon bel pemberitahuan yang disorot di portal Azure.

Pilih peristiwa dari log aktivitas untuk membuka panel detail peristiwa. Gunakan tab Ringkasan dan JSON untuk melihat informasi terperinci tentang peristiwa tersebut, termasuk pesan kesalahan tertentu. Jika Anda membuat permintaan dukungan, komunikasikan informasi ini dengan detail sebanyak mungkin.

Database baru tidak tersedia di portal Azure

Database yang baru ditambahkan ke instans SQL Server Anda mungkin tidak segera terlihat di portal Azure saat mencoba memilih database untuk migrasi. Ini karena dibutuhkan sekitar satu jam bagi agen Arc untuk menyegarkan daftar database secara otomatis.

Untuk mengatasi masalah ini, Anda dapat memulai ulang layanan Arc untuk memicu refresh segera daftar database.

Pada Windows, gunakan perintah berikut dalam prompt perintah yang ditingkatkan di server yang menghosting instans SQL Server Anda:

Restart-Service himds
Restart-Service gcarcservice
Restart-Service extensionservice

Tunggu hingga layanan dimulai ulang, lalu gunakan perintah berikut untuk memverifikasi layanan berjalan dengan perintah berikut:

& "$env:ProgramW6432\AzureConnectedMachineAgent\azcmagent.exe" show

Di server Linux, gunakan perintah berikut di terminal yang ditingkatkan:

sudo systemctl restart himdsd
sudo systemctl restart gcad
sudo systemctl restart extd

Tunggu hingga layanan dimulai ulang, lalu gunakan perintah berikut untuk memverifikasi layanan berjalan dengan perintah berikut:

azcmagent show

Buka halaman Databases di portal Azure untuk instans SQL Server, dan pilih Refresh untuk melihat database yang baru ditambahkan. Sekarang Anda dapat memilih database baru ini untuk migrasi.

Bagian ini menjelaskan beberapa masalah umum dengan fitur tautan Managed Instance saat bermigrasi ke Azure SQL Managed Instance melalui migrasi SQL Server di Azure Arc:

Paket layanan yang salah terinstal

Pastikan Anda telah menginstal paket layanan (SP) appropriate SQL Server atau pembaruan kumulatif (CU).

Anda dapat memeriksa versi yang benar dengan menjalankan perintah T-SQL berikut pada instans SQL Server Anda:

EXEC sp_certificate_add_issuer @CERTID, N'*.database.windows.net'

Jika Anda mendapatkan kesalahan bahwa SQL Server tidak dapat menemukan prosedur tersimpan sp_certificate_add_issuer, Anda mungkin tidak menginstal paket layanan yang tepat (seperti paket Fitur Azure Connect). Instal pembaruan layanan yang diperlukan dan coba lagi.

Fitur grup ketersediaan Always On telah dinonaktifkan

Pastikan fitur grup ketersediaan Always On diaktifkan pada instans SQL Server Anda. Tautan Managed Instance mengharuskan fitur grup ketersediaan AlwaysOn diaktifkan untuk fungsionalitas yang tepat.

Menggunakan SQL Server 2016

Untuk SQL Server 2016 (13.x), Anda harus menyelesaikan langkah-langkah tambahan yang didokumenkan di Prasyarat SQL Server 2016 untuk tautan. Langkah tambahan ini tidak diperlukan untuk SQL Server 2017 (14.x) dan versi yang lebih baru yang didukung oleh tautan.

Masalah konektivitas jaringan

Konektivitas yang berhasil antara lingkungan SQL Server dan Azure SQL Managed Instance sangat penting agar fitur tautan Managed Instance berfungsi. Jika Anda mengalami masalah konektivitas jaringan, pertimbangkan poin-poin berikut:

  • Tautan Managed Instance tidak berfungsi melalui jaringan publik sehingga koneksi antara instans SQL Server anda dan Azure SQL Managed Instance harus privat, seperti dengan menggunakan VPN.
  • Anda dapat menguji konektivitas langsung dari portal Azure sebagai bagian dari proses migrasi. Jika pengujian koneksi berhasil di portal tetapi tautan tidak dapat dibuat, periksa log Aktivitas untuk detail kegagalan. Anda juga dapat test konektivitas secara manual dengan menggunakan Transact-SQL dan SQL Server Agent.
  • Periksa firewall perusahaan apa pun di jaringan Anda. Meskipun konektivitas jaringan dapat tampak berfungsi, firewall dapat memblokir jenis paket tertentu yang SQL Server gunakan untuk grup ketersediaan terdistribusi. Verifikasi bahwa firewall tidak memblokir atau memfilter jenis paket.

Peringatan berikut dapat muncul saat memulai pekerjaan migrasi tautan Managed Instance. Anda dapat melanjutkan migrasi meskipun ada peringatan berikut:

  • Warning: Database Mirroring Endpoint does not exist
  • Warning: Database Mirroring Endpoint is not secure with a certificate
  • Warning: Database Mirroring Endpoint is not enabled
  • Warning: Database Mirroring Endpoint encryption algorithm is not set to AES

Peringatan ini saat ini adalah masalah yang diketahui, dan proses migrasi mengatasinya secara otomatis sehingga Anda dapat melanjutkan migrasi.

Selidiki peringatan lainnya. Beberapa peringatan mungkin memerlukan resolusi di bagian Anda sebelum Anda dapat memulai migrasi, sementara beberapa dapat ditangani setelah migrasi selesai.

Mengonfigurasi tautan melalui portal Azure untuk migrasi tidak kompatibel dengan tautan yang ada yang Anda buat secara manual, baik melalui SQL Server Management Studio (SSMS) atau Transact-SQL (T-SQL). Jika tautan sudah ada, Anda tidak dapat membuat tautan baru melalui portal Azure.

Jika tautan sudah ada di sumber SQL Server atau target Azure SQL Managed Instance, Anda perlu melakukan langkah-langkah berikut sebelum membuat tautan baru antara sumber dan target tersebut melalui portal Azure:

  1. Buang link dari SQL Managed Instance dengan menggunakan Remove-AzSqlInstanceLink atau az sql mi link delete dari Azure Cloud Shell atau komputer yang sudah masuk ke Azure dengan konteks Azure.
  2. Letakkan tautan secara manual dari SQL Server dengan menggunakan DROP AVAILABILITY GROUP dengan nama grup ketersediaan terdistribusi yang terkait dengan tautan.
  3. Hilangkan semua sertifikat terkait tautan dari instans SQL Server dengan menggunakan DROP CERTIFICATE. Sertifikat yang perlu Anda letakkan biasanya berisi nilai berikut: DigiKey PKI, Microsoft PKI, endpoint, dan database.windows.net. Anda dapat menggunakan SELECT * FROM sys.certificates untuk mencantumkan semua sertifikat pada SQL Server.
  4. Hilangkan semua sertifikat terkait tautan dari SQL Managed Instance dengan menggunakan Remove-AzSqlInstanceServerTrustCertificate atau az sql mi partner-cert delete dari Azure Cloud Shell atau mesin yang masuk dengan Konteks Azure. Anda dapat menggunakan Get-AzSqlInstanceServerTrustCertificate atau az sql mi partner-cert show untuk mencantumkan sertifikat autentikasi yang ada di SQL Managed Instance.
  5. Langkah-langkah sebelumnya menghapus semua sertifikat autentikasi terkait tautan yang dihasilkan untuk tautan yang dibuat secara manual. Jika Anda tidak menggunakan grup ketersediaan yang ada secara lokal, pertimbangkan untuk menghilangkan titik akhir pencerminan database yang ada dengan menggunakan DROP ENDPOINT. Anda dapat menggunakan SELECT * FROM sys.endpoints untuk mencantumkan semua titik akhir yang ada di SQL Server. Anda harus menghilangkan sertifikat yang terkait dengan titik akhir sebelum Anda bisa menghilangkan titik akhir.

Pemecahan masalah terperinci dengan XE Profiler

Untuk pemecahan masalah tautan secara mendetail, gunakan XE Profiler.

Masalah migrasi Layanan Pemutaran Ulang Log

Bagian ini mencantumkan masalah umum yang mungkin Anda temui saat bermigrasi dengan menggunakan Log Replay Service (LRS):

Tidak dapat mencantumkan direktori di Azure Blob Storage

Jika Anda melihat pesan kesalahan bahwa terdapat Unable to list directories saat memilih direktori di halaman Migrasi Data Baru di portal Azure, maka pengguna yang saat ini masuk ke portal tidak memiliki peran Storage Blob Data Reader yang ditetapkan ke akun penyimpanan. Berikan akses pengguna ke akun penyimpanan untuk mengatasi masalah tersebut.

Tidak ada hasil yang ditemukan di direktori

Jika Anda melihat pesan yang No results were found in directory saat memilih direktori pada halaman Migrasi Data baru di portal Azure, tidak ada cadangan database yang tersedia dalam kontainer penyimpanan Blob Azure. Untuk mengatasi masalah ini, unggah cadangan database lengkap ke penyimpanan Blob Azure.

Periksa status pemulihan file

Untuk memeriksa berapa banyak file yang terdeteksi, diantrekan, dilewati, atau tidak dapat disimpan selama migrasi, gunakan halaman Monitor dan cutover di portal Azure. Setelah migrasi dimulai, buka halaman Monitor dan cutover , lalu pilih database yang Anda migrasikan untuk membuka detail migrasi untuk database tersebut.

Kesalahan 2009 - Identitas terkelola tidak disiapkan dengan benar

Jika migrasi Anda berhasil dimulai tetapi kemudian gagal dengan kesalahan 2009 - managed identity is not set up properly, identitas utama untuk instans terkelola tidak memiliki izin Storage Blob data Reader yang ditetapkan ke akun penyimpanan blob Azure. Berikan akses identitas terkelola ke akun penyimpanan untuk mengatasi masalah tersebut. Verifikasi bahwa identitas yang sesuai (baik identitas terkelola default atau identitas kustom yang ditentukan pengguna) memiliki izin yang diperlukan, atau bahwa identitas tidak berubah sejak izin diberikan pada awalnya. Jika identitas berubah, berikan izin yang sesuai ke identitas baru untuk mengatasi masalah tersebut.

Memecahkan masalah migrasi dengan DMS

Memulai pekerjaan migrasi LRS di Azure Arc secara otomatis membuat pekerjaan migrasi Database Migration Service (DMS) sehingga Anda dapat menggunakan Azure Database Migration Service di portal Azure untuk melihat detail tambahan tentang pekerjaan migrasi.

Untuk melihat detail pekerjaan migrasi LRS di DMS, ikuti langkah-langkah berikut:

  1. Buka Azure Database Migration Service di portal Azure.

  2. Pilih Semua sumber daya lalu pilih pekerjaan migrasi DMS yang terkait dengan migrasi LRS Anda untuk membuka halaman detail migrasi:

    Screenshot halaman semua sumber daya DMS di portal Azure.

  3. Pada halaman detail migrasi, pilih Pantau migrasi untuk melihat status database yang dimigrasikan untuk instans tertentu menggunakan LRS. Pilih Berhasil, Dibatalkan, atau Kesalahan untuk melihat detail selengkapnya tentang status.

    Cara lain untuk mengakses halaman ini adalah melalui sumber daya Azure Database Migration Service yang ditambahkan ke grup sumber daya yang berisi SQL Managed Instance target setelah migrasi dimulai melalui Azure Arc.

Menghapus pekerjaan migrasi

Pekerjaan migrasi LRS akan tetap ada di halaman Monitor dan cutover selama 28 hari setelah selesai, baik berhasil maupun gagal. Anda dapat menghapus pekerjaan secara manual jika Anda ingin menghapusnya dari halaman pemantauan lebih cepat.

Untuk menghapus pekerjaan secara manual, buka pekerjaan migrasi DMS yang terkait dengan migrasi LRS Anda seperti yang dijelaskan di bagian sebelumnya. Pilih pekerjaan migrasi yang ingin Anda hapus, lalu gunakan tombol Hapus tempat sampah untuk menghapus pekerjaan. Konfirmasi dengan memilih "Centang kotak ini untuk mengonfirmasi penghapusan". Tindakan ini menghapus tugas dari halaman Monitor dan cutover di Azure Arc.

Masalah yang diketahui setelah bermigrasi ke SQL Managed Instance

Pertimbangkan masalah umum berikut setelah bermigrasi ke Azure SQL Managed Instance:

Memulihkan kegagalan operasi setelah bermigrasi ke SQL Managed Instance

Jika Anda memigrasikan database ke Azure SQL Managed Instance dari SQL Server 2019 dan versi yang lebih baru dengan pemulihan database yang dipercepat diaktifkan, tetapi dikonfigurasi dengan penyimpanan versi persisten (PVS) yang diatur ke sesuatu selain grup file PRIMARY, Anda mungkin mengalami kegagalan operasi pemulihan pada instans terkelola SQL target.

Untuk mengatasi masalah ini, pastikan Anda mengatur penyimpanan versi persisten (PVS) ke PRIMARY pada database SQL Server sumber sebelum Anda memigrasikannya ke SQL Managed Instance. Jika Anda sudah memigrasikan database tanpa mengatur PVS ke PRIMARY, Anda dapat mengaturnya pada database SQL Server sumber, lalu memigrasikan ulang database ke SQL Managed Instance.

Tidak dapat menggunakan pemulihan database yang dipercepat setelah bermigrasi ke SQL Managed Instance

Dimulai dengan SQL Server 2019, jika Anda memigrasikan database ke Azure SQL Managed Instance, dan database sumber memiliki pemulihan database yang dipercepat dinonaktifkan, Anda tidak dapat menggunakan pemulihan database yang dipercepat pada instans terkelola SQL target.

Untuk mengatasi masalah ini, pastikan Anda percepat pemulihan database pada database SQL Server sumber sebelum Anda memigrasikannya ke SQL Managed Instance. Jika Anda sudah memigrasikan database tanpa mengaktifkan pemulihan database yang dipercepat, Anda dapat mengaktifkannya pada database sumber SQL Server, lalu memigrasikan ulang database ke instans terkelola SQL.

SQL Server 2017 dan versi yang lebih lama tidak mendukung pemulihan database yang dipercepat, sehingga masalah ini tidak berlaku untuk database yang dimigrasikan dari versi SQL Server tersebut.

Tidak dapat menggunakan Service Broker setelah bermigrasi ke SQL Managed Instance

Jika Anda memigrasikan database ke Azure SQL Managed Instance, dan Service Broker dinonaktifkan pada database sumber, Anda tidak dapat menggunakan Service Broker pada instans terkelola SQL target.

Untuk mengatasi masalah ini, pastikan Anda mengaktifkan Service Broker pada database SQL Server sumber sebelum Anda memigrasikannya ke SQL Managed Instance. Jika Anda sudah memigrasikan database tanpa mengaktifkan Service Broker, Anda dapat mengaktifkannya di database SQL Server sumber, lalu memigrasikan ulang database ke SQL Managed Instance.

Kontak Microsoft

Anda dapat menghubungi Microsoft untuk membuka tiket dukungan dengan masalah yang Anda alami atau untuk memberikan umpan balik langsung ke grup produk.

Hubungi dukungan

Gunakan https://aka.ms/azure-support untuk menuju halaman Bantuan + dukungan di portal Azure, lalu ikuti langkah-langkah berikut untuk membuka tiket dukungan terkait migrasi:

  1. Pilih Buat permintaan dukungan untuk membuka panel Dukungan + pemecahan masalah .
  2. Ketik migration ke bidang teks, lalu pilih Tidak ada yang di atas di bawah Layanan mana yang mengalami masalah?
  3. Dari daftar dropdown Pilih layanan, pilih SQL Server enabled by Azure Arc lalu gunakan Baru untuk melanjutkan.
  4. Pilih langganan Anda dari daftar dropdown.
  5. Pilih instans SQL Server Anda yang diaktifkan oleh sumber daya Azure Arc dari daftar dropdown Resource lalu pilih Baru.
  6. Pilih Masalah Migrasi di petak Peta Apakah Anda mengalami salah satu masalah berikut ini? lalu pilih Berikutnya.
  7. Pilih Buat permintaan dukungan dari bilah navigasi atas dalam panel Dukungan + pemecahan masalah untuk membuka formulir tiket dukungan.
  8. Gunakan nilai subjenis Masalah berikut untuk merutekan masalah Anda ke antrean dukungan yang sesuai:
    • Menilai: Jika Anda mengalami masalah dengan penilaian kesiapan migrasi.
    • Migrasi Data LRS: Jika Anda mengalami masalah dengan migrasi Log Replay Service (LRS).
    • MI Link Data Migration: Jika Anda mengalami masalah dengan migrasi tautan Managed Instance.
    • Pemantauan dan alih: Jika Anda mengalami masalah saat memantau migrasi atau saat alih.
    • Target Provisioning: Jika Anda mengalami masalah saat menyediakan target Azure SQL Managed Instance.
  9. Gunakan Berikutnya untuk melanjutkan melalui langkah-langkah formulir permintaan dukungan yang tersisa, lalu pilih Buat untuk mengirimkan permintaan dukungan Anda.

Memberikan umpan balik ke grup produk

Anda dapat memberikan umpan balik ke grup produk untuk membantu meningkatkan pengalaman migrasi. Gunakan tautan berikut untuk mengirimkan umpan balik Anda: