SQL Server 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 ile 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 özelliklerin çoğu SQL Yönetilen Örneği desteklenir.

SQL Server'dan kolay geçiş

SQL Yönetilen Örneği bazı PaaS sınırlamaları ve SQL Server 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.

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:

Backup

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 bir ö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 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ıldığında 4 TB'a kadar olan veritabanları için yeterlidir.

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

  • bir SQL Yönetilen Örneği alınan yerel yedeklemeler SQL Server geri yüklenemez. Bunun nedeni, SQL Yönetilen Örneği'ın herhangi bir SQL Server sürümüne kıyasla daha yüksek iç veritabanı sürümüne sahip olmasıdır.

  • Veritabanını Azure depolama alanına/depolama alanından yedeklemek veya geri yüklemek için, Azure Depolama kaynaklarına kısıtlı erişim hakları veren bir URI'nin paylaşılan erişim imzası (SAS) oluşturulması gerekir . Bu konuda daha fazla bilgi edinin. Bu senaryolar için Erişim anahtarlarının kullanılması desteklenmez.

  • SQL Yönetilen Örneği'de komutunu kullanarak BACKUP yedekleme şeridi boyutu üst sınırı 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ırda 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 ortamdaki veya sanal makinedeki SQL Server yedeklerken şunları yapabilirsiniz:

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

    Restore SQL Yönetilen Örneği'deki komut, 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 ve SQL Server 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çinde 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'de 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 .xel Azure Blob depolama kapsayıcısının URL'sini belirtmek için kullanabileceğiniz 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şebildiğinden aşağıdaki kısıtlamalar geçerlidir:

  • Dosya CREATE FROM/BACKUP TO sertifikalar için desteklenmez.
  • ASSEMBLYFILE/sertifikası CREATE/BACKUP desteklenmiyor. Özel anahtar dosyaları kullanılamaz.

Bkz. CREATE CERTIFICATE ve BACKUP CERTIFICATE.

Geçici çözüm: Sertifikanın yedeğini oluşturmak ve yedeklemeyi geri yüklemek yerine sertifika ikili içeriğini ve özel anahtarı 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>)

Kimlik Bilgisi

