Unterschiede bei T-SQL zwischen SQL Server und Azure SQL Managed InstanceT-SQL differences between SQL Server & Azure SQL Managed Instance

GILT FÜR: JaAzure SQL Managed Instance APPLIES TO: yesAzure SQL Managed Instance

In diesem Artikel werden die Unterschiede in der Syntax und dem Verhalten zwischen Azure SQL Managed Instance und SQL Server zusammengefasst und erläutert.This article summarizes and explains the differences in syntax and behavior between Azure SQL Managed Instance and SQL Server.

SQL Managed Instance bietet hohe Kompatibilität mit der SQL Server-Datenbank-Engine, und die meisten Features werden in SQL Managed Instance unterstützt.SQL Managed Instance provides high compatibility with the SQL Server database engine, and most features are supported in a SQL Managed Instance.

Migration

Es gibt einige PaaS-Einschränkungen, die in SQL Managed Instance eingeführt werden, und einige Verhaltensänderungen im Vergleich zu SQL Server.There are some PaaS limitations that are introduced in SQL Managed Instance and some behavior changes compared to SQL Server. Die Unterschiede sind in die folgenden Kategorien unterteilt: The differences are divided into the following categories:

Die meisten dieser Features sind architekturbezogene Einschränkungen und stellen Dienstfeatures dar.Most of these features are architectural constraints and represent service features.

Temporäre bekannte Probleme, die in SQL Managed Instance erkannt wurden und in Zukunft behoben werden, sind in den Versionshinweisen beschrieben.Temporary known issues that are discovered in SQL Managed Instance and will be resolved in the future are described in release notes page.

VerfügbarkeitAvailability

Always On-VerfügbarkeitsgruppenAlways On Availability Groups

Hochverfügbarkeit ist in SQL Managed Instance integriert und kann von Benutzern nicht gesteuert werden.High availability is built into SQL Managed Instance and can't be controlled by users. Folgende Anweisungen werden nicht unterstützt:The following statements aren't supported:

BackupBackup

In SQL Managed Instance werden automatische Sicherungen durchgeführt, sodass Benutzer vollständige COPY_ONLY-Sicherungen für Datenbanken erstellen können.SQL Managed Instance has automatic backups, so users can create full database COPY_ONLY backups. Differenzielle, Protokoll- und Dateimomentaufnahme-Sicherungen werden nicht unterstützt.Differential, log, and file snapshot backups aren't supported.

  • Bei SQL Managed Instance können Sie eine Instanzdatenbank nur in einem Azure Blob Storage-Konto sichern:With a SQL Managed Instance, you can back up an instance database only to an Azure Blob storage account:
    • Nur BACKUP TO URL wird unterstützt.Only BACKUP TO URL is supported.
    • FILE, TAPE und Sicherungsmedien werden nicht unterstützt.FILE, TAPE, and backup devices aren't supported.
  • Die meisten allgemeinen WITH-Optionen werden unterstützt.Most of the general WITH options are supported.
    • COPY_ONLY ist obligatorisch.COPY_ONLY is mandatory.
    • FILE_SNAPSHOT wird nicht unterstützt.FILE_SNAPSHOT isn't supported.
    • Bandoptionen: REWIND, NOREWIND, UNLOAD und NOUNLOAD werden nicht unterstützt.Tape options: REWIND, NOREWIND, UNLOAD, and NOUNLOAD aren't supported.
    • Protokollspezifische Optionen: NORECOVERY, STANDBY und NO_TRUNCATE werden nicht unterstützt.Log-specific options: NORECOVERY, STANDBY, and NO_TRUNCATE aren't supported.

Einschränkungen:Limitations:

  • Bei SQL Managed Instance können Sie eine Instanzdatenbank in einer Sicherung mit bis zu 32 Stripes sichern. Dies ist ausreichend für Datenbanken mit bis zu 4 TB, wenn die Sicherungskomprimierung verwendet wird.With a SQL Managed Instance, you can back up an instance database to a backup with up to 32 stripes, which is enough for databases up to 4 TB if backup compression is used.

  • Sie können BACKUP DATABASE ... WITH COPY_ONLY nicht in einer Datenbank ausführen, die mit vom Dienst verwalteter Transparent Data Encryption (TDE) verschlüsselt ist.You can't execute BACKUP DATABASE ... WITH COPY_ONLY on a database that's encrypted with service-managed Transparent Data Encryption (TDE). Die vom Dienst verwaltete TDE erzwingt die Verschlüsselung von Sicherungen mit einem internen TDE-Schlüssel.Service-managed TDE forces backups to be encrypted with an internal TDE key. Der Schlüssel kann nicht exportiert werden, daher können Sie die Sicherung nicht wiederherstellen.The key can't be exported, so you can't restore the backup. Verwenden Sie automatische Sicherungen und die Point-in-Time-Wiederherstellung, oder verwenden Sie stattdessen vom Kunden verwaltete Transparent Data Encryption – BYOK (Bring Your Own Key).Use automatic backups and point-in-time restore, or use customer-managed (BYOK) TDE instead. Sie können die Verschlüsselung für die Datenbank auch deaktivieren.You also can disable encryption on the database.

  • Die maximale Stripegröße für Sicherungen mit dem Befehl BACKUP in SQL Managed Instance beträgt 195 GB. Dies ist die maximale Blobgröße.The maximum backup stripe size by using the BACKUP command in SQL Managed Instance is 195 GB, which is the maximum blob size. Erhöhen Sie die Streifenanzahl im Backup-Befehl, um die einzelne Streifengröße zu reduzieren und innerhalb dieser Einschränkungen zu bleiben.Increase the number of stripes in the backup command to reduce individual stripe size and stay within this limit.

    Tipp

    Um diese Einschränkung beim Sichern einer Datenbank von SQL Server in einer lokalen Umgebung oder auf einem virtuellen Computer zu umgehen, haben Sie folgende Möglichkeiten:To work around this limitation, when you back up a database from either SQL Server in an on-premises environment or in a virtual machine, you can:

    • Führen Sie die Sicherung mit DISK anstatt mit URL aus.Back up to DISK instead of backing up to URL.
    • Laden Sie die Sicherungsdateien in Blob Storage hoch.Upload the backup files to Blob storage.
    • Stellen Sie die Daten in SQL Managed Instance wieder her.Restore into SQL Managed Instance.

    Der Befehl Restore in SQL Managed Instance unterstützt höhere Blobgrößen in den Sicherungsdateien, da für die Speicherung der hochgeladenen Sicherungsdateien ein anderer Blobtyp verwendet wird.The Restore command in SQL Managed Instance supports bigger blob sizes in the backup files because a different blob type is used for storage of the uploaded backup files.

Informationen zu Sicherungen mithilfe von T-SQL finden Sie unter BACKUP.For information about backups using T-SQL, see BACKUP.

SicherheitSecurity

ÜberwachungAuditing

Die wichtigsten Unterschiede zwischen der Überwachung in Microsoft Azure SQL-Datenbank und SQL Server sind:The key differences between auditing in Microsoft Azure SQL and in SQL Server are:

  • Bei SQL Managed Instance erfolgt die Überwachung auf Serverebene.With SQL Managed Instance, auditing works at the server level. Die .xel-Protokolldateien werden in Azure Blob Storage gespeichert.The .xel log files are stored in Azure Blob storage.
  • In Azure SQL-Datenbank erfolgt die Überwachung auf Datenbankebene.With Azure SQL Database, auditing works at the database level. Die .xel-Protokolldateien werden in Azure Blob Storage gespeichert.The .xel log files are stored in Azure Blob storage.
  • Bei SQL Server-Instanz erfolgt die Überwachung lokaler oder virtueller Computer auf Serverebene.With SQL Server, on-premises or in virtual machines, auditing works at the server level. Ereignisse werden in Dateisystem- oder Windows-Ereignisprotokollen gespeichert.Events are stored on file system or Windows event logs.

