SQL Server ile Azure SQL Yönetilen Örneği arasındaki T-SQL farklılıkları

Şunlar için geçerlidir:Azure SQL Yönetilen Örneği

Bu makalede, Azure SQL Yönetilen Örneği ve SQL Server arasındaki söz dizimi ve davranış farklılıkları özetlenip açıklanmaktadır.

SQL Yönetilen Örneği, SQL Server veritabanı altyapısıyla yüksek uyumluluk sağlar ve çoğu özellik bir SQL Yönetilen Örneği desteklenir.

Diagram showing the easy migration from SQL Server.

SQL Yönetilen Örneği’nde bazı PaaS sınırlamaları ve SQL Server ile karşılaştırıldığında bazı davranış değişiklikleri vardır. Farklılıklar aşağıdaki kategorilere ayrılır:

Bu özelliklerin çoğu mimari kısıtlamalardır ve hizmet özelliklerini temsil eder.

SQL Yönetilen Örneği'de bulunan ve gelecekte çözülecek geçici bilinen sorunlar Yenilikler? bölümünde açıklanmıştır.

Not

Microsoft Entra Id daha önce Azure Active Directory (Azure AD) olarak biliniyordu.

Kullanılabilirlik

AlwaysOn Kullanılabilirlik Grupları

Yüksek kullanılabilirlik SQL Yönetilen Örneği yerleşiktir ve kullanıcılar tarafından denetlenemez. Aşağıdaki deyimler desteklenmez:

Yedekleme

Azure SQL Yönetilen Örneği, kullanıcıların tam veritabanı COPY_ONLY yedeklemeleri oluşturabilmesi için otomatik yedeklemelere sahiptir. Değişiklik, günlük ve dosya anlık görüntüsü yedeklemeleri desteklenmez.

  • SQL Yönetilen Örneği ile örnek veritabanını yalnızca Azure Blob depolama hesabına yedekleyebilirsiniz:
    • Yalnızca BACKUP TO URL desteklenir.
    • FILE, TAPEve yedekleme cihazları desteklenmez.
  • Genel WITH seçeneklerin çoğu desteklenir.
    • COPY_ONLY zorunludur.
    • FILE_SNAPSHOT ve CREDENTIAL desteklenmez.
    • Bant seçenekleri: REWIND, NOREWIND, UNLOADve NOUNLOAD desteklenmez.
    • Günlüğe özgü seçenekler: NORECOVERY, STANDBYve NO_TRUNCATE desteklenmez.

Sınırlamalar:

  • bir SQL Yönetilen Örneği ile örnek veritabanını en fazla 32 şeritli bir yedeklemeye yedekleyebilirsiniz; bu, yedekleme sıkıştırması kullanılırsa 4 TB'a kadar veritabanları için yeterlidir.

  • Hizmet tarafından yönetilen Saydam Veri Şifrelemesi (TDE) ile şifrelenmiş bir veritabanında yürütemezsinizBACKUP DATABASE ... WITH COPY_ONLY. Hizmet tarafından yönetilen TDE, yedeklemelerin bir iç TDE anahtarıyla şifrelenmesini zorlar. Anahtar dışarı aktarılamaz, bu nedenle yedeklemeyi geri yükleyemezsiniz. Otomatik yedeklemeleri ve belirli bir noktaya geri yüklemeyi veya bunun yerine müşteri tarafından yönetilen (BYOK) TDE'yi kullanın. Ayrıca veritabanında şifrelemeyi devre dışı bırakabilirsiniz.

  • Bir SQL Yönetilen Örneği alınan yerel yedeklemeler yalnızca SQL Server 2022 örneğine geri yüklenebilir. Bunun nedeni, SQL Yönetilen Örneği diğer SQL Server sürümlerine kıyasla daha yüksek iç veritabanı sürümüne sahip olmasıdır. Daha fazla bilgi için SQL Yönetilen Örneği veritabanı yedeklemesini SQL Server 2022'ye geri yükleme'yi gözden geçirin.

  • Veritabanını Bir Azure depolama alanına yedeklemek veya azure depolamadan geri yüklemek için, Azure Depolama kaynaklarına kısıtlı erişim hakları veren bir URI olan yönetilen kimlik veya paylaşılan erişim imzası (SAS) kullanarak kimlik doğrulaması yapabilirsiniz. Bu konuda daha fazla bilgi edinin. Bu senaryolar için Erişim anahtarlarının kullanılması desteklenmez.

  • SQL Yönetilen Örneği komutu kullanılarak BACKUP maksimum yedekleme şeridi boyutu 195 GB'tır ve bu da blob boyutu üst sınırıdır. Tek tek şerit boyutunu küçültmek ve bu sınırın içinde kalmak için yedekleme komutundaki şerit sayısını artırın.

    İpucu

    Bu sınırlamaya geçici bir çözüm olarak, bir veritabanını şirket içi ortamda veya bir sanal makinede SQL Server'dan yedeklerken şunları yapabilirsiniz:

    • yedeklemek DISK yerine için yedekleyin URL.
    • Yedekleme dosyalarını Blob depolamaya yükleyin.
    • SQL Yönetilen Örneği'a geri yükleyin.

    Restore SQL Yönetilen Örneği komutu, karşıya yüklenen yedekleme dosyalarının depolanması için farklı bir blob türü kullanıldığından yedekleme dosyalarında daha büyük blob boyutlarını destekler.

T-SQL kullanan yedeklemeler hakkında bilgi için bkz . BACKUP.

