Aturan penilaian untuk migrasi SQL Server ke Azure SQL Managed Instance

Berlaku untuk:Azure SQL Managed Instance

Alat migrasi memvalidasi instans SQL Server sumber Anda dengan menjalankan beberapa aturan penilaian. Aturan mengidentifikasi masalah yang harus diatasi sebelum memigrasikan database SQL Server Anda ke Azure SQL Managed Instance.

Artikel ini menyediakan daftar aturan yang digunakan untuk menilai kelayakan memigrasikan database SQL Server Anda ke Azure SQL Managed Instance.

Ringkasan Aturan

Judul Aturan Tingkat Kategori Detail
AnalysisCommandJob Instans Peringatan Langkah pekerjaan AnalysisCommand tidak didukung di Azure SQL Managed Instance.
AnalysisQueryJob Instans Peringatan Langkah pekerjaan AnalysisQuery tidak didukung di Azure SQL Managed Instance.
AssemblyFromFile Database Masalah 'CREATE ASSEMBLY' dan 'ALTER ASSEMBLY' dengan parameter file tidak didukung di Azure SQL Managed Instance.
BulkInsert Database Masalah BULK INSERT dengan sumber data blob non-Azure tidak didukung di Azure SQL Managed Instance.
ClrStrictSecurity Database Peringatan Runtime bahasa umum ditandai sebagai AMAN atau EXTERNAL_ACCESS dianggap TIDAK AMAN.
ComputeClause Database Peringatan Klausul COMPUTASI tidak lagi didukung dan telah dihapus.
CryptographicProvider Database Masalah Ditemukan penggunaan 'BUAT PENYEDIA KRIPTOGRAFI' atau 'UBAH PENYEDIA KRIPTOGRAFI'. Ini tidak didukung di Azure SQL Managed Instance.
DatabasePrincipalAlias Database Masalah SYS.DATABASE_PRINCIPAL_ALIASES tidak lagi didukung dan telah dihapus.
DbCompatLevelLowerThan100 Database Peringatan Tingkat kompatibilitas database di bawah 100 tidak didukung.
DisableDefCNSTCHK Database Masalah Opsi SET DISABLE_DEF_CNST_CHK tidak lagi didukung dan telah dihapus.
FastFirstRowHint Database Peringatan Petunjuk kueri FASTFIRSTROW tidak lagi didukung dan telah dihapus.
FileStream Database Masalah FILESTREAM dan FileTable tidak didukung di Azure SQL Managed Instance.
LinkedServerWithNonSQLProvider Database Masalah Server yang ditautkan dengan Penyedia Layanan non-SQL Server tidak didukung di Azure SQL Managed Instance.
MergeJob Instans Peringatan Langkah pekerjaan penggabungan tidak didukung di Azure SQL Managed Instance.
MIDatabaseSize Database Masalah Azure SQL Managed Instance tidak mendukung ukuran database yang lebih besar dari 16 TB.
MIHeterogeneousMSDTCTransactSQL Database Masalah MULAI TRANSAKSI TERDISTRIBUSI dengan server jarak jauh non-SQL Server tidak didukung di Azure SQL Managed Instance.
MIHomogeneousMSDTCTransactSQL Database Masalah MULAI TRANSAKSI TERDISTRIBUSI didukung di beberapa server untuk Azure SQL Managed Instance.
MIInstanceSize Instans Peringatan Ukuran penyimpanan instans maksimum di Azure SQL Managed Instance tidak boleh lebih besar dari 8 TB.
MultipleLogFiles Database Masalah Azure SQL Managed Instance tidak mendukung database dengan beberapa file log.
NextColumn Database Masalah Tabel dan Kolom bernama NEXT menyebabkan kesalahan Di Azure SQL Managed Instance.
NonANSILeftOuterJoinSyntax Database Peringatan Gaya non-ANSI gabungan kiri luar tidak lagi didukung dan telah dihapus.
NonANSIRightOuterJoinSyntax Database Peringatan Gaya non-ANSI gabungan kiri luar tidak lagi didukung dan telah dihapus.
NumDbExceeds100 Instans Peringatan Azure SQL Managed Instance mendukung maksimum 100 database per instans.
OpenRowsetWithNonBlobDataSourceBulk Database Masalah OpenRowSet yang digunakan dalam operasi massal dengan sumber data penyimpanan blob non-Azure tidak didukung di Azure SQL Managed Instance.
OpenRowsetWithNonSQLProvider Database Masalah OpenRowSet dengan penyedia non-SQL tidak didukung di Azure SQL Managed Instance.
PowerShellJob Instans Peringatan Langkah pekerjaan PowerShell tidak didukung di Azure SQL Managed Instance.
QueueReaderJob Instans Peringatan Langkah pekerjaan Pembaca Antrean tidak didukung di Azure SQL Managed Instance.
RAISERROR Database Peringatan Gaya warisan dari panggilan RAISERROR harus diganti dengan ekuivalen modern.
SqlMail Database Peringatan Email SQL tidak lagi didukung.
SystemProcedures110 Database Peringatan Pernyataan terdeteksi yang mereferensikan prosedur tersimpan sistem yang dihapus yang tidak tersedia di Azure SQL Managed Instance.
TraceFlags Instans Peringatan Ditemukan bendera pelacakan yang tidak didukung di Azure SQL Managed Instance.
TransactSqlJob Instans Peringatan Langkah pekerjaan TSQL menyertakan perintah yang tidak didukung di Azure SQL Managed Instance.
WindowsAuthentication Instans Peringatan Pengguna database yang dipetakan dengan autentikasi Windows (keamanan terintegrasi) tidak didukung di Azure SQL Managed Instance.
XpCmdshell Database Masalah xp_cmdshell tidak didukung di Azure SQL Managed Instance.