Die XEvent-Überwachung in SQL Managed Instance unterstützt Azure Blob Storage-Ziele.XEvent auditing in SQL Managed Instance supports Azure Blob storage targets. Dateiprotokolle und Windows-Protokolle werden nicht unterstützt.File and Windows logs aren't supported.

Wichtigste Unterschiede in der Syntax von CREATE AUDIT zur Überwachung in Azure Blob Storage:The key differences in the CREATE AUDIT syntax for auditing to Azure Blob storage are:

  • Mit der neuen Syntax TO URL können Sie die URL des Azure Blob Storage-Containers angeben, in dem die .xel-Dateien gespeichert werden.A new syntax TO URL is provided that you can use to specify the URL of the Azure Blob storage container where the .xel files are placed.
  • Die Syntax TO FILE wird nicht unterstützt, da SQL Managed Instance nicht auf Windows-Dateifreigaben zugreifen kann.The syntax TO FILE isn't supported because SQL Managed Instance can't access Windows file shares.

Weitere Informationen finden Sie unterFor more information, see:

ZertifikateCertificates

SQL Managed Instance kann nicht auf Dateifreigaben und Windows-Ordner zugreifen. Daher gelten folgende Einschränkungen:SQL Managed Instance can't access file shares and Windows folders, so the following constraints apply:

  • Die CREATE FROM/BACKUP TO-Datei wird für Zertifikate nicht unterstützt.The CREATE FROM/BACKUP TO file isn't supported for certificates.
  • Das CREATE/BACKUP-Zertifikat aus FILE/ASSEMBLY wird nicht unterstützt.The CREATE/BACKUP certificate from FILE/ASSEMBLY isn't supported. Dateien mit privaten Schlüsseln können nicht verwendet werden.Private key files can't be used.

Siehe CREATE CERTIFICATE und BACKUP CERTIFICATE.See CREATE CERTIFICATE and BACKUP CERTIFICATE.

Problemumgehung: Anstatt eine Sicherung des Zertifikats zu erstellen und die Sicherung wiederherzustellen, rufen Sie den binären Inhalt des Zertifikats und den privaten Schlüssel ab, speichern Sie sie als SQL-Datei, und erstellen Sie Folgendes aus den Binärdaten:Workaround: Instead of creating backup of certificate and restoring the backup, get the certificate binary content and private key, store it as .sql file, and create from binary:

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

AnmeldeinformationenCredential

Nur Azure Key Vault- und SHARED ACCESS SIGNATURE-Identitäten werden unterstützt.Only Azure Key Vault and SHARED ACCESS SIGNATURE identities are supported. Windows-Benutzer werden nicht unterstützt.Windows users aren't supported.

Siehe CREATE CREDENTIAL und ALTER CREDENTIAL.See CREATE CREDENTIAL and ALTER CREDENTIAL.

KryptografieanbieterCryptographic providers

SQL Managed Instance kann nicht auf Dateien zugreifen. Daher können keine Kryptografieanbieter erstellt werden:SQL Managed Instance can't access files, so cryptographic providers can't be created:

Anmeldungen und BenutzerLogins and users

  • Mithilfe von FROM CERTIFICATE, FROM ASYMMETRIC KEY und FROM SID erstellte SQL-Anmeldungen werden unterstützt.SQL logins created by using FROM CERTIFICATE, FROM ASYMMETRIC KEY, and FROM SID are supported. Siehe CREATE LOGIN.See CREATE LOGIN.

  • Azure Active Directory-Dienstprinzipale (Anmeldungen), die mit der Syntax CREATE LOGIN oder der Syntax CREATE USER FROM LOGIN [Azure AD-Anmeldung] erstellt wurden, werden unterstützt.Azure Active Directory (Azure AD) server principals (logins) created with the CREATE LOGIN syntax or the CREATE USER FROM LOGIN [Azure AD Login] syntax are supported. Diese Anmeldungen werden auf Serverebene erstellt.These logins are created at the server level.

    SQL Managed Instance unterstützt Azure AD-Datenbankprinzipale mit der Syntax CREATE USER [AADUser/AAD group] FROM EXTERNAL PROVIDER.SQL Managed Instance supports Azure AD database principals with the syntax CREATE USER [AADUser/AAD group] FROM EXTERNAL PROVIDER. Dieses Feature wird auch als Azure AD-Benutzer für eigenständige Datenbanken bezeichnet.This feature is also known as Azure AD contained database users.

  • Windows-Anmeldungen, die mit der Syntax CREATE LOGIN ... FROM WINDOWS erstellt wurden, werden nicht unterstützt.Windows logins created with the CREATE LOGIN ... FROM WINDOWS syntax aren't supported. Verwenden Sie Azure Active Directory-Anmeldungen und -Benutzer.Use Azure Active Directory logins and users.

  • Der Azure AD-Benutzer, der die Instanz erstellt hat, verfügt über uneingeschränkte Administratorrechte.The Azure AD user who created the instance has unrestricted admin privileges.

  • Azure AD-Benutzer auf Datenbankebene ohne Administratorrechte können mit der Syntax CREATE USER ... FROM EXTERNAL PROVIDER erstellt werden.Non-administrator Azure AD database-level users can be created by using the CREATE USER ... FROM EXTERNAL PROVIDER syntax. Siehe CREATE USER ... FROM EXTERNAL PROVIDER.See CREATE USER ... FROM EXTERNAL PROVIDER.

  • Azure AD-Serverprinzipale (Anmeldungen) unterstützen SQL-Features nur innerhalb einer Instanz von SQL Managed Instance.Azure AD server principals (logins) support SQL features within one SQL Managed Instance only. Funktionen, die eine instanzübergreifende Interaktion erfordern – unabhängig davon, ob innerhalb desselben Azure AD-Mandanten oder in verschiedenen Mandanten –, werden für Azure AD-Benutzer nicht unterstützt.Features that require cross-instance interaction, no matter whether they're within the same Azure AD tenant or different tenants, aren't supported for Azure AD users. Beispiele für solche Funktionen:Examples of such features are:

    • SQL-TransaktionsreplikationSQL transactional replication.
    • LinkserverLink server.
  • Das Festlegen einer Azure AD-Anmeldung, die einer Azure AD-Gruppe zugeordnet ist, als Besitzer der Datenbank wird nicht unterstützt.Setting an Azure AD login mapped to an Azure AD group as the database owner isn't supported.

  • Identitätswechsel von Azure AD-Prinzipalen auf Serverebene unter Verwendung anderer Azure AD-Prinzipale werden unterstützt, z.B. in der EXECUTE AS-Klausel.Impersonation of Azure AD server-level principals by using other Azure AD principals is supported, such as the EXECUTE AS clause. Einschränkung für EXECUTE AS:EXECUTE AS limitations are:

    • EXECUTE AS USER wird für Azure AD-Benutzer nicht unterstützt, wenn der Name sich vom Anmeldenamen unterscheidet.EXECUTE AS USER isn't supported for Azure AD users when the name differs from the login name. Beispiel: Der Benutzer wird über die Syntax CREATE USER [meinAADBenutzer] FROM LOGIN [john@contoso.com] erstellt, und es wird ein Identitätswechsel über EXEC AS USER = meinAADBenutzer versucht.An example is when the user is created through the syntax CREATE USER [myAadUser] FROM LOGIN [john@contoso.com] and impersonation is attempted through EXEC AS USER = myAadUser. Wenn Sie einen Benutzer (USER) auf der Grundlage eines Azure AD-Serverprinzipals (Anmeldung) erstellen, müssen Sie als Benutzernamen den gleichen Anmeldenamen angeben wie in der Anmeldung (LOGIN).When you create a USER from an Azure AD server principal (login), specify the user_name as the same login_name from LOGIN.

    • Die folgenden Vorgänge für Azure AD-Prinzipale können nur von Prinzipalen (Anmeldungen) auf SQL Server-Ebene ausgeführt werden, die der Rolle sysadmin angehören:Only the SQL Server-level principals (logins) that are part of the sysadmin role can execute the following operations that target Azure AD principals:

      • EXECUTE AS USEREXECUTE AS USER
      • EXECUTE AS LOGINEXECUTE AS LOGIN
  • Das Exportieren/Importieren von Datenbanken mithilfe von BACPAC-Dateien wird für Azure AD-Benutzer in SQL Managed Instance per SSMS V18.4 oder höher oder SQLPackage.exe unterstützt.Database export/import using bacpac files are supported for Azure AD users in SQL Managed Instance using either SSMS V18.4 or later, or SQLPackage.exe.

    • Die folgenden Konfigurationen werden mit einer BACPAC-Datei für die Datenbank unterstützt:The following configurations are supported using database bacpac file:
      • Exportieren/Importieren einer Datenbank zwischen verschiedenen verwalteten Instanzen in derselben Azure AD-DomäneExport/import a database between different manage instances within the same Azure AD domain.
      • Exportieren einer Datenbank aus SQL Managed Instance und Importieren in SQL-Datenbank innerhalb derselben Azure AD-DomäneExport a database from SQL Managed Instance and import to SQL Database within the same Azure AD domain.
      • Exportieren einer Datenbank aus SQL-Datenbank und Importieren in SQL Managed Instance innerhalb derselben Azure AD-DomäneExport a database from SQL Database and import to SQL Managed Instance within the same Azure AD domain.
      • Exportieren einer Datenbank aus SQL Managed Instance und Importieren in SQL Server (ab Version 2012).Export a database from SQL Managed Instance and import to SQL Server (version 2012 or later).
        • Bei dieser Konfiguration werden alle Azure AD Benutzer als SQL Server-Datenbankprinzipale (Benutzer) ohne Anmeldungen erstellt.In this configuration all Azure AD users are created as SQL Server database principals (users) without logins. Der Benutzertyp wird als SQL aufgeführt und in sys.database_principals als SQL_USER angezeigt.The type of users are listed as SQL and are visible as SQL_USER in sys.database_principals). Ihre Berechtigungen und Rollen verbleiben in den Metadaten der SQL Server-Datenbank und können für Identitätswechsel verwendet werden.Their permissions and roles remain in the SQL Server database metadata and can be used for impersonation. Sie können jedoch nicht für den Zugriff und die Anmeldung bei SQL Server mithilfe der Anmeldeinformationen verwendet werden.However, they cannot be used to access and log in to the SQL Server using their credentials.
  • Nur die Prinzipalanmeldung auf Serverebene, die vom Bereitstellungsprozess von SQL Managed Instance, von Mitgliedern der Serverrollen (z. B. securityadmin oder sysadmin) oder von anderen Anmeldungen mit der Berechtigung ALTER ANY LOGIN auf Serverebene erstellt wurde, kann Azure AD-Serverprinzipale (Anmeldungen) in der Masterdatenbank für SQL Managed Instance erstellen.Only the server-level principal login, which is created by the SQL Managed Instance provisioning process, members of the server roles, such as securityadmin or sysadmin, or other logins with ALTER ANY LOGIN permission at the server level can create Azure AD server principals (logins) in the master database for SQL Managed Instance.

  • Wenn es sich bei der Anmeldung um einen SQL-Prinzipal handelt, können nur Anmeldungen, die der Rolle sysadmin angehören, den Befehl „create“ verwenden, um Anmeldungen für ein Azure AD-Konto zu erstellen.If the login is a SQL principal, only logins that are part of the sysadmin role can use the create command to create logins for an Azure AD account.

  • Die Azure AD-Anmeldung muss Mitglied einer Azure AD-Instanz im selben Verzeichnis sein, das auch für Azure SQL Managed Instance verwendet wird.The Azure AD login must be a member of an Azure AD within the same directory that's used for Azure SQL Managed Instance.

  • Azure AD-Serverprinzipale (Anmeldungen) werden ab SQL Server Management Studio 18.0 Preview 5 im Objekt-Explorer angezeigt.Azure AD server principals (logins) are visible in Object Explorer starting with SQL Server Management Studio 18.0 preview 5.

  • Das Überlappen von Azure AD-Serverprinzipalen (Anmeldungen) mit einem Azure AD-Administratorkonto ist zulässig.Overlapping Azure AD server principals (logins) with an Azure AD admin account is allowed. Azure AD-Serverprinzipale (Anmeldungen) haben beim Auflösen des Prinzipals und beim Anwenden der Berechtigungen auf SQL Managed Instance Vorrang vor Azure AD-Administratoren.Azure AD server principals (logins) take precedence over the Azure AD admin when you resolve the principal and apply permissions to SQL Managed Instance.

  • Während der Authentifizierung wird die folgende Reihenfolge angewendet, um den authentifizierenden Prinzipal aufzulösen:During authentication, the following sequence is applied to resolve the authenticating principal:

    1. Wenn das Azure AD-Konto direkt dem Azure AD-Serverprinzipal (Anmeldung) zugeordnet ist, der in „sys.server_principals“ als Typ „E“ vorhanden ist, wird der Zugriff gewährt, und die Berechtigungen des Azure AD-Serverprinzipals (Anmeldung) werden angewendet.If the Azure AD account exists as directly mapped to the Azure AD server principal (login), which is present in sys.server_principals as type "E," grant access and apply permissions of the Azure AD server principal (login).
    2. Wenn das Azure AD-Konto Mitglied einer Azure AD-Gruppe ist, die dem Azure AD-Serverprinzipal (Anmeldung) zugeordnet ist – in „sys.server_principals“ als Typ „X“ vorhanden –, wird der Zugriff gewährt, und die Berechtigungen der Azure AD-Gruppenanmeldung werden angewendet.If the Azure AD account is a member of an Azure AD group that's mapped to the Azure AD server principal (login), which is present in sys.server_principals as type "X," grant access and apply permissions of the Azure AD group login.
    3. Wenn das Azure AD-Konto ein spezieller, im Portal konfigurierter Azure AD-Administrator für SQL Managed Instance ist, der in den Systemsichten von SQL Managed Instance nicht vorhanden ist, werden spezielle feste Berechtigungen des Azure AD-Administrators für SQL Managed Instance angewandt (Legacymodus).If the Azure AD account is a special portal-configured Azure AD admin for SQL Managed Instance, which doesn't exist in SQL Managed Instance system views, apply special fixed permissions of the Azure AD admin for SQL Managed Instance (legacy mode).
    4. Wenn das Azure AD-Konto direkt einem Azure AD-Benutzer in einer Datenbank zugeordnet ist, die in „sys.database_principals“ als Typ „E“ vorhanden ist, wird der Zugriff gewährt, und die Berechtigungen des Azure AD-Datenbankbenutzers werden angewendet.If the Azure AD account exists as directly mapped to an Azure AD user in a database, which is present in sys.database_principals as type "E," grant access and apply permissions of the Azure AD database user.
    5. Wenn das Azure AD-Konto Mitglied einer Azure AD-Gruppe ist, die einem Azure AD-Benutzer in einer Datenbank zugeordnet ist – in „sys.database_principals“ als Typ „X“ vorhanden –, wird der Zugriff gewährt, und die Berechtigungen der Azure AD-Gruppenanmeldung werden angewendet.If the Azure AD account is a member of an Azure AD group that's mapped to an Azure AD user in a database, which is present in sys.database_principals as type "X," grant access and apply permissions of the Azure AD group login.
    6. Wenn eine Azure AD-Anmeldung einem Azure AD-Benutzerkonto oder einem Azure AD-Gruppenkonto zugeordnet ist, das zu dem authentifizierenden Benutzer aufgelöst werden kann, werden alle Berechtigungen dieser Azure AD-Anmeldung angewendet.If there's an Azure AD login mapped to either an Azure AD user account or an Azure AD group account, which resolves to the user who's authenticating, all permissions from this Azure AD login are applied.