Güvenlik

Denetim

Microsoft Azure SQL'de ve SQL Server'da denetim arasındaki temel farklar şunlardır:

  • SQL Yönetilen Örneği ile denetim sunucu düzeyinde çalışır. Günlük .xel dosyaları Azure Blob depolamada depolanır.
  • Azure SQL Veritabanı ile denetim veritabanı düzeyinde çalışır. Günlük .xel dosyaları Azure Blob depolamada depolanır.
  • SQL Server, şirket içi veya sanal makinelerde denetim sunucu düzeyinde çalışır. Olaylar dosya sisteminde veya Windows olay günlüklerinde depolanır.

SQL Yönetilen Örneği'da XEvent denetimi, Azure Blob depolama hedeflerini destekler. Dosya ve Windows günlükleri desteklenmez.

Azure Blob depolamada denetim söz dizimindeki CREATE AUDIT temel farklar şunlardır:

  • Dosyaların yerleştirildiği Azure Blob depolama kapsayıcısının URL'sini .xel belirtmek için yeni bir söz dizimi TO URL sağlanır.
  • söz dizimi TO FILE desteklenmez çünkü SQL Yönetilen Örneği Windows dosya paylaşımları'na erişemez.

Daha fazla bilgi için bkz.

Sertifikalar

SQL Yönetilen Örneği dosya paylaşımlarına ve Windows klasörlerine erişebileceğinden aşağıdaki kısıtlamalar geçerlidir:

  • Dosya CREATE FROM/BACKUP TO sertifikalar için desteklenmez.
  • sertifikasını CREATEASSEMBLY/BACKUPFILE/desteklemez. Özel anahtar dosyaları kullanılamaz.

Bkz . SERTIFIKA OLUŞTURMA ve YEDEKLEME SERTIFIKASI.

Geçici çözüm: Sertifikanın yedeğini oluşturmak ve yedeklemeyi geri yüklemek yerine sertifika ikili içeriğini ve özel anahtarını alın, .sql dosyası olarak depolayın ve ikili dosyadan oluşturun:

CREATE CERTIFICATE
   FROM BINARY = asn_encoded_certificate
WITH PRIVATE KEY (<private_key_options>);

Referans

Yönetilen kimlik, Azure Key Vault ve SHARED ACCESS SIGNATURE kimlikler desteklenir. Windows kullanıcıları desteklenmez.

Bkz . CREATE CREDENTIAL ve ALTER CREDENTIAL.

Şifreleme sağlayıcıları

SQL Yönetilen Örneği dosyalara erişebileceğinden şifreleme sağlayıcıları oluşturulamaz:

Oturum açma bilgileri ve kullanıcılar

  • , FROM ASYMMETRIC KEYve FROM SID kullanılarak FROM CERTIFICATEoluşturulan SQL oturum açma işlemleri desteklenir. Bkz . CREATE LOGIN. Sunucu sorumluları (oturum açma bilgileri) sunucu düzeyinde ve kullanıcılar (veritabanı sorumluları) veritabanı düzeyinde oluşturulur. CREATE LOGIN söz dizimi ile oluşturulan Microsoft Entra oturum açma bilgileri ve CREATE USER FROM LOGIN söz dizimi ile oluşturulan Microsoft Entra kullanıcıları desteklenir. Kullanıcı oluştururken ve belirtirken FROM LOGIN, bu kullanıcı oturum açma bilgileriyle ilişkilendirilir ve kendisine atanan sunucu rollerini ve izinleri devralır.

    SQL Yönetilen Örneği, söz dizimi CREATE USER [AADUser/AAD group] FROM EXTERNAL PROVIDERile Microsoft Entra kimliklerini temel alan bağımsız veritabanı kullanıcıları oluşturmayı destekler. Bu şekilde oluşturulan kullanıcılar, veritabanında aynı ada sahip bir sunucu sorumlusu olsa master bile sunucu sorumlularıyla ilişkili değildir.

  • Söz dizimi ile CREATE LOGIN ... FROM WINDOWS oluşturulan Windows oturum açma işlemleri desteklenmez. Microsoft Entra oturum açma bilgilerini ve kullanıcılarını kullanın.

  • Örneğin Microsoft Entra yöneticisinin sınırsız yönetici ayrıcalıkları vardır.

  • Bazı özellikler, örneğin SQL Server çoğaltması gibi tek bir SQL Yönetilen Örneği içinde, örnekler arası etkileşimlerde Microsoft Entra oturum açma bilgilerini kullanmayı desteklemez. Ancak bağlı sunucu özelliği, Microsoft Entra sunucu sorumlularını (oturum açma bilgileri) kullanarak örnekler arası kimlik doğrulamayı destekler.

  • Veritabanı sahibi olarak bir Microsoft Entra grubuna eşlenmiş bir Microsoft Entra oturum açma bilgisi ayarlanması desteklenmez. Oturum açma bilgileri veritabanında oluşturulmamış olsa bile Microsoft Entra grubunun bir üyesi veritabanı sahibi olabilir.

  • Execute AS yan tümcesi gibi diğer Microsoft Entra sorumlularını kullanarak Microsoft Entra sunucu düzeyi sorumlularının kimliğe bürünmesi desteklenir. EXECUTE AS sınırlamaları şunlardır:

    • KULLANICI OLARAK YÜRÜT, ad oturum açma adından farklı olduğunda Microsoft Entra kullanıcıları için desteklenmez. Buna örnek olarak, kullanıcı söz dizimi CREATE USER [myAadUser] FROM LOGIN [john@contoso.com] aracılığıyla oluşturulur ve kimliğe bürünmeye çalışılır EXEC AS USER = myAadUser. Microsoft Entra oturum açma bilgileriyle bir USER oluşturduğunuzda, oturum açma bilgilerindeki user_name aynı login_name belirtin.

    • Yalnızca rolün parçası sysadmin olan SQL Server düzeyinde oturum açma işlemleri, Microsoft Entra sorumlularını hedefleyen aşağıdaki işlemleri yürütebilir:

      • KULLANICI OLARAK YÜRÜT
      • OTURUM AÇMA OLARAK YÜRÜT
    • EXECUTE AS deyimine sahip bir kullanıcının kimliğine bürünmek için kullanıcının doğrudan Microsoft Entra oturum açma bilgilerine eşlenmesi gerekir. Microsoft Entra sunucu sorumlularıyla eşlenen Microsoft Entra gruplarının üyesi olan kullanıcılar, çağıranın belirtilen kullanıcı adında kimliğe bürünme izinlerine sahip olmasına rağmen EXECUTE AS deyimiyle etkin bir şekilde kimliğine bürünemez.

  • bacpac dosyalarını kullanarak veritabanı dışarı/içeri aktarma, SSMS V18.4 veya üzeri ya da SqlPackage kullanarak SQL Yönetilen Örneği Microsoft Entra kullanıcıları için desteklenir.

    • Veritabanı bacpac dosyası kullanılarak aşağıdaki yapılandırmalar desteklenir:
      • Veritabanını aynı Microsoft Entra etki alanındaki farklı yönetim örnekleri arasında dışarı/içeri aktarın.
      • Veritabanını SQL Yönetilen Örneği dışarı aktarın ve aynı Microsoft Entra etki alanındaki SQL Veritabanı aktarın.
      • Veritabanını SQL Veritabanı dışarı aktarın ve aynı Microsoft Entra etki alanındaki SQL Yönetilen Örneği içeri aktarın.
      • Veritabanını SQL Yönetilen Örneği dışarı aktarın ve SQL Server'a (sürüm 2012 veya üzeri) aktarın.
        • Bu yapılandırmada, tüm Microsoft Entra kullanıcıları oturum açma bilgileri olmadan SQL Server veritabanı sorumluları (kullanıcılar) olarak oluşturulur. Kullanıcı türü ve SQL içinde sys.database_principalsolduğu gibi SQL_USER görünür. İzinleri ve rolleri SQL Server veritabanı meta verilerinde kalır ve kimliğe bürünme için kullanılabilir. Ancak, kimlik bilgilerini kullanarak SQL Server'a erişmek ve oturum açmak için kullanılamazlar.
  • Yalnızca SQL Yönetilen Örneği sağlama işlemi tarafından oluşturulan sunucu düzeyinde asıl oturum açma bilgileri, veya sysadmingibi securityadmin sunucu rollerinin üyeleri veya sunucu düzeyinde ALTER ANY LOGIN iznine sahip diğer oturum açma bilgileri SQL Yönetilen Örneği için veritabanında Microsoft Entra sunucu sorumluları (oturum açma bilgileri) master oluşturabilir.

  • MICROSOFT Entra kimlikleri için oturum açma bilgileri oluşturmak için SQL kimlik doğrulaması tabanlı oturum açma işlemlerine rol atanmalıdır sysadmin .

  • Oturum açma bilgileri, Azure SQL Yönetilen Örneği barındırılacağı aynı Microsoft Entra kiracısının üyesi olmalıdır.

  • Microsoft Entra sunucu sorumluları (oturum açma bilgileri), SQL Server Management Studio 18.0 önizleme 5'den başlayarak Nesne Gezgini görünür.

  • Bir örnekte etkinleştirildikten sonra Microsoft Entra yöneticisi için sysadmin erişim düzeyine sahip bir sunucu sorumlusu otomatik olarak oluşturulur.

  • Kimlik doğrulaması sırasında kimlik doğrulama sorumlusunu çözümlemek için aşağıdaki sıra uygulanır:

    1. Microsoft Entra hesabı doğrudan "E" türü olarak mevcut sys.server_principals olan bir Microsoft Entra oturum açma bilgileriyle eşlenmişse, erişim izni verin ve bu oturum açma bilgilerinin izinlerini uygulayın.
    2. Microsoft Entra hesabı, "X" türü olarak mevcut sys.server_principals olan bir Microsoft Entra oturum açma bilgileriyle eşlenmiş bir grubun üyesiyse, erişim izni verin ve bu oturum açma bilgilerinin izinlerini uygulayın.
    3. Microsoft Entra hesabı bir veritabanındaki bir Microsoft Entra kullanıcısına doğrudan eşlenmiş olarak mevcutsa ve "E" türü olarak mevcutsa sys.database_principals , Microsoft Entra veritabanı kullanıcısının erişim izni verin ve izinleri uygulayın.
    4. Microsoft Entra hesabı, veritabanındaki bir Microsoft Entra kullanıcısına eşlenmiş bir Microsoft Entra grubunun üyesiyse ve "X" türü olarak mevcutsa sys.database_principals , Microsoft Entra grubu kullanıcısının erişim izni verin ve izinleri uygulayın.

Hizmet anahtarı ve hizmet ana anahtarı

Yapılandırma

Arabellek havuzu uzantısı

Harmanlama