Pekerjaan AnalysisCommand

Judul: Langkah pekerjaan AnalysisCommand tidak didukung di Azure SQL Managed Instance.
Kategori: Peringatan

Keterangan
Ini adalah langkah pekerjaan yang menjalankan perintah Analysis Services. Langkah pekerjaan AnalysisCommand tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua pekerjaan menggunakan langkah pekerjaan Perintah Analysis Service dan evaluasi apakah langkah pekerjaan atau objek yang terpengaruh dapat dihapus. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan SQL Server Agent di Azure SQL Managed Instance

Pekerjaan AnalysisQuery

Judul: Langkah pekerjaan AnalysisQuery tidak didukung di Azure SQL Managed Instance.
Kategori: Peringatan

Keterangan
Ini adalah langkah pekerjaan yang menjalankan kueri Analysis Services. Langkah pekerjaan AnalysisQuery tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua pekerjaan menggunakan langkah pekerjaan Kueri Analysis Service dan evaluasi apakah langkah pekerjaan atau objek yang terpengaruh dapat dihapus. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan SQL Server Agent di Azure SQL Managed Instance

Assembly dari file

Judul: 'CREATE ASSEMBLY' and 'ALTER ASSEMBLY' dengan parameter file tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Azure SQL Managed Instance tidak mendukung CREATE ASSEMBLY atau ALTER ASSEMBLY dengan parameter file. Parameter biner didukung. Lihat bagian Objek yang Terpengaruh untuk objek tertentu tempat parameter file digunakan.

Rekomendasi
Tinjau objek menggunakan CREATE ASSEMBLY atau ALTER ASSEMBLY dengan parameter file. Jika ada objek yang diperlukan, konversikan parameter file ke parameter biner. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan CLR dalam Azure SQL Managed Instance

SISIPAN MASSAL

Judul: BULK INSERT dengan sumber data blob non-Azure tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Azure SQL Managed Instance tidak dapat mengakses berbagi file atau folder Windows. Lihat bagian "Objek yang Terpengaruh" untuk penggunaan spesifik pernyataan INSERT MASSAL yang tidak mereferensikan blob Azure. Objek dengan 'SISIPAN MASSAL' di mana sumbernya bukan Azure Blob Storage tidak berfungsi setelah bermigrasi ke Azure SQL Managed Instance.