Dienstschlüssel und DiensthauptschlüsselService key and service master key

KonfigurationConfiguration

PufferpoolerweiterungBuffer pool extension

SortierungCollation

Die standardmäßige Instanzsortierung ist SQL_Latin1_General_CP1_CI_AS, sie kann als Erstellungsparameter angegeben werden.The default instance collation is SQL_Latin1_General_CP1_CI_AS and can be specified as a creation parameter. Siehe Sortierungen.See Collations.

KompatibilitätsgradeCompatibility levels

  • Folgende Kompatibilitätsgrade werden unterstützt: 100, 110, 120, 130, 140 und 150.Supported compatibility levels are 100, 110, 120, 130, 140 and 150.
  • Kompatibilitätsgrade unter 100 werden nicht unterstützt.Compatibility levels below 100 aren't supported.
  • Der standardmäßige Kompatibilitätsgrad für neue Datenbanken ist 140.The default compatibility level for new databases is 140. Bei wiederhergestellten Datenbanken bleibt der Kompatibilitätsgrad unverändert, wenn er zuvor bei 100 und höher lag.For restored databases, the compatibility level remains unchanged if it was 100 and above.

Siehe ALTER DATABASE-Kompatibilitätsgrad.See ALTER DATABASE Compatibility Level.

DatenbankspiegelungDatabase mirroring

Die Datenbankspiegelung wird nicht unterstützt.Database mirroring isn't supported.

  • Die Optionen ALTER DATABASE SET PARTNER und SET WITNESS werden nicht unterstützt.ALTER DATABASE SET PARTNER and SET WITNESS options aren't supported.
  • CREATE ENDPOINT … FOR DATABASE_MIRRORING wird nicht unterstützt.CREATE ENDPOINT … FOR DATABASE_MIRRORING isn't supported.

Weitere Informationen finden Sie unter ALTER DATABASE SET PARTNER und SET WITNESS und CREATE ENDPOINT … FOR DATABASE_MIRRORING.For more information, see ALTER DATABASE SET PARTNER and SET WITNESS and CREATE ENDPOINT … FOR DATABASE_MIRRORING.

DatenbankoptionenDatabase options

  • Mehrere Protokolldateien werden nicht unterstützt.Multiple log files aren't supported.
  • In-Memory-Objekte werden in der Dienstebene „Universell“ nicht unterstützt.In-memory objects aren't supported in the General Purpose service tier.
  • Es gilt ein Grenzwert von 280 Dateien pro universeller Instanz, d.h. maximal 280 Dateien pro Datenbank.There's a limit of 280 files per General Purpose instance, which implies a maximum of 280 files per database. Auf der Dienstebene „Universell“ zählen sowohl Datendateien als auch Protokolldateien für diesen Grenzwert.Both data and log files in the General Purpose tier are counted toward this limit. Die Dienstebene „Unternehmenskritisch“ unterstützt 32.767 Dateien pro Datenbank.The Business Critical tier supports 32,767 files per database.
  • Eine Datenbank darf keine Dateigruppen mit Filestreamdaten enthalten.The database can't contain filegroups that contain filestream data. Es kann keine Wiederherstellung durchgeführt werden, wenn die BAK-Datei FILESTREAM-Daten enthält.Restore fails if .bak contains FILESTREAM data.
  • Jede Datei wird in Azure Blob Storage gespeichert.Every file is placed in Azure Blob storage. E/A und Durchsatz pro Datei hängen von der Größe der jeweiligen Datei ab.IO and throughput per file depend on the size of each individual file.

CREATE DATABASE-AnweisungCREATE DATABASE statement

Für CREATE DATABASE gelten die folgenden Einschränkungen:The following limitations apply to CREATE DATABASE:

  • Dateien und Dateigruppen können nicht definiert werden.Files and filegroups can't be defined.

  • Die CONTAINMENT-Option wird nicht unterstützt.The CONTAINMENT option isn't supported.

  • WITH-Optionen werden nicht unterstützt.WITH options aren't supported.

    Tipp

    Als Problemumgehung können Sie ALTER DATABASE nach CREATE DATABASE verwenden, um Datenbankoptionen zum Hinzufügen von Dateien oder Festlegen der Eigenständigkeit festzulegen.As a workaround, use ALTER DATABASE after CREATE DATABASE to set database options to add files or to set containment.

  • Die FOR ATTACH-Option wird nicht unterstützt.The FOR ATTACH option isn't supported.

  • Die AS SNAPSHOT OF-Option wird nicht unterstützt.The AS SNAPSHOT OF option isn't supported.

Weitere Informationen finden Sie unter CREATE DATABASE.For more information, see CREATE DATABASE.

ALTER DATABASE-AnweisungALTER DATABASE statement

Einige Dateieigenschaften können nicht festgelegt oder geändert werden:Some file properties can't be set or changed:

  • Der Dateipfad kann nicht in der T-SQL-Anweisung ALTER DATABASE ADD FILE (FILENAME='path') angegeben werden.A file path can't be specified in the ALTER DATABASE ADD FILE (FILENAME='path') T-SQL statement. Entfernen Sie FILENAME aus dem Skript, da SQL Managed Instance die Dateien automatisch speichert.Remove FILENAME from the script because SQL Managed Instance automatically places the files.
  • Der Dateiname kann nicht mithilfe der Anweisung ALTER DATABASE geändert werden.A file name can't be changed by using the ALTER DATABASE statement.

Die folgenden Optionen werden standardmäßig festgelegt und können nicht geändert werden:The following options are set by default and can't be changed:

  • MULTI_USER
  • ENABLE_BROKER ON
  • AUTO_CLOSE OFF

Die folgenden Optionen können nicht geändert werden:The following options can't be modified:

  • 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

Weitere Informationen finden Sie unter ALTER DATABASE.For more information, see ALTER DATABASE.