Varsayılan örnek harmanlama değeridir SQL_Latin1_General_CP1_CI_AS ve oluşturma parametresi olarak belirtilebilir. Bkz. Harmanlamalar.

Uyumluluk düzeyleri

  • Desteklenen uyumluluk düzeyleri 100, 110, 120, 130, 140, 150 ve 160'tır.
  • 100'in altındaki uyumluluk düzeyleri desteklenmez.
  • Yeni veritabanları için varsayılan uyumluluk düzeyi 150'dir. Geri yüklenen veritabanları için uyumluluk düzeyi 100 ve üzeriyse değişmeden kalır.

Bkz. ALTER DATABASE Uyumluluk Düzeyi.

Veritabanı yansıtma

Veritabanı yansıtma desteklenmez.

  • ALTER DATABASE SET PARTNER ve SET WITNESS seçenekleri desteklenmez.
  • CREATE ENDPOINT … FOR DATABASE_MIRRORING desteklenmez.

Daha fazla bilgi için bkz . ALTER DATABASE SET PARTNER ve SET WITNESS ve CREATE ENDPOINT ... DATABASE_MIRRORING IÇIN.

Veritabanı seçenekleri

  • Birden çok günlük dosyası desteklenmez.
  • Bellek içi nesneler Genel Amaçlı hizmet katmanında desteklenmez.
  • Genel Amaçlı örnek başına 280 dosya sınırı vardır ve bu da veritabanı başına en fazla 280 dosya anlamına gelir. Genel Amaçlı katmandaki hem veriler hem de günlük dosyaları bu sınır kapsamında sayılır. İş Açısından Kritik katman, veritabanı başına 32.767 dosyayı destekler.
  • Veritabanı FILESTREAM verilerini içeren dosya grupları içeremez. Veri içeriyorsa FILESTREAM geri yükleme başarısız olur.bak.
  • Her dosya Azure Blob depolama alanına yerleştirilir. Dosya başına GÇ ve aktarım hızı, her bir dosyanın boyutuna bağlıdır.

CREATE DATABASE deyimi

aşağıdaki sınırlamalar için CREATE DATABASEgeçerlidir:

  • Dosyalar ve dosya grupları tanımlanamaz.

  • Bellek için iyileştirilmiş bir dosya grubu ve dosyası otomatik olarak eklenir ve XTP olarak adlandırılır.

  • Bu CONTAINMENT seçenek desteklenmez.

  • WITH seçenekleri desteklenmez.

    İpucu

    Geçici bir çözüm olarak, dosya eklemek veya kapsamayı ayarlamak üzere veritabanı seçeneklerini ayarlamak için sonra CREATE DATABASE kullanınALTER DATABASE.

  • Bu FOR ATTACH seçenek desteklenmez.

  • Bu AS SNAPSHOT OF seçenek desteklenmez.

Daha fazla bilgi için bkz . CREATE DATABASE.

ALTER DATABASE deyimi

Bazı dosya özellikleri ayarlanamaz veya değiştirilemez:

  • T-SQL deyiminde ALTER DATABASE ADD FILE (FILENAME='path') dosya yolu belirtilemiyor. SQL Yönetilen Örneği dosyaları otomatik olarak yerleştirdiğinden betikten kaldırınFILENAME.
  • Bir dosya adı deyimi kullanılarak ALTER DATABASE değiştirilemez.
  • XTP dosyasını veya dosya grubunu değiştirmeye izin verilmez.

Aşağıdaki seçenekler varsayılan olarak ayarlanır ve değiştirilemez:

  • MULTI_USER
  • ENABLE_BROKER
  • AUTO_CLOSE OFF

Aşağıdaki seçenekler değiştirilemez:

  • AUTO_CLOSE
  • AUTOMATIC_TUNING(CREATE_INDEX=ON|OFF)
  • AUTOMATIC_TUNING(DROP_INDEX=ON|OFF)
  • DISABLE_BROKER
  • EMERGENCY
  • ENABLE_BROKER
  • FILESTREAM
  • HADR
  • NEW_BROKER
  • OFFLINE
  • PAGE_VERIFY
  • PARTNER
  • READ_ONLY
  • RECOVERY BULK_LOGGED
  • RECOVERY_SIMPLE
  • REMOTE_DATA_ARCHIVE
  • RESTRICTED_USER
  • SINGLE_USER
  • WITNESS

Bazı ALTER DATABASE deyimler (örneğin, SET CONTAINMENT), örneğin otomatik veritabanı yedeklemesi sırasında veya veritabanı oluşturulduktan hemen sonra geçici olarak başarısız olabilir. Bu durumda ALTER DATABASE deyimi yeniden denenmelidir. İlgili hata iletileri hakkında daha fazla bilgi için Açıklamalar bölümüne bakın.

Daha fazla bilgi için bkz . ALTER DATABASE.