Rekomendasi
Anda perlu mengonversi pernyataan INSERT MASSAL yang menggunakan file lokal atau berbagi file untuk menggunakan file dari Azure Blob Storage sebagai gantinya, saat bermigrasi ke Azure SQL Managed Instance.

Informasi selengkapnya: Perbedaan Sisipan Massal dan OPENROWSET di Azure SQL Managed Instance

Keamanan runtime bahasa umum

Judul: Rakitan runtime bahasa umum yang ditandai sebagai SAFE atau EXTERNAL_ACCESS dianggap sebagai UNSAFE
Kategori: Peringatan

Keterangan
Mode Keamanan Ketat Runtime Bahasa Umum diterapkan di Azure SQL Managed Instance. Mode ini diaktifkan secara default dan memperkenalkan perubahan terbaru untuk database yang berisi rakitan runtime bahasa umum yang ditentukan pengguna yang ditandai dengan AMAN atau AKSES_EKSTERNAL.

Rekomendasi
Runtime bahasa umum menggunakan Keamanan Akses Kode (CAS) dalam .NET Framework, yang tidak lagi didukung sebagai batas keamanan. Dimulai dengan mesin database SQL Server 2017 (14.x), opsi sp_configure yang disebut sebagai keamanan ketat runtime bahasa umum diperkenalkan untuk meningkatkan keamanan rakitan runtime bahasa umum. Keamanan ketat runtime bahasa umum diaktifkan secara default, dan memperlakukan rakitan runtime bahasa umum yang ditandai sebagai AMAN dan AKSES_EKSTERNAL seolah-olah ditandai sebagai TIDAK AMAN. Ketika keamanan ketat runtime bahasa umum dinonaktifkan, rakitan runtime bahasa umum yang dibuat dengan SET_IZIN = AMAN mungkin dapat mengakses sumber daya sistem eksternal, memanggil kode yang tidak terkelola, dan memperoleh hak istimewa sysadmin. Setelah mengaktifkan keamanan ketat, rakitan apa pun yang tidak ditandatangani akan gagal dimuat. Selain itu, jika database memiliki rakitan AMAN atau AKSES_EKSTERNAL, pernyataan PULIHKAN atau LAMPIRKAN DATABASE dapat selesai, tetapi rakitan mungkin gagal dimuat. Untuk memuat rakitan, Anda harus mengubah atau menghilangkan dan membuat ulang setiap rakitan sehingga ditandatangani dengan sertifikat atau kunci asimetris yang memiliki login yang sesuai dengan izin ASSEMBLY TIDAK AMAN di server.

Informasi selengkapnya: Keamanan ketat runtime bahasa umum

Klausa KOMPUTASI

Judul: Klausul COMPUTASI tidak lagi didukung dan telah dihapus.
Kategori: Peringatan

Keterangan
Klausul KOMPUTASI menghasilkan total yang muncul sebagai kolom ringkasan tambahan di akhir hasil. Namun, klausul ini tidak lagi didukung di Azure SQL Managed Instance.

Rekomendasi
Sebagai gantinya, modul T-SQL perlu diregenerasi menggunakan operator ROLLUP. Kode berikut menunjukkan bagaimana COMPUTE dapat diganti dengan ROLLUP:

USE AdventureWorks2022;GO;

SELECT SalesOrderID,
    UnitPrice,
    UnitPriceDiscount
FROM Sales.SalesOrderDetail
ORDER BY SalesOrderID COMPUTE SUM(UnitPrice),
    SUM(UnitPriceDiscount) BY SalesOrderID GO;

SELECT SalesOrderID,
    UnitPrice,
    UnitPriceDiscount,
    SUM(UnitPrice) AS UnitPrice,
    SUM(UnitPriceDiscount) AS UnitPriceDiscount
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID,
    UnitPrice,
    UnitPriceDiscount
WITH ROLLUP;

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

Penyedia kriptografi