Yalnızca 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şebildiğ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.

  • CREATE LOGIN söz dizimi veya CREATE USER FROM LOGIN [Azure AD Login] söz dizimi ile oluşturulan Azure Active Directory (Azure AD) sunucu sorumluları (oturum açma bilgileri) desteklenir. Bu oturum açma bilgileri sunucu düzeyinde oluşturulur.

    SQL Yönetilen Örneği, söz dizimiyle CREATE USER [AADUser/AAD group] FROM EXTERNAL PROVIDERAzure AD veritabanı sorumlularını destekler. Bu özellik, Azure AD bağımsız veritabanı kullanıcıları olarak da bilinir.

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

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

  • Yönetici olmayan Azure AD veritabanı düzeyinde kullanıcılar söz dizimi kullanılarak CREATE USER ... FROM EXTERNAL PROVIDER oluşturulabilir. Bkz. CREATE USER ... DıŞ SAĞLAYıCıDAN.

  • Azure AD sunucu sorumluları (oturum açma bilgileri), SQL özelliklerini yalnızca bir SQL Yönetilen Örneği içinde destekler. Aynı Azure AD kiracıda veya farklı kiracılarda olmaları fark etmeksizin örnekler arası etkileşim gerektiren özellikler Azure AD kullanıcılar için desteklenmez. Bu tür özelliklere örnek olarak şunlar verilebilir:

    • SQL işlem çoğaltması.
    • Bağlantı sunucusu.
  • Veritabanı sahibi olarak Azure AD grubuna eşlenmiş bir Azure AD oturum açma bilgisi ayarlanması desteklenmez. Azure AD grubunun bir üyesi, veritabanında oturum açma bilgisi oluşturulmamış olsa bile veritabanı sahibi olabilir.

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

    • KULLANıCı OLARAK YÜRÜT, ad oturum açma adından farklı olduğunda Azure AD kullanıcılar için desteklenmez. Söz dizimi CREATE USER [myAadUser] FROM LOGIN [john@contoso.com] aracılığıyla kullanıcı oluşturulduğunda ve aracılığıyla kimliğe bürünme denendiğinde EXEC AS USER = myAadUserbuna örnek olarak verilmiştir. bir Azure AD sunucu sorumlusundan (oturum açma) user oluşturduğunuzda, user_name LOGIN'den aynı login_name belirtin.

    • Yalnızca rolün parçası sysadmin olan SQL Server düzeyindeki sorumlular (oturum açma bilgileri) Azure AD sorumlularını hedefleyen aşağıdaki işlemleri yürütebilir:

      • KULLANıCı 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 Azure AD sunucu sorumlusuyla (oturum açma) eşlenmesi gerekir. Azure AD sunucu sorumlularıyla eşlenen Azure AD 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ünilemez.

  • bacpac dosyalarını kullanarak veritabanı dışarı/içeri aktarma, SSMS V18.4 veya sonraki bir sürümü veyaSQLPackage.exekullanan SQL Yönetilen Örneği Azure AD kullanıcıları için desteklenir.

    • Veritabanı bacpac dosyası kullanılarak aşağıdaki yapılandırmalar desteklenir:
      • Veritabanını aynı Azure AD 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ı Azure AD etki alanındaki SQL Veritabanı aktarın.
      • Veritabanını SQL Veritabanı dışarı aktarın ve aynı Azure AD etki alanındaki SQL Yönetilen Örneği 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 Azure AD kullanıcıları oturum açma bilgileri olmadan SQL Server veritabanı sorumluları (kullanıcılar) olarak oluşturulur. Kullanıcı türü olarak SQL listelenir ve 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 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 sorumlu oturum açma bilgileri, veya sysadmingibi securityadmin sunucu rollerinin üyeleri veya sunucu düzeyinde ALTER ANY LOGIN iznine sahip diğer oturum açma işlemleri, SQL Yönetilen Örneği için ana veritabanında Azure AD sunucu sorumluları (oturum açma bilgileri) oluşturabilir.

  • Oturum açma bir SQL sorumlusuysa, yalnızca rolün sysadmin parçası olan oturum açma bilgileri oluşturma komutunu kullanarak bir Azure AD hesabı için oturum açma bilgileri oluşturabilir.

  • Azure AD oturum açma bilgileri, Azure SQL Yönetilen Örneği için kullanılan dizindeki bir Azure AD üyesi olmalıdır.

  • Azure AD 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 Azure AD yönetici hesabı 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. Azure AD hesabı doğrudan "E" türü olarak bulunan sys.server_principals Azure AD sunucu sorumlusuna (oturum açma) eşlenmiş olarak mevcutsa, erişim izni verin ve Azure AD sunucu sorumlusunun (oturum açma) izinlerini uygulayın.
    2. Azure AD hesabı, "X" türünde bulunan sys.server_principals Azure AD sunucu sorumlusuna (oturum açma) eşlenmiş bir Azure AD grubunun üyesiyse, Azure AD grubu oturum açma izni verin ve izinler uygulayın.
    3. Azure AD hesabı bir veritabanındaki Azure AD kullanıcıyla doğrudan eşlenmiş olarak mevcutsa ve "E" türü olarak mevcutsasys.database_principals, Azure AD veritabanı kullanıcısına erişim izni verin ve izinleri uygulayın.
    4. Azure AD hesabı, veritabanındaki Azure AD bir kullanıcıyla eşlenmiş bir Azure AD grubunun üyesiyse ve "X" türü olarak mevcutsasys.database_principals, Azure AD grubu kullanıcısına 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 harmanlaması bir oluşturma parametresi olarak belirtilebilir ve şeklindedir SQL_Latin1_General_CP1_CI_AS . Bkz. Harmanlamalar.