SQL Server Agent

  • SQL Server Aracısı'nın etkinleştirilmesi ve devre dışı bırakılması şu anda SQL Yönetilen Örneği'de desteklenmiyor. SQL Server Agent sürekli çalışır.
  • Boşta cpu'ya dayalı iş zamanlaması tetikleyicisi desteklenmez.
  • SQL Server Aracısı ayarları salt okunur. yordam sp_set_agent_properties SQL Yönetilen Örneği'da desteklenmez.
  • Işleri
    • T-SQL iş adımları desteklenir.
    • Aşağıdaki çoğaltma işleri desteklenir:
      • İşlem günlüğü okuyucusu
      • Anlık Görüntü
      • Dağıtımcı
    • SSIS iş adımları desteklenir.
    • Diğer iş adımları türleri şu anda desteklenmiyor:
      • Birleştirme çoğaltma işi adımı desteklenmez.
      • Kuyruk Okuyucusu desteklenmez.
      • Komut kabuğu henüz desteklenmiyor.
    • SQL Yönetilen Örneği, robocopy aracılığıyla ağ paylaşımları gibi dış kaynaklara erişemez.
    • SQL Server Analysis Services desteklenmez.
  • Bildirimler kısmen desteklenir.
  • E-posta bildirimi desteklenir, ancak bir Veritabanı Postası profili yapılandırmanız gerekir. SQL Server Aracısı yalnızca bir Veritabanı Postası profili kullanabilir ve çağrılmalıdırAzureManagedInstance_dbmail_profile.
    • Pager desteklenmez.
    • NetSend desteklenmez.
    • Uyarılar henüz desteklenmiyor.
    • Proxy'ler desteklenmez.
  • EventLog desteklenmez.
  • SQL Aracısı işleri oluşturmak, değiştirmek veya yürütmek için kullanıcının doğrudan Microsoft Entra sunucusu oturum açma bilgileriyle eşlenmesi gerekir. Doğrudan eşlenmeyen kullanıcılar, örneğin SQL Aracısı işleri oluşturma, değiştirme veya yürütme haklarına sahip bir Microsoft Entra grubuna ait kullanıcılar bu eylemleri etkili bir şekilde gerçekleştiremez. Bunun nedeni SQL Yönetilen Örneği kimliğe bürünme ve AS YÜRÜTME sınırlamalarıdır.
  • Ana/hedef (MSX/TSX) işleri için Multi Server Yönetici istration özelliği desteklenmez.

SQL Server Aracısı hakkında bilgi için bkz . SQL Server Aracısı.

Tablolar

Aşağıdaki tablo türleri desteklenmez:

Tabloları oluşturma ve değiştirme hakkında bilgi için bkz. CREATE TABLE ve ALTER TABLE.

İşlevler

TOPLU EKLEME / OPENROWSET

SQL Yönetilen Örneği dosya paylaşımları ve Windows klasörlerine erişebileceğinden dosyaların Azure Blob depolama alanından içeri aktarılması gerekir:

  • DATASOURCE , Azure Blob depolamadan dosyaları içeri aktarırken komutta BULK INSERT gereklidir. Bkz. TOPLU EKLEME.
  • DATASOURCE işlevinde OPENROWSET , Azure Blob depolamadan bir dosyanın içeriğini okuduğunuzda gereklidir. Bkz. OPENROWSET.
  • OPENROWSETAzure SQL Veritabanı, Azure SQL Yönetilen Örneği veya SQL Server örneklerinden verileri okumak için kullanılabilir. Oracle veritabanları veya Excel dosyaları gibi diğer kaynaklar desteklenmez.

CLR

SQL Yönetilen Örneği dosya paylaşımlarına ve Windows klasörlerine erişebileceğinden aşağıdaki kısıtlamalar geçerlidir:

  • Yalnızca CREATE ASSEMBLY FROM BINARY desteklenir. Bkz. İKILIDEN DERLEME OLUŞTURMA.
  • CREATE ASSEMBLY FROM FILE desteklenmez. Bkz. DOSYADAN DERLEME OLUŞTURMA.
  • ALTER ASSEMBLY dosyalara başvuramıyor. Bkz. ALTER ASSEMBLY.

Veritabanı Postası (db_mail)

  • sp_send_dbmail parametresi kullanılarak @file_attachments ek gönderemez. Yerel dosya sistemi ve dış paylaşımlar veya Azure Blob Depolama bu yordamdan erişilemez.
  • Parametre ve kimlik doğrulamasıyla ilgili bilinen sorunlara @query bakın.

DBCC

SQL Server'da etkinleştirilen belgelenmemiş DBCC deyimleri SQL Yönetilen Örneği'da desteklenmez.

Dağıtılmış işlemler

Yönetilen örnekler arasında T-SQL ve .NET tabanlı dağıtılmış işlemler genel olarak kullanılabilir. XA işlemleri, yönetilen örneklerle diğer katılımcılar arasındaki dağıtılmış işlemler ve daha fazlası gibi diğer senaryolar, genel önizlemede kullanılabilen Azure SQL Yönetilen Örneği için DTC ile desteklenir.

Genişletilmiş Olaylar

Genişletilmiş Olaylar (XEvents) için Windows'a özgü bazı hedefler desteklenmez:

  • etw_classic_sync hedefi desteklenmez. .xel dosyalarını Azure Blob depolamada saklayın. Bkz. etw_classic_sync hedefi.
  • event_file hedefi desteklenmez. .xel dosyalarını Azure Blob depolamada saklayın. Bkz. event_file hedefi.

Dış kitaplıklar

Veritabanı içi R ve Python dış kitaplıkları sınırlı genel önizlemede desteklenir. Bkz. Azure SQL Yönetilen Örneği Machine Learning Services (önizleme).

FILESTREAM ve FileTable

  • FILESTREAM verileri desteklenmez.
  • Veritabanı veri içeren FILESTREAM dosya grupları içeremez.
  • FILETABLE desteklenmez.
  • Tabloların türü olamaz FILESTREAM .
  • Aşağıdaki işlevler desteklenmez:
    • GetPathLocator()
    • GET_FILESTREAM_TRANSACTION_CONTEXT()
    • PathName()
    • GetFileNamespacePat)
    • FileTableRootPath()