Judul: Penggunaan CREATE CRYPTOGRAPHIC PROVIDER atau ALTER CRYPTOGRAPHIC PROVIDER ditemukan, yang tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Azure SQL Managed Instance tidak mendukung pernyataan PENYEDIA KRIPTOGRAFI karena tidak dapat mengakses file. Lihat bagian Objek yang Terpengaruh untuk penggunaan spesifik pernyataan PENYEDIA KRIPTOGRAFI. Objek dengan 'CREATE CRYPTOGRAPHIC PROVIDER' atau 'ALTER CRYPTOGRAPHIC PROVIDER' tidak berfungsi dengan benar setelah bermigrasi ke Azure SQL Managed Instance.

Rekomendasi
Tinjau objek dengan 'BUAT PENYEDIA KRIPTOGRAFI' atau 'UBAH PENYEDIA KRIPTOGRAFI'. Dalam objek apa pun yang diperlukan, hapus penggunaan fitur-fitur ini. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan penyedia kriptografi di Azure SQL Managed Instance

Kompatibilitas database

Judul: Tingkat kompatibilitas database di bawah 100 tidak didukung
Kategori: Peringatan

Keterangan
Tingkat Kompatibilitas Database adalah alat berharga untuk membantu modernisasi database, dengan memungkinkan Mesin Database SQL Server ditingkatkan, sambil tetap menyambungkan status fungsi aplikasi dengan mempertahankan Tingkat Kompatibilitas Database pra-peningkatan yang sama. Azure SQL Managed Instance tidak mendukung tingkat kompatibilitas di bawah 100. Ketika database dengan tingkat kompatibilitas di bawah 100 dipulihkan pada Azure SQL Managed Instance, tingkat kompatibilitas ditingkatkan menjadi 100.

Rekomendasi
Mengevaluasi apakah fungsionalitas aplikasi utuh saat tingkat kompatibilitas database ditingkatkan menjadi 100 pada Azure SQL Managed Instance. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Tingkat kompatibilitas yang didukung di Azure SQL Managed Instance

Alias utama database

Judul: SYS.DATABASE_PRINCIPAL_ALIASES tidak lagi didukung dan telah dihapus.
Kategori: Masalah

Keterangan
SYS. DATABASE_PRINCIPAL_ALIASES tidak lagi didukung dan telah dihapus di Azure SQL Managed Instance.

Rekomendasi
Gunakan peran sebagai pengganti alias.

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

Opsi DISABLE_DEF_CNST_CHK

Judul: Opsi SET DISABLE_DEF_CNST_CHK tidak lagi didukung dan telah dihapus.
Kategori: Masalah

Keterangan
Opsi SET DISABLE_DEF_CNST_CHK tidak lagi didukung dan telah dihapus di Azure SQL Managed Instance.

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

Petunjuk FASTFIRSTROW

Judul: Petunjuk kueri FASTFIRSTROW tidak lagi didukung dan telah dihapus.
Kategori: Peringatan

Keterangan
Petunjuk kueri FASTFIRSTROW tidak lagi didukung dan telah dihapus di Azure SQL Managed Instance.

Rekomendasi
Alih-alih petunjuk kueri FASTFIRSTROW menggunakan OPTION (FAST n).

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

FILESTREAM

Judul: FILESTREAM dan FileTable tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Fitur FILESTREAM, yang memungkinkan Anda menyimpan data yang tidak terstruktur seperti dokumen teks, gambar, dan video dalam sistem file NTFS, tidak didukung di Azure SQL Managed Instance. Database ini tidak dapat dimigrasikan karena cadangan yang berisi grup file FILESTREAM tidak dapat dipulihkan di Azure SQL Managed Instance.

Rekomendasi
Unggah file yang tidak terstruktur ke penyimpanan Azure Blob dan simpan metadata yang terkait dengan file-file ini (nama, jenis, lokasi URL, kunci penyimpanan, dll.) di Azure SQL Managed Instance. Anda mungkin harus merekayasa ulang aplikasi Anda untuk mengaktifkan blob streaming ke dan dari Azure SQL Managed Instance. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Blob Streaming ke dan dari blog Azure SQL

MS DTC Heterogen