Uyumluluk düzeyleri

  • Desteklenen uyumluluk düzeyleri 100, 110, 120, 130, 140 ve 150'dir.
  • 100'in altındaki uyumluluk düzeyleri desteklenmez.
  • Yeni veritabanları için varsayılan uyumluluk düzeyi 140'tır. 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ıtması 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 and SET WITNESS and 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ı katmanındaki hem veriler hem de günlük dosyaları bu sınıra doğru sayılır. İş Açısından Kritik katmanı veritabanı başına 32.767 dosyayı destekler.
  • Veritabanı, dosya akışı verilerini içeren dosya grupları içeremez. .bak veri içeriyorsa FILESTREAM geri yükleme başarısız olur.
  • 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 dosya 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 after 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.
  • Dosya adı deyimi kullanılarak ALTER DATABASE değiştirilemez.
  • XTP dosyasının veya dosya grubunun değiştirilmesine izin verilmiyor.

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 Agent etkinleştirilmesi ve devre dışı bırakılması şu anda SQL Yönetilen Örneği'da desteklenmiyor. SQL Server Agent sürekli çalışır.
  • Boşta cpu'ya dayalı iş zamanlaması tetikleyicisi desteklenmez.
  • SQL Server Agent ayarları salt okunur. Yordam sp_set_agent_properties SQL Yönetilen Örneği'da desteklenmez.
  • İşler
    • 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ımı türleri şu anda desteklenmiyor:
      • Birleştirme çoğaltma işi adımı desteklenmiyor.
      • Kuyruk Okuyucu 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.
  • Email bildirimi desteklenir, ancak bir Veritabanı Postası profili yapılandırmanız gerekir. SQL Server Agent yalnızca bir Veritabanı Postası profili kullanabilir ve bu profil olarak adlandırılmalıdırAzureManagedInstance_dbmail_profile.
    • Pager desteklenmez.
    • NetSend desteklenmez.
    • Uyarılar henüz desteklenmiyor.
    • Proxy'ler desteklenmez.
  • EventLog desteklenmez.
  • Kullanıcının SQL Aracısı işlerini oluşturmak, değiştirmek veya yürütmek için Azure AD sunucu sorumlusuyla (oturum açma) doğrudan eşlenmesi gerekir. Doğrudan eşlenmeyen kullanıcılar, örneğin SQL Aracısı işlerini oluşturma, değiştirme veya yürütme haklarına sahip bir Azure AD 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 Çoklu Sunucu Yönetimi özelliği desteklenmez.

SQL Server Agent hakkında bilgi için bkz. SQL Server Agent.

Tables

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şebildiğ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 . BULK INSERT.
  • DATASOURCE azure blob depolamadan bir dosyanın içeriğini okurken işlevinde OPENROWSET gereklidir. Bkz. OPENROWSET.
  • OPENROWSETAzure SQL Veritabanından, 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şebildiğinden aşağıdaki kısıtlamalar geçerlidir:

Veritabanı Postası (db_mail)

  • sp_send_dbmail parametresi kullanılarak @file_attachments ek gönderilemiyor. 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'de etkinleştirilen belgelenmemiş DBCC deyimleri SQL Yönetilen Örneği'da desteklenmez.

  • Yalnızca sınırlı sayıda Genel İzleme bayrağı desteklenir. Oturum düzeyi Trace flags desteklenmez. Bkz . İzleme bayrakları.
  • DBCC TRACEOFF ve DBCC TRACEON , sınırlı sayıda genel izleme bayrağıyla çalışır.
  • Veritabanı modda ayarlanamadığından SINGLE_USER REPAIR_ALLOW_DATA_LOSS, REPAIR_FAST ve REPAIR_REBUILD seçeneklerine sahip DBCC CHECKDB kullanılamaz. Bkz. ALTER DATABASE farkları. Olası veritabanı bozulması, Azure desteği ekibi tarafından işlenir. Veritabanı bozulmasına dair bir gösterge varsa Azure desteği başvurun.

Dağıtılmış işlemler

Dağıtılmış işlemler için kısmi destek şu anda genel önizleme aşamasındadır. Dağıtılmış işlemler aşağıdaki koşullarda desteklenir (bunların tümü karşılanmalıdır):

  • tüm işlem katılımcıları, Sunucu güven grubunun parçası olan Yönetilen Örnekler Azure SQL.
  • işlemler .NET (TransactionScope sınıfı) veya Transact-SQL'den başlatılır.