Daha fazla bilgi için bkz . FILESTREAM ve FileTables.

AnlamSal Arama desteklenmez.

Bağlı sunucular

SQL Yönetilen Örneği'daki bağlı sunucular sınırlı sayıda hedefi destekler:

  • Desteklenen hedefler SQL Yönetilen Örneği, SQL Veritabanı, Azure Synapse SQL sunucusuz ve ayrılmış havuzları ve SQL Server örnekleridir.
  • Desteklenmeyen hedefler dosyalar, Analysis Services ve diğer RDBMS'lerdir. Dosya içeri aktarmaya alternatif olarak veya OPENROWSET kullanarak BULK INSERT Azure Blob Depolama yerel CSV içeri aktarmayı kullanmayı deneyin veya Azure Synapse Analytics'te sunucusuz SQL havuzu kullanarak dosyaları yükleyin.

Işlem:

  • sp_dropserver bağlı sunucuyu bırakmak için desteklenir. Bkz. sp_dropserver.
  • OPENROWSET işlevi yalnızca SQL Server örneklerinde sorgu yürütmek için kullanılabilir. Bunlar yönetilebilir, şirket içinde veya sanal makinelerde kullanılabilir. Bkz. OPENROWSET.
  • OPENDATASOURCE işlevi yalnızca SQL Server örneklerinde sorgu yürütmek için kullanılabilir. Bunlar yönetilebilir, şirket içinde veya sanal makinelerde kullanılabilir. SELECT * FROM OPENDATASOURCE('SQLNCLI', '...').AdventureWorks2022.HumanResources.Employee bunun bir örneğidir. SQLNCLISağlayıcı olarak yalnızca , SQLNCLI11, SQLOLEDBve MSOLEDBSQL değerleri desteklenir. SQL Server Yerel İstemcisi (genellikle kısaltılmış SNAC), SQL Server 2022 ve SQL Server Management Studio 19'dan (SSMS) kaldırılmıştır. SQL Server Yerel İstemcisi (SQLNCLI veya SQLNCLI11) ve SQL Server için eski Microsoft OLE DB Sağlayıcısı (SQLOLEDB) yeni geliştirme için önerilmez. SQL Server için yeni Microsoft OLE DB Sürücüsüne (MSOLEDBSQL) veya sql server için en son Microsoft ODBC Sürücüsüne geçin.
  • Bağlı sunucular, ağ paylaşımlarından dosyaları (Excel, CSV) okumak için kullanılamaz. BULK INSERT, Azure Blob Depolama CSV dosyalarını okuyan OPENROWSET veya Synapse Analytics'te sunucusuz sql havuzuna başvuran bağlı bir sunucu kullanmayı deneyin. SQL Yönetilen Örneği Geri Bildirim öğesinde bu istekleri izleyin

Azure SQL Yönetilen Örneği'da bağlı sunucular SQL kimlik doğrulama ve Microsoft Entra kimlik doğrulamayı destekler.

PolyBase

Azure SQL Yönetilen Örneği ile veri sanallaştırma, Azure Data Lake Storage 2. Nesil veya Azure Blob Depolama'de depolanan dosyalardan gelen verilere karşı Transact-SQL (T-SQL) sorguları yürütmenize ve birleştirmeleri kullanarak yerel olarak depolanan ilişkisel verilerle birleştirmenize olanak tanır. Parquet ve sınırlandırılmış metin (CSV) dosya biçimleri doğrudan desteklenir. JSON dosya biçimi, sorguların her belgeyi ayrı bir satır olarak döndürdüğü CSV dosya biçimi belirtilerek dolaylı olarak desteklenir. ve OPENJSONkullanarak JSON_VALUE satırları daha fazla ayrıştırmak mümkündür. PolyBase hakkında genel bilgi için bkz . PolyBase.

Ayrıca CREATE EXTERNAL TABLE AS SELECT (CETAS), SQL yönetilen örneğinizdeki verileri bir dış depolama hesabına dışarı aktarmanızı sağlar. Parquet veya CSV dosyalarının üzerinde Azure Blob depolama veya Azure Data Lake Depolama (ADLS) 2. Nesil üzerinde dış tablo oluşturmak için CETAS kullanabilirsiniz. CETAS, T-SQL SELECT deyiminin sonuçlarını paralel olarak oluşturulan dış tabloya da dışarı aktarabilir.

Çoğaltma

  • Anlık görüntü ve çift yönlü çoğaltma türleri desteklenir. Birleştirme çoğaltması, Eşler arası çoğaltma ve güncelleştirilebilir abonelikler desteklenmez.
  • İşlem Çoğaltma bazı kısıtlamalarla SQL Yönetilen Örneği için kullanılabilir:
    • Tüm çoğaltma katılımcısı türleri (Yayımcı, Dağıtımcı, Çekme Abonesi ve Anında İletme Abonesi) SQL Yönetilen Örneği yerleştirilebilir, ancak yayımcı ve dağıtımcı hem bulutta hem de şirket içinde olmalıdır.
    • SQL Yönetilen Örneği SQL Server'ın son sürümleriyle iletişim kurabilir. Daha fazla bilgi için desteklenen sürümler matrisi bölümüne bakın.
    • İşlem Çoğaltması'nın bazı ek ağ gereksinimleri vardır.

İşlem çoğaltmasını yapılandırma hakkında daha fazla bilgi için aşağıdaki öğreticilere bakın:

RESTORE deyimi

  • Desteklenen söz dizimi:
    • RESTORE DATABASE
    • RESTORE FILELISTONLY
    • RESTORE HEADERONLY
    • RESTORE LABELONLY
    • RESTORE VERIFYONLY
  • Desteklenmeyen söz dizimi:
    • RESTORE LOGONLY
    • RESTORE REWINDONLY
  • Kaynak:
    • FROM URL (Azure Blob depolama) desteklenen tek seçenektir.
    • FROM DISK/TAPE/backup cihazı desteklenmez.
    • Yedekleme kümeleri desteklenmez.
  • WITH seçenekleri desteklenmez. , STATS, REPLACEve benzeri gibi DIFFERENTIALWITH geri yükleme girişimleri başarısız olur.

Veritabanı geri yükleme işlemi zaman uyumsuzdur ve Azure SQL Yönetilen Örneği'de yeniden denenebilir. Bağlantı başarısız olursa veya zaman aşımı süresi dolarsa SSMS'de hata alabilirsiniz. Azure SQL Yönetilen Örneği veritabanını arka planda geri yüklemeye çalışır ve sys.dm_exec_requests ve sys.dm_operation_status dinamik yönetim görünümlerini kullanarak geri yükleme işleminin ilerleme durumunu izleyebilirsiniz.

Aşağıdaki veritabanı seçenekleri ayarlanır veya geçersiz kılınabilir ve daha sonra değiştirilemez:

  • NEW_BROKER aracı .bak dosyasında etkinleştirilmemişse.
  • ENABLE_BROKER aracı .bak dosyasında etkinleştirilmemişse.
  • AUTO_CLOSE=OFF .bak dosyasındaki bir veritabanında varsa AUTO_CLOSE=ON.
  • RECOVERY FULL.bak dosyasındaki bir veritabanında veya BULK_LOGGED kurtarma modeli varsaSIMPLE.
  • Kaynak .bak dosyasında değilse bellek için iyileştirilmiş bir dosya grubu eklenir ve XTP olarak adlandırılır.
  • Mevcut bellek için iyileştirilmiş dosya grupları XTP olarak yeniden adlandırılır.
  • SINGLE_USER ve RESTRICTED_USER seçenekleri olarak MULTI_USERdönüştürülür.

Sınırlamalar:

  • Bozuk veritabanlarının yedeklemeleri bozulma türüne bağlı olarak geri yüklenebilir, ancak bozulma düzeltilene kadar otomatik yedeklemeler alınmaz. Bu sorunu önlemek için kaynak SQL Yönetilen Örneği çalıştırdığınızdan DBCC CHECKDB ve yedekleme WITH CHECKSUM kullandığınızdan emin olun.
  • .BAK Bu belgede açıklanan sınırlamaları (örneğin, FILESTREAM nesneler) FILETABLE içeren bir veritabanının dosyasının geri yüklenmesi SQL Yönetilen Örneği geri yüklenemez.
  • .BAK birden çok yedekleme kümesi içeren dosyalar geri yüklenemez.
  • .BAK birden çok günlük dosyası içeren dosyalar geri yüklenemez.
  • 8 TB'tan büyük veritabanları, etkin bellek içi OLTP nesneleri veya örnek başına 280 dosyayı aşacak dosya sayısı içeren yedeklemeler Genel Amaçlı bir örnekte geri yüklenemez.
  • Toplam boyutu kaynak sınırlarında açıklanan boyuttan daha büyük olan 4 TB'tan büyük veritabanları veya bellek içi OLTP nesneleri içeren yedeklemeler İş Açısından Kritik örnekte geri yüklenemez. Geri yükleme deyimleri hakkında bilgi için bkz . RESTORE deyimleri.

Önemli

Yerleşik belirli bir noktaya geri yükleme işlemi için de aynı sınırlamalar geçerlidir. Örneğin, 4 TB'tan büyük Genel Amaçlı veritabanı İş Açısından Kritik örneğe geri yüklenemez. Bellek içi OLTP dosyaları veya 280'den fazla dosya içeren İş Açısından Kritik veritabanı Genel Amaçlı örnekte geri yüklenemez.

Hizmet aracısı

Örnekler arası hizmet aracısı ileti değişimi yalnızca Azure SQL Yönetilen Örneği arasında desteklenir:

  • CREATE ROUTE: Başka bir SQL Yönetilen Örneği veya DNS adı dışında LOCAL bir adla ADDRESS kullanamazsınızCREATE ROUTE. Bağlantı noktası her zaman 4022'dir.
  • ALTER ROUTE: Başka bir SQL Yönetilen Örneği veya DNS adı dışında LOCAL bir adla ADDRESS kullanamazsınızALTER ROUTE. Bağlantı noktası her zaman 4022'dir.

Aktarım güvenliği desteklenir, iletişim kutusu güvenliği desteklenmez:

  • CREATE REMOTE SERVICE BINDINGdesteklenmez.

Hizmet aracısı varsayılan olarak etkindir ve devre dışı bırakılamaz. Aşağıdaki ALTER DATABASE seçenekleri desteklenmez:

  • ENABLE_BROKER
  • DISABLE_BROKER

Saklı yordamlar, işlevler ve tetikleyiciler

Sistem işlevleri ve değişkenleri