Judul: BEGIN DISTRIBUTED TRANSACTION dengan server jarak jauh non-SQL Server tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Transaksi terdistribusi yang dimulai oleh Transact SQL BEGIN DISTRIBUTED TRANSACTION dan dikelola oleh Koordinator Transaksi Terdistribusi Microsoft (MS DTC) tidak didukung di Azure SQL Managed Instance jika server jarak jauh bukan SQL Server.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua objek menggunakan BEGIN DISTRUBUTED TRANSACTION. Pertimbangkan untuk memigrasikan database peserta ke Azure SQL Managed Instance tempat transaksi terdistribusi di beberapa instans didukung. Untuk informasi selengkapnya, lihat Transaksi di beberapa server untuk Azure SQL Managed Instance.

Atau, migrasi ke SQL Server di Komputer Virtual Azure.

MS DTC Homogen

Judul: BEGIN DISTRIBUTED TRANSACTION didukung di beberapa server untuk Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Transaksi terdistribusi yang dimulai oleh T-SQL MULAI TRANSAKSI TERDISTRIBUSI dan dikelola oleh Koordinator Transaksi Terdistribusi Microsoft (MS DTC) didukung di beberapa server di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua objek menggunakan BEGIN DISTRUBUTED TRANSACTION. Pertimbangkan untuk memigrasikan database peserta ke Azure SQL Managed Instance tempat transaksi terdistribusi di beberapa instans didukung. Untuk informasi selengkapnya, lihat Transaksi di beberapa server untuk Azure SQL Managed Instance.

Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Server yang ditautkan (penyedia layanan non-SQL)

Judul: server yang ditautkan dengan Penyedia Layanan non-SQL Server tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Server tertaut memungkinkan Mesin Database SQL Server untuk menjalankan perintah terhadap sumber data OLE DB di luar contoh SQL Server. Server yang ditautkan dengan Penyedia Layanan non-SQL Server tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Azure SQL Managed Instance tidak mendukung fungsionalitas server tertaut jika penyedia server jarak jauh non-SQL Server seperti Oracle, Sybase, dll.

Tindakan berikut ini disarankan untuk menghilangkan kebutuhan server yang ditautkan:

  • Identifikasi database dependen dari server non-SQL jarak jauh dan pertimbangkan untuk memindahkannya ke database yang sedang dimigrasikan.
  • Migrasikan database dependen ke target yang didukung seperti instans SQL Managed Instance, SQL Database, Azure Synapse, dan SQL Server.
  • Pertimbangkan untuk membuat server yang ditautkan antara Azure SQL Managed Instance dan SQL Server di Komputer Virtual Azure (Komputer Virtual SQL). Kemudian dari komputer virtual SQL, buat server tertaut ke Oracle, Sybase, dll. Pendekatan ini memang melibatkan dua hop tetapi dapat digunakan sebagai solusi sementara.
  • Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan Server Yang Ditautkan di Azure SQL Managed Instance

Menggabungkan pekerjaan

Judul: Langkah menggabungkan pekerjaan tidak didukung di Azure SQL Managed Instance.
Kategori: Peringatan

Keterangan
Ini adalah langkah pekerjaan yang mengaktifkan Agen Penggabungan replikasi. Agen Penggabungan Replikasi adalah utilitas yang dapat dieksekusi yang menerapkan snapshot awal yang disimpan dalam tabel database ke Pelanggan. Ini juga menggabungkan perubahan data bertahap yang terjadi di Publisher setelah rekam jepret awal dibuat, dan mendamaikan konflik baik sesuai dengan aturan yang Anda konfigurasi, atau menggunakan pemecah masalah kustom yang Anda buat. Langkah pekerjaan penggabungan tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua pekerjaan menggunakan langkah Pekerjaan penggabungan dan evaluasi apakah langkah pekerjaan atau objek yang terpengaruh dapat dihapus. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan SQL Server Agent di Azure SQL Managed Instance

Ukuran database MI

Judul: Azure SQL Managed Instance tidak mendukung ukuran database yang lebih besar dari 16 TB.
Kategori: Masalah

Keterangan
Ukuran database lebih besar dari penyimpanan maksimum yang dicadangkan instans. Database ini tidak dapat dipilih untuk migrasi karena ukurannya melebihi batas yang diizinkan.