Azure SQL Yönetilen Örneği şu anda şirket içi veya Azure Sanal Makineler MSDTC tarafından düzenli olarak desteklenen diğer senaryoları desteklememektedir.

Genişletilmiş Olaylar

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

  • Hedef etw_classic_sync desteklenmiyor. Dosyaları Azure Blob depolama alanında depolayın .xel . Bkz. etw_classic_sync hedefi.
  • Hedef event_file desteklenmiyor. Dosyaları Azure Blob depolama alanında depolayın .xel . 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'de Machine Learning Services (önizleme).

Filestream ve FileTable

  • Dosya akışı verileri desteklenmez.
  • Veritabanı veri içeren FILESTREAM dosya grupları içeremez.
  • FILETABLE desteklenmez.
  • Tablolarda 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'deki bağlı sunucular sınırlı sayıda hedefi destekler:

  • Desteklenen hedefler SQL Yönetilen Örneği, SQL Veritabanı, SQL sunucusuz ve ayrılmış havuzları Azure Synapse ve SQL Server örnekleridir.
  • Dağıtılmış yazılabilir işlemler yalnızca SQL Yönetilen Örnekleri arasında mümkündür. Daha fazla bilgi için bkz. Dağıtılmış İşlemler. Ancak MS DTC desteklenmez.
  • 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 ya da Azure Synapse Analytics'te sunucusuz sql havuzu kullanarak dosyaları yükleyin.

İşlemler:

  • Örnekler arası yazma işlemleri yalnızca SQL Yönetilen Örnekleri için desteklenir.
  • sp_dropserver bağlı sunucuyu bırakmak için desteklenir. bkz. sp_dropserver.
  • OPENROWSET işlevi yalnızca SQL Server örneklerde 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 örneklerde sorgu yürütmek için kullanılabilir. Bunlar yönetilebilir, şirket içinde veya sanal makinelerde kullanılabilir. SQLNCLISağlayıcı olarak yalnızca , SQLNCLI11ve SQLOLEDB değerleri desteklenir. SELECT * FROM OPENDATASOURCE('SQLNCLI', '...').AdventureWorks2012.HumanResources.Employee bunun bir örneğidir. Bkz. OPENDATASOURCE.
  • 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ğlantı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 Azure AD 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 depolanan dosyalardan gelen verilere yönelik Transact-SQL (T-SQL) sorguları yürütmenizi ve birleştirmeleri kullanarak yerel olarak depolanan ilişkisel verilerle birleştirmenizi sağlar. 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ırabilirsiniz. PolyBase hakkında genel bilgi için bkz. PolyBase.

Ç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 genel önizleme 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 son sürümleriyle iletişim kurabilir. Daha fazla bilgi için desteklenen sürümler matrisini inceleyin.
    • İş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 ONLY
    • RESTORE HEADER ONLY
    • RESTORE LABELONLY ONLY
    • RESTORE VERIFYONLY ONLY
  • Desteklenmeyen söz dizimi:
    • RESTORE LOG ONLY
    • RESTORE REWINDONLY ONLY
  • Kaynak:
    • FROM URL (Azure Blob depolama) desteklenen tek seçenektir.
    • FROM DISK/TAPE/backup cihazı desteklenmiyor.
    • Yedekleme kümeleri desteklenmez.
  • WITH seçenekleri desteklenmez. , , STATS, REPLACEvb. WITH gibi DIFFERENTIALgeri yükleme girişimleri başarısız olur.
  • ASYNC RESTORE: İstemci bağlantısı kopsa bile geri yükleme devam eder. Bağlantınız bırakılırsa, geri yükleme işleminin sys.dm_operation_status durumunu ve CREATE ve DROP veritabanının görünümünü de kontrol edebilirsiniz. bkz. sys.dm_operation_status.

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 SIMPLE bir veritabanında veya BULK_LOGGED kurtarma modundaysa.
  • 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çenekler olarak MULTI_USERdönüştürülür.