SQL Server-AgentSQL Server Agent

  • Das Aktivieren und Deaktivieren des SQL Server-Agents wird derzeit in SQL Managed Instance nicht unterstützt.Enabling and disabling SQL Server Agent is currently not supported in SQL Managed Instance. Der SQL-Agent wird immer ausgeführt.SQL Agent is always running.
  • SQL Server-Agent-Einstellungen sind schreibgeschützt.SQL Server Agent settings are read only. Die Prozedur sp_set_agent_properties wird in SQL Managed Instance nicht unterstützt.The procedure sp_set_agent_properties isn't supported in SQL Managed Instance.
  • AufträgeJobs
    • T-SQL-Auftragsschritte werden unterstützt.T-SQL job steps are supported.
    • Die folgenden Replikationsaufträge werden unterstützt:The following replication jobs are supported:
      • TransaktionsprotokollleserTransaction-log reader
      • MomentaufnahmeSnapshot
      • VerteilerDistributor
    • SSIS-Auftragsschritte werden unterstützt.SSIS job steps are supported.
    • Andere Arten von Auftragsschritten werden derzeit nicht unterstützt:Other types of job steps aren't currently supported:
      • Der Auftragsschritt für die Mergereplikation wird nicht unterstützt.The merge replication job step isn't supported.
      • Der Warteschlangenleser wird nicht unterstützt.Queue Reader isn't supported.
      • Die Befehlsshell wird noch nicht unterstützt.Command shell isn't yet supported.
    • SQL Managed Instance kann nicht auf externe Ressourcen zugreifen – z. B. auf Netzwerkfreigaben über Robocopy.SQL Managed Instance can't access external resources, for example, network shares via robocopy.
    • SQL Server Analysis Services wird nicht unterstützt.SQL Server Analysis Services isn't supported.
  • Benachrichtigungen werden teilweise unterstützt.Notifications are partially supported.
  • Die E-Mail-Benachrichtigung wird unterstützt. Dazu muss allerdings ein Datenbank-E-Mail-Profil konfiguriert werden.Email notification is supported, although it requires that you configure a Database Mail profile. Der SQL Server-Agent kann nur ein Datenbank-E-Mail-Profil verwenden, für das der Name AzureManagedInstance_dbmail_profile angegeben werden muss.SQL Server Agent can use only one Database Mail profile, and it must be called AzureManagedInstance_dbmail_profile.
    • Pager wird nicht unterstützt.Pager isn't supported.
    • NetSend wird nicht unterstützt.NetSend isn't supported.
    • Warnungen werden noch nicht unterstützt.Alerts aren't yet supported.
    • Proxys werden nicht unterstützt.Proxies aren't supported.
  • EventLog wird nicht unterstützt.EventLog isn't supported.

Die folgenden SQL-Agent-Funktionen werden derzeit nicht unterstützt:The following SQL Agent features currently aren't supported:

  • ProxysProxies
  • Planen von Aufträgen für eine CPU im LeerlaufScheduling jobs on an idle CPU
  • Aktivieren oder Deaktivieren eines AgentsEnabling or disabling an Agent
  • AlertsAlerts

Weitere Informationen zum SQL Server-Agent finden Sie unter SQL Server-Agent.For information about SQL Server Agent, see SQL Server Agent.

TabellenTables

Die folgenden Tabellentypen werden nicht unterstützt:The following table types aren't supported:

Informationen zum Erstellen und Ändern von Tabellen finden Sie unter CREATE TABLE und ALTER TABLE.For information about how to create and alter tables, see CREATE TABLE and ALTER TABLE.

FunktionenFunctionalities

Bulk insert/OPENROWSETBulk insert / OPENROWSET

SQL Managed Instance kann nicht auf Dateifreigaben und Windows-Ordner zugreifen. Daher müssen die Dateien aus Azure Blob Storage importiert werden:SQL Managed Instance can't access file shares and Windows folders, so the files must be imported from Azure Blob storage:

  • DATASOURCE ist beim Importieren von Dateien aus Azure Blob Storage im Befehl BULK INSERT erforderlich.DATASOURCE is required in the BULK INSERT command while you import files from Azure Blob storage. Siehe BULK INSERT.See BULK INSERT.
  • DATASOURCE ist beim Lesen von Inhalten einer Datei aus Azure Blob Storage in der Funktion OPENROWSET erforderlich.DATASOURCE is required in the OPENROWSET function when you read the content of a file from Azure Blob storage. Siehe OPENROWSET.See OPENROWSET.
  • OPENROWSET kann zum Lesen von Daten aus Instanzen von Azure SQL-Datenbank, Azure SQL Managed Instance oder SQL Server verwendet werden.OPENROWSET can be used to read data from Azure SQL Database, Azure SQL Managed Instance, or SQL Server instances. Andere Quellen wie Oracle-Datenbanken oder Excel-Dateien werden nicht unterstützt.Other sources such as Oracle databases or Excel files are not supported.

CLRCLR

SQL Managed Instance kann nicht auf Dateifreigaben und Windows-Ordner zugreifen. Daher gelten folgende Einschränkungen:A SQL Managed Instance can't access file shares and Windows folders, so the following constraints apply:

Datenbank-E-Mail – (db_mail)Database Mail (db_mail)

  • sp_send_dbmail kann keine Anlagen mithilfe des Parameters @file_attachments senden.sp_send_dbmail cannot send attachments using @file_attachments parameter. Aus dieser Prozedur kann auf das lokale Dateisystem und externe Freigaben oder Azure Blob Storage nicht zugegriffen werden.Local file system and external shares or Azure Blob Storage are not accessible from this procedure.
  • Informieren Sie sich zu den bekannten Problemen im Zusammenhang mit dem Parameter @query und Authentifizierung.See the known issues related to @query parameter and authentication.

DBCCDBCC

Nicht dokumentierte DBCC-Anweisungen, die in SQL Server aktiviert sind, werden in SQL Managed Instance nicht unterstützt.Undocumented DBCC statements that are enabled in SQL Server aren't supported in SQL Managed Instance.

  • Es wird nur eine begrenzte Anzahl von globalen Ablaufverfolgungsflags unterstützt.Only a limited number of Global Trace flags are supported. Trace flags auf Sitzungsebene werden nicht unterstützt.Session-level Trace flags aren't supported. Siehe Ablaufverfolgungsflags.See Trace flags.
  • DBCC TRACEOFF und DBCC TRACEON funktionieren mit einer begrenzten Anzahl globaler Ablaufverfolgungsflags.DBCC TRACEOFF and DBCC TRACEON work with the limited number of global trace-flags.
  • DBCC CHECKDB mit den Optionen REPAIR_ALLOW_DATA_LOSS, REPAIR_FAST und REPAIR_REBUILD kann nicht verwendet werden, weil die Datenbank im Modus SINGLE_USER nicht festgelegt werden kann. Siehe ALTER DATABASE-Unterschiede.DBCC CHECKDB with options REPAIR_ALLOW_DATA_LOSS, REPAIR_FAST, and REPAIR_REBUILD cannot be used because database cannot be set in SINGLE_USER mode - see ALTER DATABASE differences. Potenzielle Datenbankbeschädigungen werden vom Azure-Supportteam behandelt.Potential database corruption is handled by the Azure support team. Wenden Sie sich an den Azure-Support, wenn es Anzeichen für eine Beschädigung der Datenbank gibt.Contact Azure support if there is any indication of database corruption.

Verteilte TransaktionenDistributed transactions

MS DTC und elastische Transaktionen werden in SQL Managed Instance derzeit nicht unterstützt.MSDTC and elastic transactions currently aren't supported in SQL Managed Instance.

Erweiterte EreignisseExtended Events