Rekomendasi
Evaluasi apakah data dapat diarsipkan atau dikompresi atau dipecah ke dalam beberapa database. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Karakteristik perangkat keras Azure SQL Managed Instance

Ukuran instans MI

Judul: Ukuran penyimpanan instans maksimum di Azure SQL Managed Instance tidak boleh lebih besar dari 8 TB.
Kategori: Peringatan

Keterangan
Ukuran semua database lebih besar dari penyimpanan maksimum yang dicadangkan instans.

Rekomendasi
Pertimbangkan untuk memigrasikan database ke Azure SQL Managed Instance yang berbeda atau ke SQL Server di Komputer Virtual Azure jika semua database harus ada pada instans yang sama.

Informasi selengkapnya: Karakteristik perangkat keras Azure SQL Managed Instance

Beberapa file log

Judul: Azure SQL Managed Instance tidak mendukung beberapa file log.
Kategori: Masalah

Keterangan
SQL Server memungkinkan database untuk mencatat beberapa file. Database ini memiliki beberapa file log, yang tidak didukung di Azure SQL Managed Instance. **Database ini tidak dapat dimigrasikan karena cadangan tidak dapat dipulihkan pada Azure SQL Managed Instance.
**

Rekomendasi
Azure SQL Managed Instance hanya mendukung satu log per database. Anda perlu menghapus semua kecuali salah satu file log sebelum memigrasikan database ini ke Azure:

ALTER DATABASE [database_name] REMOVE FILE [log_file_name]

Informasi selengkapnya: Opsi database yang tidak didukung di Azure SQL Managed Instance

Kolom berikutnya

Judul: Tabel dan Kolom bernama BERIKUTNYA akan menyebabkan kesalahan di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Tabel atau kolom bernama BERIKUTNYA terdeteksi. Urutan, yang diperkenalkan di Microsoft SQL Server, menggunakan fungsi NEXT VALUE FOR standar ANSI. Tabel atau kolom bernama NEXT dan kolom alias sebagai VALUE dengan standar ANSI AS yang dihilangkan dapat menyebabkan kesalahan.

Rekomendasi
Lakukan regenerasi pernyataan untuk menyertakan kata kunci AS standar ANSI saat membuat alias tabel atau kolom. Misalnya, ketika kolom diberi nama NEXT dan kolom tersebut diberi alias sebagai VALUE, kueri SELECT NEXT VALUE FROM TABLE menyebabkan kesalahan, dan harus ditulis ulang sebagai SELECT NEXT AS VALUE FROM TABLE. Demikian pula, untuk tabel bernama NEXT dan aliased as VALUE, kueri SELECT Col1 FROM NEXT VALUE menyebabkan kesalahan, dan harus ditulis ulang sebagai SELECT Col1 FROM NEXT AS VALUE.

Gabungan kiri luar gaya non-ANSI

Judul: Gaya non-ANSI gabungan kiri luar tidak lagi didukung dan telah dihapus.
Kategori: Peringatan

Keterangan
Gabungan kiri luar gaya non-ANSI tidak lagi didukung dan telah dihapus di Azure SQL Managed Instance.

Rekomendasi
Gunakan sintaks gabungan ANSI.

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

Gabungan kanan luar gaya non-ANSI

Judul: Gaya non-ANSI gabungan kiri luar tidak lagi didukung dan telah dihapus.
Kategori: Peringatan

Keterangan
Gabungan kiri luar gaya non-ANSI tidak lagi didukung dan telah dihapus di Azure SQL Managed Instance.

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

Rekomendasi
Gunakan sintaks gabungan ANSI.

Database melebihi 100

Judul: Azure SQL Managed Instance mendukung maksimum 100 database per instans.
Kategori: Peringatan

Keterangan
Jumlah maksimum database yang didukung di Azure SQL Managed Instance adalah 100, kecuali batas ukuran penyimpanan instans telah tercapai.

Rekomendasi
Pertimbangkan untuk memigrasikan database ke Azure SQL Managed Instance yang berbeda atau ke SQL Server di Komputer Virtual Azure jika semua database harus ada pada instans yang sama.

