SQL Server & Azure SQL Yönetilen Örneği arasındaki T-SQL farkları
Ş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 çoğu özellik SQL Yönetilen Örneği'nde desteklenir.
SQL Yönetilen Örneği'nde sunulan 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:
- Kullanılabilirlik, Always On Kullanılabilirlik Grupları ve yedeklemeleri arasındaki farkları içerir.
- Güvenlik denetim, sertifikalar, kimlik bilgileri, şifreleme sağlayıcıları, oturum açma bilgileri ve kullanıcılar ile hizmet anahtarı ile hizmet ana anahtarı arasındaki farkları içerir.
- Yapılandırma arabellek havuzu uzantısı, harmanlama, uyumluluk düzeyleri, veritabanı yansıtması, veritabanı seçenekleri, SQL Server Aracısı ve tablo seçenekleri arasındaki farkları içerir.
- İşlevler TOPLU INSERT/OPENROWSET, CLR, DBCC, dağıtılmış işlemler, genişletilmiş olaylar, dış kitaplıklar, dosya akışı ve FileTable, tam metin AnlamSal Arama, bağlı sunucular, PolyBase, Çoğaltma, GERI YÜKLEME, Hizmet Aracısı, saklı yordamlar, işlevler ve tetikleyiciler içerir.
- Sanal ağlar ve alt ağ yapılandırmaları gibi ortam ayarları .
Bu özelliklerin çoğu mimari kısıtlamalardır ve hizmet özelliklerini temsil eder.
SQL Yönetilen Örneği'nde 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'ne yerleşiktir ve kullanıcılar tarafından denetlenemez. Aşağıdaki deyimler desteklenmez:
- UÇ NOKTA OLUŞTUR... FOR DATABASE_MIRRORING
- KULLANıLABILIRLIK GRUBU OLUŞTURMA
- ALTER AVAILABILITY GROUP
- DROP KULLANıLABILIRLIK GRUBU
- ALTER DATABASE deyiminin SET HADR yan tümcesi
Backup
Azure SQL Yönetilen Örneği otomatik yedeklemelere sahiptir, böylece kullanıcılar tam veritabanı COPY_ONLY
yedeklemeleri oluşturabilir. 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
,TAPE
ve yedekleme cihazları desteklenmez.
- Yalnızca
- Genel
WITH
seçeneklerin çoğu desteklenir.COPY_ONLY
zorunludur.FILE_SNAPSHOT
veCREDENTIAL
desteklenmez.- Bant seçenekleri:
REWIND
,NOREWIND
,UNLOAD
veNOUNLOAD
desteklenmez. - Günlüğe özgü seçenekler:
NORECOVERY
,STANDBY
veNO_TRUNCATE
desteklenmez.
Sınırlamalar:
SQL Yönetilen Örneği ile örnek veritabanını 32'ye kadar ş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ütemezsiniz
BACKUP 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.SQL Yönetilen Örneğinde alınan yerel yedeklemeler yalnızca SQL Server 2022 örneğine geri yüklenebilir. Bunun nedeni, SQL Yönetilen Örneği'nin 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 BKz . SQL Yönetilen Örneği veritabanı yedeklemesini SQL Server 2022'ye geri yükleme.
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'nde komutunu kullanarak
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.Bahşiş
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 yedekleyinURL
. - Yedekleme dosyalarını Blob depolamaya yükleyin.
- SQL Yönetilen Örneğine geri yükleme.
Restore
SQL Yönetilen Örneği'ndeki 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.- yedeklemek
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'nde 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 dizimiTO URL
sağlanır. - SQL Yönetilen Örneği Windows dosya paylaşımları'na erişemediğinden söz dizimi
TO FILE
desteklenmez.
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ı
CREATE
ASSEMBLY
/BACKUP
FILE
/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>)
Kimlik Bilgisi
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:
CREATE CRYPTOGRAPHIC PROVIDER
desteklenmez. Bkz . ŞIFRELEME SAĞLAYıCıSı OLUŞTURMA.ALTER CRYPTOGRAPHIC PROVIDER
desteklenmez. Bkz . ALTER CRYPTOGRAPHIC PROVIDER.
Oturum açma bilgileri ve kullanıcılar
,
FROM ASYMMETRIC KEY
veFROM SID
kullanılarakFROM CERTIFICATE
oluş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 dizimi
CREATE USER [AADUser/AAD group] FROM EXTERNAL PROVIDER
ile Azure AD veritabanı sorumlularını destekler. Bu özellik, Azure AD içeren 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.Bazı özellikler, örnekler arası etkileşimde Azure AD sunucu sorumlularının (oturum açma bilgileri) kullanımını desteklemez, yalnızca bir SQL Yönetilen Örneği içinde kullanılabilir. Bu tür bir özelliğe örnek olarak SQL çoğaltması yer alır. Ancak bağlı sunucu özelliği, Azure AD sunucu sorumlularını (oturum açma bilgileri) kullanarak örnekler arası kimlik doğrulamayı destekler.
Veritabanı sahibi olarak bir Azure AD grubuna eşlenmiş bir Azure AD oturum açma bilgisi ayarlanması desteklenmez. Oturum açma bilgileri veritabanında oluşturulmamış olsa bile Azure AD grubunun bir üyesi veritabanı sahibi olabilir.
Execute AS yan tümcesi gibi diğer Azure AD sorumlularını kullanarak Azure AD sunucu düzeyi sorumlularını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. 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ırEXEC AS USER = myAadUser
. Azure AD sunucu sorumlusundan (oturum açma) bir USER oluşturduğunuzda, LOGIN'ten aynı login_name user_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:- 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 Azure AD sunucu sorumlusuna (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ı kullanılarak veritabanı dışarı/içeri aktarma, SQL Yönetilen Örneği'ndeki Azure AD kullanıcıları için SSMS V18.4 veya üzeri ya da SqlPackage kullanılarak 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'nden dışarı aktarın ve aynı Azure AD etki alanı içindeki SQL Veritabanı'na aktarın.
- Veritabanını SQL Veritabanı'ndan dışarı aktarın ve aynı Azure AD etki alanındaki SQL Yönetilen Örneği'ne aktarın.
- VERITABANıNı SQL Yönetilen Örneği'nden 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ü ve
SQL
içindesys.database_principals
olduğu gibiSQL_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.
- 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ü ve
- Veritabanı bacpac dosyası kullanılarak aşağıdaki yapılandırmalar desteklenir:
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
sysadmin
gibisecurityadmin
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 veritabanında Azure AD sunucu sorumluları (oturum açma bilgileri)master
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'nin üyesi olmalıdır.
Azure AD sunucu sorumluları (oturum açma bilgileri), SQL Server Management Studio 18.0 önizleme 5 sürümünden başlayarak Nesne Gezgini'nde 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:
- Azure AD hesabı doğrudan Azure AD sunucu sorumlusuyla (oturum açma) eşlenmiş olarak mevcutsa ve "E" türü olarak mevcutsa
sys.server_principals
, Azure AD sunucu sorumlusunun (oturum açma) erişim izni verin ve izinleri uygulayın. - Azure AD hesabı, "X" türü olarak mevcut
sys.server_principals
olan Azure AD sunucu sorumlusuna (oturum açma) eşlenmiş bir Azure AD grubunun üyesiyse, Erişim izni verin ve Azure AD grubu oturum açma iznini uygulayın. - Azure AD hesabı veritabanındaki bir Azure AD kullanıcısına doğrudan eşlenmiş olarak mevcutsa ve "E" türü olarak mevcutsa
sys.database_principals
, Azure AD veritabanı kullanıcısının erişim izni verin ve izinleri uygulayın. - Azure AD hesabı, veritabanındaki bir Azure AD kullanıcısına eşlenmiş bir Azure AD grubunun üyesiyse ve "X" türü olarak mevcutsa
sys.database_principals
, Azure AD grup kullanıcısına erişim verin ve izinleri uygulayın.
- Azure AD hesabı doğrudan Azure AD sunucu sorumlusuyla (oturum açma) eşlenmiş olarak mevcutsa ve "E" türü olarak mevcutsa
Hizmet anahtarı ve hizmet ana anahtarı
- Ana anahtar yedekleme desteklenmez (SQL Veritabanı hizmeti tarafından yönetilir).
- Ana anahtar geri yükleme desteklenmez (SQL Veritabanı hizmeti tarafından yönetilir).
- Hizmet ana anahtarı yedekleme desteklenmez (SQL Veritabanı hizmeti tarafından yönetilir).
- Hizmet ana anahtarı geri yükleme desteklenmez (SQL Veritabanı hizmeti tarafından yönetilir).
Yapılandırma
Arabellek havuzu uzantısı
- Arabellek havuzu uzantısı desteklenmez.
ALTER SERVER CONFIGURATION SET BUFFER POOL EXTENSION
desteklenmez. Bkz. ALTER SERVER CONFIGURATION.
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
veSET 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ı, dosya akışı verileri 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 DATABASE
geç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.Bahşiş
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ı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 Aracısı'nın etkinleştirilmesi ve devre dışı bırakılması şu anda SQL Yönetilen Örneği'nde 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'nde 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ı Posta profili yapılandırmanız gerekir. SQL Server Aracısı yalnızca bir Veritabanı Posta profili kullanabilir ve çağrılmalıdır
AzureManagedInstance_dbmail_profile
.- Pager desteklenmez.
- NetSend desteklenmez.
- Uyarılar henüz desteklenmiyor.
- Proxy'ler desteklenmez.
- EventLog desteklenmez.
- SQL Aracısı işlerini oluşturmak, değiştirmek veya yürütmek için kullanıcının azure AD sunucu sorumlusuna (oturum açma) doğrudan 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 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 Aracısı hakkında bilgi için bkz . SQL Server Aracısı.
Tablolar
Aşağıdaki tablo türleri desteklenmez:
- FILESTREAM
- FİLETABLE
- EXTERNAL TABLE (PolyBase dışında)
- MEMORY_OPTIMIZED (yalnızca Genel Amaçlı katmanda 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 komuttaBULK INSERT
gereklidir. Bkz. TOPLU EKLEME.DATASOURCE
işlevindeOPENROWSET
, Azure Blob depolamadan bir dosyanın içeriğini okuduğunuzda gereklidir. Bkz. OPENROWSET.OPENROWSET
Azure 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
parametresini kullanarak @file_attachments ek gönderemiyor. Yerel dosya sistemi ve dış paylaşımlar veya Azure Blob Depolama'ya 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'nde 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ığı
SINGLE_USER
için dbcc checkdb ve REPAIR_ALLOW_DATA_LOSS, REPAIR_FAST ve REPAIR_REBUILD seçenekleri kullanılamaz. Bkz. ALTER DATABASE differences. Olası veritabanı bozulması, Azure destek ekibi tarafından işlenir. Veritabanı bozulmasıyla ilgili herhangi bir gösterge varsa Azure desteğine başvurun.
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 örnekler ile diğer katılımcılar arasındaki dağıtılmış işlemler ve daha fazlası gibi diğer senaryolar, genel önizlemede sunulan 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'nde Machine Learning Services (önizleme).
Filestream ve FileTable
- Dosya akışı 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.
Tam Metin AnlamSal Arama
AnlamSal Arama desteklenmez.
Bağlı sunucular
SQL Yönetilen Örneği'ndeki 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. Azure Blob Depolama'dan
BULK INSERT
yerel CSV içeri aktarma özelliğini kullanarak veyaOPENROWSET
dosya içeri aktarmaya alternatif olarak kullanmayı deneyin ya da Azure Synapse Analytics'te sunucusuz sql havuzu kullanarak dosyaları yükleyin.
İşlemler:
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.SQLNCLI
Sağlayıcı olarak yalnızca ,SQLNCLI11
,SQLOLEDB
veMSOLEDBSQL
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'dan 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 Bildirimi öğesinde bu istekleri izleyin
Azure SQL Yönetilen Örneği'ne bağlı sunucular SQL kimlik doğrulama ve Azure AD kimlik doğrulamalarını destekler.
PolyBase
Azure SQL Yönetilen Örneği ile veri sanallaştırma, Azure Data Lake Storage 2. Nesil veya Azure Blob Depolama'da depolanan dosyalardan gelen verilere karşı 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 OPENJSON
kullanarak 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 Storage (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 , SQL Yönetilen Örneği için bazı kısıtlamalarla kullanılabilir:
- Her tür çoğaltma katılımcısı (Yayımcı, Dağıtımcı, Çekme Abonesi ve Anında İletme Abonesi) SQL Yönetilen Örneği'ne 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:
- SQL MI yayımcısı ile SQL MI abonesi arasında çoğaltma
- SQL MI yayımcısı, SQL MI dağıtımcısı ve SQL Server abonesi arasında çoğaltma
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
,REPLACE
ve benzeri gibiDIFFERENTIAL
WITH
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'nde 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 arka planda veritabanını 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 varsaAUTO_CLOSE=ON
.RECOVERY FULL
.bak dosyasındakiSIMPLE
bir veritabanında veyaBULK_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
veRESTRICTED_USER
seçenekleri olarakMULTI_USER
dönüştürülür.
Sınırlamalar:
- Bozuk veritabanlarının yedekleri bozulmanın 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'nde çalıştırdığınızdan
DBCC CHECKDB
ve yedeklemeWITH 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ınFILESTREAM
geri yüklenmesi SQL Yönetilen Örneği'ne 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 örneğine 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ğinde 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 alışverişi yalnızca Azure SQL Yönetilen Örnekleri arasında desteklenir:
CREATE ROUTE
: Başka bir SQL Yönetilen Örneğinin veya DNS adının dışındaLOCAL
bir adlaADDRESS
kullanamazsınızCREATE ROUTE
. Bağlantı noktası her zaman 4022'dir.ALTER ROUTE
: Başka bir SQL Yönetilen Örneğinin veya DNS adının dışındaLOCAL
bir adlaADDRESS
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 BINDING
Desteklenmez.
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_COMPILATION
Genel 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_scripts
yalnızca SQL MI için Machine Learning Services için desteklenir, aksi takdirde SQL Yönetilen Örneği için sp_execute_external_scripts desteklenmez. Bkz. sp_execute_external_scripts.xp_cmdshell
desteklenmez. Bkz. xp_cmdshell.Extended stored procedures
desteklenmez ve buna vesp_dropextendedproc
dahildirsp_addextendedproc
. SQL Server için kullanımdan kaldırma yolunda olduğundan bu işlev desteklenmez. Daha fazla bilgi için bkz . Genişletilmiş Saklı Yordamlar.sp_attach_db
,sp_attach_single_file_db
vesp_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 sql yönetilen örneğini 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 gibimyinstance.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. Azure AD oturum açma bilgisi içindesys.syslogins
değ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ğinizi 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ğ 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 boyut üsttempdb
sınırı 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'tantempdb
fazla günlük verisi üretiyorsa hata döndürebilir. Tempdb
her zaman 12 veri dosyasına ayrılır: ana dosya, veri dosyası ve 11 birincil olmayan veri dosyası olarak da adlandırılan 1 birincil. Dosya yapısı değiştirilemez ve yeni dosyalar öğesinetempdb
eklenemez.- 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
işleminden sonra içinde otomatik olarak oluşturulamaztempdb
. Her yeniden başlatma veya yük devretme işleminden sonra içinde el ile nesnelertempdb
oluşturmanız gerekir.
MSDB
SQL Yönetilen Örneği'ndeki msdb
sistem veritabanındaki aşağıdaki şemaların ilgili önceden tanımlanmış rollerine sahip olması gerekir:
- Genel roller
- TargetServersRole
- Veritabanı rolleri düzeltildi
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
- DatabaseMail rolleri:
- Databasemailuserrole
- Tümleştirme hizmetleri rolleri:
- Db_ssisadmin
- Db_ssisltduser
- db_ssisoperator
Ö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, hata günlüklerine ayrıntılı bilgiler 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 Örnek uzantısı (önizleme).
Tutulan hata günlüklerinin sayısını değiştirmek desteklenmez.
Sonraki adımlar
- SQL Yönetilen Örneği hakkında daha fazla bilgi için bkz . SQL Yönetilen Örneği nedir?
- Özellikler ve karşılaştırma listesi için bkz . Azure SQL Yönetilen Örneği özellik karşılaştırması.
- Sürüm güncelleştirmeleri için bkz. Yenilikler.
- Sorunlar, geçici çözümler ve çözümler için bkz . Bilinen sorunlar.
- Yeni bir SQL Yönetilen Örneği oluşturma adımlarını gösteren hızlı başlangıç için bkz . SQL Yönetilen Örneği Oluşturma.