Aşağıdaki değişkenler, işlevler ve görünümler farklı sonuçlar döndürür:

  • SERVERPROPERTY('EngineEdition') 8 değerini döndürür. Bu özellik bir SQL Yönetilen Örneği benzersiz olarak tanımlar. Bkz. SERVERPROPERTY.
  • SERVERPROPERTY('InstanceName')SQL Server için var olan örnek kavramı SQL Yönetilen Örneği için geçerli olmadığından NULL döndürür. Bkz . SERVERPROPERTY('InstanceName').
  • @@SERVERNAME tam bir DNS "bağlanabilir" adı döndürür, örneğin, my-managed-instance.wcus17662feb9ce98.database.windows.net. Bkz. @@SERVERNAME.
  • SYS.SERVERS , "name" ve "data_source" özellikleri gibi myinstance.domain.database.windows.net tam bir DNS "bağlanabilir" adı döndürür. Bkz. SYS. SUNUCULAR.
  • @@SERVICENAME, SQL Server için mevcut olan hizmet kavramı SQL Yönetilen Örneği için geçerli olmadığından NULL döndürür. Bkz. @@SERVICENAME.
  • SUSER_ID desteklenir. Microsoft Entra oturum açma bilgisi içinde sys.sysloginsdeğilse NULL döndürür. Bkz. SUSER_ID.
  • SUSER_SID desteklenmez. Yanlış veriler döndürülür ve bu geçici olarak bilinen bir sorundur. Bkz. SUSER_SID.

Ortam kısıtlamaları

Alt ağ

  • SQL Yönetilen Örneği dağıttığınız alt ağa başka kaynak (örneğin sanal makineler) yerleştiremezsiniz. Bu kaynakları farklı bir alt ağ kullanarak dağıtın.
  • Alt ağın kullanılabilir IP adresi sayısı yeterli olmalıdır. Alt ağda en az 32 IP adresi olması gerekir.
  • Bir bölgeye dağıtabileceğiniz sanal çekirdek sayısı ve örnek türleri bazı kısıtlamalara ve sınırlara sahiptir.
  • Alt ağa uygulanması gereken bir ağ yapılandırması vardır.

Sanal ağ

  • Sanal ağ, Kaynak Modeli kullanılarak dağıtılabilir. Klasik Model, sanal ağ (VNet) dağıtımlarını desteklemez.
  • SQL yönetilen örneği oluşturulduktan sonra SQL yönetilen örneğinin veya sanal ağın başka bir kaynak grubuna veya aboneliğe taşınması desteklenmez.
  • 22 Eylül 2020'ye kadar oluşturulan sanal kümelerde barındırılan SQL yönetilen örnekleri için sanal ağ genel eşlemesi desteklenmez. Bu kaynaklara ExpressRoute veya sanal ağdan sanal ağa ağ geçitleri aracılığıyla bağlanabilirsiniz.

Yük devretme grupları

Sistem veritabanları bir yük devretme grubundaki ikincil örneğe çoğaltılmaz. Bu nedenle, nesneler ikincil örnekte el ile oluşturulmadığı sürece, sistem veritabanlarındaki nesnelere bağlı senaryolar ikincil örnekte imkansızdır.

tempdb

  • Sistem veritabanının tempdb en büyük dosya boyutu, Genel Amaçlı katmanda çekirdek başına 24 GB'tan büyük olamaz. İş Açısından Kritik katmanındaki maksimum tempdb boyut, SQL Yönetilen Örneği depolama boyutuyla sınırlıdır. tempdb Genel Amaçlı katmanda günlük dosyası boyutu 120 GB ile sınırlıdır. Bazı sorgular, içinde çekirdek başına 24 GB'tan fazla veya 120 GB'tan tempdb fazla günlük verisi üretiyorsa hata döndürebilir.
  • tempdb her zaman 12 veri dosyasına ayrılır: 1 birincil, aynı zamanda , masterveri dosyası ve 11 birincil olmayan veri dosyası. Dosya yapısı değiştirilemez ve yeni dosyalar öğesine tempdbeklenemez.
  • Yeni bir SQL Server 2019 bellek içi veritabanı özelliği olan bellek için iyileştirilmiş TempDB meta verileri desteklenmez.
  • Veritabanında oluşturulan nesneler, veritabanından model ilk nesne listesini almadığından yeniden başlatma veya yük devretme tempdb işleminden model sonra içinde otomatik olarak oluşturulamaztempdb. Her yeniden başlatma veya yük devretme işleminden sonra içinde el ile nesneler tempdb oluşturmanız gerekir.

msdb

SQL Yönetilen Örneği'daki msdb sistem veritabanındaki aşağıdaki şemaların, önceden tanımlanmış ilgili rollerine ait olması gerekir:

Önemli

Önceden tanımlanmış rol adlarının, şema adlarının ve şema sahiplerinin müşteriler tarafından değiştirilmesi hizmetin normal çalışmasını etkiler. Bunlarda yapılan tüm değişiklikler, algılanır algılanmaz önceden tanımlanmış değerlere veya normal hizmet işleminin gerçekleştirilmesini sağlamak için en geç bir sonraki hizmet güncelleştirmesine geri döndürülür.

Hata günlükleri

SQL Yönetilen Örneği ayrıntılı bilgileri hata günlüklerine yerleştirir. Hata günlüğüne kaydedilen birçok iç sistem olayı vardır. Bazı ilgisiz girdileri filtreleyen hata günlüklerini okumak için özel bir yordam kullanın. Daha fazla bilgi için bkz. Azure Data Studio için SQL Yönetilen Örneği – sp_readmierrorlog veya SQL Yönetilen Örneği uzantısı (önizleme).

Tutulan hata günlüklerinin sayısını değiştirmek desteklenmez.