Einige Windows-spezifische Ziele für XEvents (Erweiterte Ereignisse) werden nicht unterstützt:Some Windows-specific targets for Extended Events (XEvents) aren't supported:

  • Das Ziel etw_classic_sync wird nicht unterstützt.The etw_classic_sync target isn't supported. Speichern Sie .xel-Dateien in Azure Blob Storage.Store .xel files in Azure Blob storage. Siehe etw_classic_sync-Ziel.See etw_classic_sync target.
  • Das Ziel event_file wird nicht unterstützt.The event_file target isn't supported. Speichern Sie .xel-Dateien in Azure Blob Storage.Store .xel files in Azure Blob storage. Siehe event_file-Ziel.See event_file target.

Externe BibliothekenExternal libraries

Datenbankinterne R- und externe Python-Bibliotheken werden noch nicht unterstützt.In-database R and Python, external libraries aren't yet supported. Siehe SQL Server Machine Learning Services.See SQL Server Machine Learning Services.

Filestream und DateitabelleFilestream and FileTable

  • Filestreamdaten werden nicht unterstützt.Filestream data isn't supported.
  • Die Datenbank darf keine Dateigruppen mit FILESTREAM-Daten enthalten.The database can't contain filegroups with FILESTREAM data.
  • FILETABLE wird nicht unterstützt.FILETABLE isn't supported.
  • Tabellen dürfen keine FILESTREAM-Typen enthalten.Tables can't have FILESTREAM types.
  • Die folgenden Funktionen werden nicht unterstützt:The following functions aren't supported:
    • GetPathLocator()
    • GET_FILESTREAM_TRANSACTION_CONTEXT()
    • PathName()
    • GetFileNamespacePat)
    • FileTableRootPath()

Weitere Informationen finden Sie unter FILESTREAM und FileTables.For more information, see FILESTREAM and FileTables.

Die semantische Suche wird nicht unterstützt.Semantic Search isn't supported.

VerbindungsserverLinked servers

Verbindungsserver in SQL Managed Instance unterstützen eine begrenzte Anzahl von Zielen:Linked servers in SQL Managed Instance support a limited number of targets:

  • Unterstützte Ziele sind Instanzen von SQL Managed Instance, SQL-Datenbank, Azure Synapse SQL und SQL Server.Supported targets are SQL Managed Instance, SQL Database, Azure Synapse SQL and SQL Server instances.
  • Verbindungsserver unterstützen keine verteilten beschreibbaren Transaktionen (MS DTC).Linked servers don't support distributed writable transactions (MS DTC).
  • Nicht unterstützte Ziele sind Dateien, Analysis Services und andere RDBMS.Targets that aren't supported are files, Analysis Services, and other RDBMS. Verwenden Sie einen nativen CSV-Import aus Azure Blob Storage mithilfe von BULK INSERT oder OPENROWSET als Alternative zum Dateiimport.Try to use native CSV import from Azure Blob Storage using BULK INSERT or OPENROWSET as an alternative for file import.

Vorgänge:Operations:

  • Instanzübergreifende Schreibtransaktionen werden nicht unterstützt.Cross-instance write transactions aren't supported.
  • sp_dropserver wird zum Löschen eines Verbindungsservers unterstützt.sp_dropserver is supported for dropping a linked server. Siehe sp_dropserver.See sp_dropserver.
  • Die OPENROWSET-Funktion kann verwendet werden, um Abfragen nur auf SQL Server-Instanzen auszuführen.The OPENROWSET function can be used to execute queries only on SQL Server instances. Diese Instanzen können verwaltet sein oder sich auf lokalen oder virtuellen Computern befinden.They can be either managed, on-premises, or in virtual machines. Siehe OPENROWSET.See OPENROWSET.
  • Die OPENDATASOURCE-Funktion kann verwendet werden, um Abfragen nur auf SQL Server-Instanzen auszuführen.The OPENDATASOURCE function can be used to execute queries only on SQL Server instances. Diese Instanzen können verwaltet sein oder sich auf lokalen oder virtuellen Computern befinden.They can be either managed, on-premises, or in virtual machines. Als Anbieter werden nur die Werte SQLNCLI, SQLNCLI11 und SQLOLEDB unterstützt.Only the SQLNCLI, SQLNCLI11, and SQLOLEDB values are supported as a provider. z. B. SELECT * FROM OPENDATASOURCE('SQLNCLI', '...').AdventureWorks2012.HumanResources.Employee.An example is SELECT * FROM OPENDATASOURCE('SQLNCLI', '...').AdventureWorks2012.HumanResources.Employee. Siehe OPENDATASOURCE.See OPENDATASOURCE.
  • Verbindungsserver können nicht zum Lesen von Dateien (Excel, CSV) aus den Netzwerkfreigaben verwendet werden.Linked servers cannot be used to read files (Excel, CSV) from the network shares. Versuchen Sie es mit BULK INSERT oder OPENROWSET, welche CSV-Dateien aus Azure Blob Storage lesen.Try to use BULK INSERT or OPENROWSET that reads CSV files from Azure Blob Storage. Verfolgen Sie diese Anforderungen im Feedback zu SQL Managed Instance|.Track this requests on SQL Managed Instance Feedback item|

PolyBasePolyBase

Externe Tabellen, die auf Dateien in HDFS oder Azure Blob Storage verweisen, werden nicht unterstützt.External tables that reference the files in HDFS or Azure Blob storage aren't supported. Informationen zu PolyBase finden Sie unter PolyBase.For information about PolyBase, see PolyBase.

ReplikationReplication

  • Momentaufnahmen und bidirektionale Replikationstypen werden unterstützt.Snapshot and Bi-directional replication types are supported. Mergereplikation, Peer-zu-Peer-Replikation und aktualisierbare Abonnements werden nicht unterstützt.Merge replication, Peer-to-peer replication, and updatable subscriptions are not supported.
  • Die Transaktionsreplikation ist mit einigen Einschränkungen für die Public Preview von SQL Managed Instance verfügbar:Transactional Replication is available for public preview on SQL Managed Instance with some constraints:
    • Alle Replikationsteilnehmertypen (Herausgeber, Verteiler, Pullabonnent und Pushabonnent) können in SQL Managed Instance platziert werden. Der Herausgeber und der Verteiler müssen dabei entweder beide in der Cloud oder beide lokal platziert sein.All types of replication participants (Publisher, Distributor, Pull Subscriber, and Push Subscriber) can be placed on SQL Managed Instance, but the publisher and the distributor must be either both in the cloud or both on-premises.
    • SQL Managed Instance kann mit der neuesten SQL Server-Version kommunizieren.SQL Managed Instance can communicate with the recent versions of SQL Server. Weitere Informationen finden Sie in der Matrix der unterstützten Versionen.See the supported versions matrix for more information.
    • Für die Transaktionsreplikation gibt es einige zusätzliche Netzwerkanforderungen.Transactional Replication has some additional networking requirements.

Weitere Informationen zum Konfigurieren von Transaktionsreplikation finden Sie in den folgenden Tutorials:For more information about configuring transactional replication, see the following tutorials:

RESTORE-AnweisungRESTORE statement

  • Unterstützte Syntax:Supported syntax:
    • RESTORE DATABASE
    • RESTORE FILELISTONLY ONLY
    • RESTORE HEADER ONLY
    • RESTORE LABELONLY ONLY
    • RESTORE VERIFYONLY ONLY
  • Nicht unterstützte Syntax:Unsupported syntax:
    • RESTORE LOG ONLY
    • RESTORE REWINDONLY ONLY
  • Quelle:Source:
    • FROM URL (Azure Blob Storage) ist die einzige unterstützte Option.FROM URL (Azure Blob storage) is the only supported option.
    • FROM DISK/TAPE/Sicherungsmedium wird nicht unterstützt.FROM DISK/TAPE/backup device isn't supported.
    • Sicherungssätze werden nicht unterstützt.Backup sets aren't supported.
  • WITH-Optionen werden nicht unterstützt.WITH options aren't supported. Wiederherstellungsversuche mit WITH wie DIFFERENTIAL, STATS, REPLACE usw. sind nicht erfolgreich.Restore attempts including WITH like DIFFERENTIAL, STATS, REPLACE, etc., will fail.
  • ASYNC RESTORE: Die Wiederherstellung wird auch bei einer Unterbrechung der Clientverbindung fortgesetzt.ASYNC RESTORE: Restore continues even if the client connection breaks. Wenn die Verbindung ausfällt, können Sie sich in der Ansicht sys.dm_operation_status über den Status eines Wiederherstellungsvorgangs sowie über CREATE- und DROP-Vorgänge für die Datenbank informieren.If your connection is dropped, you can check the sys.dm_operation_status view for the status of a restore operation, and for a CREATE and DROP database. Siehe sys.dm_operation_status.See sys.dm_operation_status.

Die folgenden Datenbankoptionen werden festgelegt oder überschrieben und können später nicht geändert werden:The following database options are set or overridden and can't be changed later:

  • NEW_BROKER, wenn der Broker in der BAK-Datei nicht aktiviert ist.NEW_BROKER if the broker isn't enabled in the .bak file.
  • ENABLE_BROKER, wenn der Broker in der BAK-Datei nicht aktiviert ist.ENABLE_BROKER if the broker isn't enabled in the .bak file.
  • AUTO_CLOSE=OFF, wenn eine Datenbank in der BAK-Datei AUTO_CLOSE=ON enthält.AUTO_CLOSE=OFF if a database in the .bak file has AUTO_CLOSE=ON.
  • RECOVERY FULL, wenn eine Datenbank in der BAK-Datei den Wiederherstellungsmodus SIMPLE oder BULK_LOGGED enthält.RECOVERY FULL if a database in the .bak file has SIMPLE or BULK_LOGGED recovery mode.
  • Eine speicheroptimierte Dateigruppe wird hinzugefügt und erhält den Namen „XTP“, wenn sie in der BAK-Quelldatei nicht vorhanden war.A memory-optimized filegroup is added and called XTP if it wasn't in the source .bak file.
  • Alle vorhandenen speicheroptimierten Dateigruppen werden in „XTP“ umbenannt.Any existing memory-optimized filegroup is renamed to XTP.
  • Die Optionen SINGLE_USER und RESTRICTED_USER werden zu MULTI_USER konvertiert.SINGLE_USER and RESTRICTED_USER options are converted to MULTI_USER.

Einschränkungen:Limitations:

  • Sicherungen der beschädigten Datenbanken werden je nach Art der Beschädigung möglicherweise wiederhergestellt, automatisierte Sicherungen werden jedoch erst ausgeführt, nachdem die Beschädigung behoben wurde.Backups of the corrupted databases might be restored depending on the type of the corruption, but automated backups will not be taken until the corruption is fixed. Stellen Sie sicher, dass Sie DBCC CHECKDB für die Quellinstanz von SQL Managed Instance ausführen und für die Sicherung WITH CHECKSUM verwenden, um dieses Problem zu vermeiden.Make sure that you run DBCC CHECKDB on the source SQL Managed Instance and use backup WITH CHECKSUM in order to prevent this issue.
  • Die Wiederherstellung der .BAK-Datei einer Datenbank, die eine in diesem Dokument beschriebene Einschränkung enthält (z. B. FILESTREAM- oder FILETABLE-Objekte), kann nicht in SQL Managed Instance durchgeführt werden.Restore of .BAK file of a database that contains any limitation described in this document (for example, FILESTREAM or FILETABLE objects) cannot be restored on SQL Managed Instance.
  • .BAK-Dateien mit mehreren Sicherungssätzen können nicht wiederhergestellt werden..BAK files that contain multiple backup sets can't be restored.
  • .BAK-Dateien mit mehreren Protokolldateien können nicht wiederhergestellt werden..BAK files that contain multiple log files can't be restored.
  • Sicherungen, die Datenbanken von mehr als 8 TB, aktive In-Memory-OLTP-Objekte oder eine Reihe von Dateien enthalten, die das Limit von 280 Dateien pro Instanz überschreiten würden, können auf einer universellen Instanz nicht wiederhergestellt werden.Backups that contain databases bigger than 8 TB, active in-memory OLTP objects, or number of files that would exceed 280 files per instance can't be restored on a General Purpose instance.
  • Sicherungen, die Datenbanken mit mehr als 4 TB oder In-Memory-OLTP-Objekte enthalten, deren Gesamtgröße größer ist als die unter Ressourcenlimits beschriebene Größe, können auf der unternehmenskritischen Instanz nicht wiederhergestellt werden.Backups that contain databases bigger than 4 TB or in-memory OLTP objects with the total size larger than the size described in resource limits cannot be restored on Business Critical instance. Weitere Informationen zu Anweisungen für Wiederherstellungen finden Sie unter RESTORE-Anweisungen.For information about restore statements, see RESTORE statements.

Wichtig

Die gleichen Einschränkungen gelten für den integrierten Vorgang der Point-in-Time-Wiederherstellung.The same limitations apply to built-in point-in-time restore operation. So kann beispielsweise eine universelle Datenbank, die größer als 4 TB ist, auf einer unternehmenskritischen Instanz nicht wiederhergestellt werden.As an example, General Purpose database greater than 4 TB cannot be restored on Business Critical instance. Eine unternehmenskritische Datenbank mit In-Memory-OLTP-Dateien oder mehr als 280 Dateien kann auf einer universellen Instanz nicht wiederhergestellt werden.Business Critical database with In-memory OLTP files or more than 280 files cannot be restored on General Purpose instance.

Service BrokerService broker

Der instanzübergreifende Service Broker wird nicht unterstützt:Cross-instance service broker isn't supported:

  • sys.routes: Als Voraussetzung müssen Sie die Adresse aus „sys.routes“ auswählen.sys.routes: As a prerequisite, you must select the address from sys.routes. Die Adresse muss für jede Route auf LOCAL festgelegt sein.The address must be LOCAL on every route. Informationen hierzu finden Sie unter sys.routes.See sys.routes.
  • CREATE ROUTE: Sie können CREATE ROUTE nicht mit einer anderen ADDRESS als LOCAL verwenden.CREATE ROUTE: You can't use CREATE ROUTE with ADDRESS other than LOCAL. Informationen hierzu finden Sie unter CREATE ROUTE.See CREATE ROUTE.
  • ALTER ROUTE: Sie können ALTER ROUTE nicht mit einer anderen ADDRESS als LOCAL verwenden.ALTER ROUTE: You can't use ALTER ROUTE with ADDRESS other than LOCAL. Informationen hierzu finden Sie unter ALTER ROUTE.See ALTER ROUTE.

Gespeicherte Prozeduren, Funktionen und TriggerStored procedures, functions, and triggers

Systemfunktionen und VariablenSystem functions and variables