Informasi selengkapnya: Batas Sumber Daya Azure SQL Managed Instance

OPENROWSET (sumber data non-BLOB)

Judul: OpenRowSet yang digunakan dalam operasi massal dengan sumber data penyimpanan blob non-Azure tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
OPENROWSET mendukung operasi massal melalui penyedia MASSAL bawaan yang memungkinkan data dari file dibaca dan dikembalikan sebagai rowset. OPENROWSET dengan sumber data penyimpanan blob non-Azure tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Azure SQL Managed Instance tidak dapat mengakses berbagi file dan folder Windows, sehingga file harus diimpor dari Azure Blob Storage. Oleh karena itu, hanya tipe gumpalan DATASOURCE yang didukung dalam fungsi OPENROWSET. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan Sisipan Massal dan OPENROWSET di Azure SQL Managed Instance

OPENROWSET (penyedia non-SQL)

Judul: OpenRowSet dengan penyedia non-SQL tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Metode ini adalah alternatif untuk mengakses tabel di server yang ditautkan dan merupakan metode satu kali ad hoc untuk menyambungkan dan mengakses data jarak jauh dengan menggunakan OLE DB. OpenRowSet dengan penyedia non-SQL tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Fungsi OPENROWSET dapat digunakan untuk menjalankan kueri hanya pada instans SQL Server (baik terkelola, lokal, atau di Virtual Machines). Penyedia , , SQLNCLI11SQLOLEDB, dan MSOLEDBSQL (disarankanSQLNCLI) didukung. Driver Microsoft OLE DB (MSOLEDBSQL) untuk SQL Server direkomendasikan untuk pengembangan baru.

Tindakan rekomendasi adalah mengidentifikasi database dependen dari Server non-SQL jarak jauh, dan pertimbangkan untuk memindahkannya ke dalam instans yang sedang dimigrasikan.

Informasi selengkapnya: Perbedaan Sisipan Massal dan OPENROWSET di Azure SQL Managed Instance

Pekerjaan PowerShell

Judul: Langkah pekerjaan PowerShell tidak didukung di Azure SQL Managed Instance.
Kategori: Peringatan

Keterangan
Ini adalah langkah pekerjaan yang menjalankan skrip PowerShell. Langkah pekerjaan PowerShell tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua pekerjaan menggunakan langkah pekerjaan PowerShell dan evaluasi apakah langkah pekerjaan atau objek yang terpengaruh dapat dihapus. Mengevaluasi apakah Azure Automation dapat digunakan. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan SQL Server Agent di Azure SQL Managed Instance

Pekerjaan Pembaca Antrean

Judul: Langkah pekerjaan Pembaca Antrean tidak didukung di Azure SQL Managed Instance.
Kategori: Peringatan

Keterangan
Ini adalah langkah pekerjaan yang mengaktifkan Agen Pembaca Antrean replikasi. Agen Pembaca Antrean Replikasi adalah langkah pekerjaan yang dapat dieksekusi yang membaca pesan yang disimpan dalam antrean Microsoft SQL Server atau Antrean Pesan Microsoft lalu menerapkan pesan tersebut ke Penerbit. Agen Pembaca Antrean digunakan dengan rekam jepret dan publikasi transaksional yang memungkinkan pembaruan antrean. Langkah pekerjaan Pembaca Antrean tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua pekerjaan menggunakan langkah pekerjaan Pembaca Antrean dan evaluasi apakah langkah pekerjaan atau objek yang terpengaruh dapat dihapus. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan SQL Server Agent di Azure SQL Managed Instance

RAISERROR

Judul: Gaya warisan dari panggilan RAISERROR harus diganti dengan gaya modern yang serupa.
Kategori: Peringatan

Keterangan
Panggilan RAISERROR seperti contoh di bawah ini disebut sebagai gaya warisan karena tidak menyertakan koma dan tanda kurung. RAISERROR 50001 'this is a test'. Metode pemanggilan RAISERROR ini tidak lagi didukung dan telah dihapus di Azure SQL Managed Instance.