Sınırlamalar:

  • Bozuk veritabanlarının yedekleri 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 yedeklemeyi WITH CHECKSUM kullandığınızdan emin olun.
  • .BAK Bu belgede açıklanan sınırlamaları (örneğin, nesneler) FILETABLE içeren bir veritabanının dosyasının FILESTREAM 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ını içeren yedeklemeler Genel Amaçlı bir örneğe 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 örneğe 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'den büyük Genel Amaçlı veritabanı İş Açısından Kritik örnekte geri yüklenemez. bellek içi OLTP dosyalarına veya 280'den fazla dosyaya sahip İş 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 Örnekler arasında desteklenir:

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

Aktarım güvenliği desteklenir, iletişim kutusu güvenliği şu şekilde değildir:

  • 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

  • NATIVE_COMPILATIONGenel Amaçlı katmanında desteklenmez.
  • Aşağıdaki sp_configure seçenekleri desteklenmez:
    • allow polybase export
    • allow updates
    • filestream_access_level
    • remote access
    • remote data archive
    • remote proc trans
    • scan for startup procs
  • Aşağıdaki sp_configure seçenekleri yoksayılır ve hiçbir etkisi yoktur:
    • Ole Automation Procedures
  • sp_execute_external_scriptsyalnızca SQL MI için Machine Learning Services için desteklenir, aksi takdirde sp_execute_external_scripts SQL Yönetilen Örneği için desteklenmez. bkz. sp_execute_external_scripts.
  • xp_cmdshell desteklenmez. bkz. xp_cmdshell.
  • Extended stored proceduresdesteklenmez ve buna ve sp_dropextendedprocdahildirsp_addextendedproc. bu işlev, SQL Server için kullanımdan kaldırma yolunda olduğundan desteklenmez. Daha fazla bilgi için bkz. Genişletilmiş Saklı Yordamlar.
  • sp_attach_db, sp_attach_single_file_dbve sp_detach_db desteklenmez. Bkz. sp_attach_db, sp_attach_single_file_db ve sp_detach_db.

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 mevcut 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.
  • @@SERVICENAMESQL 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. Azure AD 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ğ yeterli sayıda kullanılabilir IP adresine sahip 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 - VNet için Klasik Model desteklenmez.
  • bir SQL Yönetilen Örneği oluşturulduktan sonra, SQL Yönetilen Örneği veya sanal ağı başka bir kaynak grubuna veya aboneliğe taşımak desteklenmez.
  • 22 Eylül 2020'ye kadar oluşturulan sanal kümelerde barındırılan SQL Yönetilen Örnekleri için genel eşleme 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ğımlı olan senaryolar ikincil örnekte mümkün olmayacaktır.

TEMPDB

  • Sistem veritabanının tempdb dosya boyutu üst sınırı, Genel Amaçlı katmanında çekirdek başına 24 GB'tan büyük olamaz. İş Açısından Kritik katmanındaki boyut üst tempdb sınırı, SQL Yönetilen Örneği depolama boyutuyla sınırlıdır. Tempdbgünlük dosyası boyutu, Genel Amaçlı katmanında 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 üretirse hata döndürebilir.
  • Tempdb her zaman 12 veri dosyasına bölünür: ana dosya, veri dosyası ve birincil olmayan 11 veri dosyası olarak da adlandırılan 1 birincil. 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 veriler desteklenmez.
  • Model veritabanında oluşturulan nesneler, ilk nesne listesini model veritabanından almadığından yeniden başlatma veya yük devretme tempdb sonrasında içinde otomatik olarak oluşturulamaztempdb. Her yeniden başlatma veya yük devretme işleminden sonra içinde tempdb nesneleri el ile oluşturmanız gerekir.

MSDB

SQL Yönetilen Örneği'daki msdb sistem veritabanındaki aşağıdaki şemaların ilgili önceden tanımlanmış rollerine sahip 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ılandığı anda önceden tanımlanmış değerlere veya normal hizmet işlemini 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).

Sonraki adımlar