Die folgenden Variablen, Funktionen und Sichten geben abweichende Ergebnisse zurück:The following variables, functions, and views return different results:

  • SERVERPROPERTY('EngineEdition') gibt den Wert 8 zurück.SERVERPROPERTY('EngineEdition') returns the value 8. Durch diese Eigenschaft wird eine Instanz von SQL Managed Instance eindeutig identifiziert.This property uniquely identifies a SQL Managed Instance. Siehe SERVERPROPERTY.See SERVERPROPERTY.
  • SERVERPROPERTY('InstanceName') gibt NULL zurück, da das für SQL Server bestehende Konzept der Instanz für SQL Managed Instance nicht gilt.SERVERPROPERTY('InstanceName') returns NULL because the concept of instance as it exists for SQL Server doesn't apply to SQL Managed Instance. Siehe SERVERPROPERTY('InstanceName').See SERVERPROPERTY('InstanceName').
  • @@SERVERNAME gibt den vollständigen „verbindungsfähigen“ DNS-Namen zurück, z.B. „meine-verwaltete-instanz.wcus17662feb9ce98.database.windows.net“.@@SERVERNAME returns a full DNS "connectable" name, for example, my-managed-instance.wcus17662feb9ce98.database.windows.net. Siehe @@SERVERNAME.See @@SERVERNAME.
  • SYS.SERVERS gibt den vollständigen „verbindungsfähigen“ DNS-Namen zurück, z.B. myinstance.domain.database.windows.net für die Eigenschaften „name“ und „data_source“.SYS.SERVERS returns a full DNS "connectable" name, such as myinstance.domain.database.windows.net for the properties "name" and "data_source." Siehe SYS.SERVERS.See SYS.SERVERS.
  • @@SERVICENAME gibt NULL zurück, da das für SQL Server bestehende Konzept des Diensts für SQL Managed Instance nicht gilt.@@SERVICENAME returns NULL because the concept of service as it exists for SQL Server doesn't apply to SQL Managed Instance. Siehe @@SERVICENAME.See @@SERVICENAME.
  • SUSER_ID wird unterstützt.SUSER_ID is supported. Gibt NULL zurück, wenn die Azure AD-Anmeldung in „sys.syslogins“ nicht vorhanden ist.It returns NULL if the Azure AD login isn't in sys.syslogins. Siehe SUSER_ID.See SUSER_ID.
  • SUSER_SID wird nicht unterstützt.SUSER_SID isn't supported. Es werden falsche Daten zurückgegeben. Dies ist ein bekanntes vorübergehendes Problem.The wrong data is returned, which is a temporary known issue. Siehe SUSER_SID.See SUSER_SID.

UmgebungseinschränkungenEnvironment constraints

SubnetSubnet

VNETVNET

  • VNet kann mithilfe des Ressourcenmodells bereitgestellt werden – das klassische Modell wird für VNets nicht unterstützt.VNet can be deployed using Resource Model - Classic Model for VNet is not supported.
  • Nachdem eine Instanz von SQL Managed Instance erstellt wurde, wird das Verschieben dieser Instanz oder des VNET in eine andere Ressourcengruppe oder ein anderes Abonnement nicht unterstützt.After a SQL Managed Instance is created, moving the SQL Managed Instance or VNet to another resource group or subscription is not supported.
  • Einige Dienste, wie App Service-Umgebungen, Logik-Apps und SQL Managed Instance (die für Georeplikation, Transaktionsreplikation oder über Verbindungsserver verwendet werden), können nicht auf SQL Managed Instance in anderen Regionen zugreifen, wenn ihre VNETs mithilfe von globalem Peering verbunden sind.Some services such as App Service Environments, Logic apps, and SQL Managed Instance (used for Geo-replication, Transactional replication, or via linked servers) cannot access SQL Managed Instance in different regions if their VNets are connected using global peering. Sie können sich mit diesen Ressourcen über ExpressRoute oder VNET-zu-VNET über VNet-Gateways verbinden.You can connect to these resources via ExpressRoute or VNet-to-VNet through VNet Gateways.

FailovergruppenFailover groups

Systemdatenbanken werden nicht auf die sekundäre Instanz in einer Failovergruppe repliziert.System databases are not replicated to the secondary instance in a failover group. Daher sind Szenarien, die von Objekten aus den Systemdatenbanken abhängen, auf der sekundären Instanz nicht möglich, es sei denn, die Objekte werden manuell auf der sekundären Instanz erstellt.Therefore, scenarios that depend on objects from the system databases will be impossible on the secondary instance unless the objects are manually created on the secondary.

FailovergruppenFailover groups

Systemdatenbanken werden nicht auf die sekundäre Instanz in einer Failovergruppe repliziert.System databases are not replicated to the secondary instance in a failover group. Daher sind Szenarien, die von Objekten aus den Systemdatenbanken abhängen, auf der sekundären Instanz nicht möglich, es sei denn, die Objekte werden manuell auf der sekundären Instanz erstellt.Therefore, scenarios that depend on objects from the system databases will be impossible on the secondary instance unless the objects are manually created on the secondary.

TEMPDBTEMPDB

Die maximale Dateigröße von tempdb darf in der Dienstebene „Universell“ 24 GB pro Kern nicht überschreiten.The maximum file size of tempdb can't be greater than 24 GB per core on a General Purpose tier. Die maximale Größe von tempdb ist in der Dienstebene „Unternehmenskritisch“ auf die Speichergröße von SQL Managed Instance begrenzt.The maximum tempdb size on a Business Critical tier is limited by the SQL Managed Instance storage size. Die Größe der Protokolldatei Tempdb ist bei der Dienstebene „Universell“ auf 120 GB begrenzt.Tempdb log file size is limited to 120 GB on General Purpose tier. Einige Abfragen geben möglicherweise einen Fehler zurück, wenn für sie mehr als 24 GB pro Kern in tempdb erforderlich sind oder die erstellten Protokolldaten mehr als 120 GB benötigen.Some queries might return an error if they need more than 24 GB per core in tempdb or if they produce more than 120 GB of log data.

MSDBMSDB

Die folgenden MSDB-Schemas in SQL Managed Instance müssen ihren jeweiligen vordefinierten Rollen gehören:The following MSDB schemas in SQL Managed Instance must be owned by their respective predefined roles:

Wichtig

Das Ändern der vordefinierten Rollennamen, Schemanamen und Schemabesitzer durch Kunden wirkt sich auf den normalen Betrieb des Diensts aus.Changing the predefined role names, schema names and schema owners by customers will impact the normal operation of the service. Alle Änderungen, die an diesen Angaben vorgenommen werden, werden auf die vordefinierten Werte zurückgesetzt, sobald sie erkannt werden, oder spätestens beim nächsten Dienstupdate, um den normalen Dienstbetrieb sicherzustellen.Any changes made to these will be reverted back to the predefined values as soon as detected, or at the next service update at the latest to ensure normal service operation.

FehlerprotokolleError logs

SQL Managed Instance stellt ausführliche Informationen in Fehlerprotokollen zur Verfügung.SQL Managed Instance places verbose information in error logs. Es gibt viele interne Systemereignisse, die im Fehlerprotokoll protokolliert werden.There are many internal system events that are logged in the error log. Verwenden Sie zum Lesen von Fehlerprotokollen eine benutzerdefinierte Prozedur, die einige nicht relevante Einträge herausfiltert.Use a custom procedure to read error logs that filters out some irrelevant entries. Weitere Informationen finden Sie unter SQL Managed Instance: sp_readmierrorlog oder SQL Managed Instance-Erweiterung (Vorschauversion) für Azure Data Studio.For more information, see SQL Managed Instance – sp_readmierrorlog or SQL Managed Instance extension(preview) for Azure Data Studio.

Nächste SchritteNext steps