Rekomendasi
Lakukan regenerasi pernyataan menggunakan sintaks RAISERROR saat ini, atau evaluasi apakah pendekatan modern BEGIN TRY { } END TRY BEGIN CATCH { THROW; } END CATCH layak.

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

Email SQL

Judul: Email SQL tidak lagi didukung.
Kategori: Peringatan

Keterangan
Email SQL sudah tidak didukung dan dihapus di Azure SQL Managed Instance.

Rekomendasi
Gunakan Email Database.

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

SystemProcedures110

Judul: Terdeteksi pernyataan bahwa referensi menghapus prosedur yang disimpan sistem yang tidak tersedia di Azure SQL Managed Instance.
Kategori: Peringatan

Keterangan
Mengikuti sistem yang tidak didukung dan prosedur tersimpan yang diperluas tidak dapat digunakan di Azure SQL Managed Instance - sp_dboption, , sp_addserversp_dropalias,sp_activedirectory_obj , sp_activedirectory_scp, dan sp_activedirectory_start.

Rekomendasi
Hapus referensi ke prosedur sistem yang tidak didukung yang telah dihapus di Azure SQL Managed Instance.

Informasi selengkapnya: Fungsionalitas Mesin Database yang Dihentikan di SQL Server

Pekerjaan T-SQL

Judul: Langkah pekerjaan TSQL menyertakan perintah yang tidak didukung di Azure SQL Managed Instance
Kategori: Peringatan

Keterangan
Ini adalah langkah pekerjaan yang menjalankan skrip Transact-SQL pada waktu yang dijadwalkan. Langkah pekerjaan TSQL mencakup perintah yang tidak didukung, yang tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua pekerjaan yang menyertakan perintah yang tidak didukung di Azure SQL Managed Instance dan evaluasi apakah langkah pekerjaan atau objek yang terpengaruh dapat dihapus. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan SQL Server Agent di Azure SQL Managed Instance

Bendera pelacakan

Judul: Bendera pelacakan yang tidak didukung di Azure SQL Managed Instance ditemukan
Kategori: Peringatan

Keterangan
Azure SQL Managed Instance hanya mendukung jumlah bendera pelacakan global yang terbatas. Bendera pelacakan sesi tidak didukung.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua bendera pelacakan yang tidak didukung di Azure SQL Managed Instance dan evaluasi apakah dapat dihapus. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Bendera pelacakan

Autentikasi Windows

Judul: Pengguna database yang dipetakan dengan autentikasi Windows (keamanan terpadu) tidak didukung di Azure SQL Managed Instance
Kategori: Peringatan

Keterangan
Azure SQL Managed Instance mendukung dua jenis autentikasi:

  • Autentikasi SQL, yang menggunakan nama pengguna dan kata sandi
  • Autentikasi Microsoft Entra, yang menggunakan identitas yang dikelola oleh ID Microsoft Entra (sebelumnya Azure Active Directory) dan didukung untuk domain terkelola dan terintegrasi.

Pengguna database yang dipetakan dengan autentikasi Windows (keamanan terintegrasi) tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Federasi Direktori Aktif lokal dengan ID Microsoft Entra. Identitas Windows kemudian dapat diganti dengan identitas Microsoft Entra yang setara. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Kemampuan keamanan SQL Managed Instance

XP_cmdshell

Judul: xp_cmdshell tidak didukung di Azure SQL Managed Instance.
Kategori: Masalah

Keterangan
Xp_cmdshell yang memunculkan shell perintah Windows dan lolos dalam untai (karakter) untuk eksekusi tidak didukung di Azure SQL Managed Instance.

Rekomendasi
Tinjau bagian objek yang terpengaruh di Azure Migrate untuk melihat semua objek menggunakan xp_cmdshell dan mengevaluasi apakah referensi ke xp_cmdshell atau objek yang terpengaruh dapat dihapus. Pertimbangkan juga untuk menjelajahi Azure Automation yang menghadirkan layanan otomatisasi dan konfigurasi berbasis cloud. Atau, migrasi ke SQL Server di Komputer Virtual Azure.

Informasi selengkapnya: Perbedaan Prosedur Tersimpan di Azure SQL Managed Instance