Nicht unterstützte SQL Server-Funktionen für In-Memory OLTP
Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed Instance
In diesem Thema werden SQL Server-Features erläutert, die für die Verwendung mit speicheroptimierten Objekten nicht unterstützt werden. Außerdem werden im letzten Abschnitt Features aufgeführt, die für In-Memory-OLTP nicht unterstützt wurden und mittlerweile unterstützt werden.
SQL Server-Features für IN-Memory OLTP nicht unterstützt
Die folgenden SQL Server-Features werden für eine Datenbank mit speicheroptimierten Objekten (einschließlich speicheroptimierter Datendateigruppe) nicht unterstützt.
Nicht unterstützte Funktion | Funktionsbeschreibung |
---|---|
Datenkomprimierung bei speicheroptimierten Tabellen | Sie können die Datenkomprimierungsfunktion verwenden, um die Komprimierung der Daten innerhalb einer Datenbank sowie die Reduzierung der Datenbankgröße zu vereinfachen. Weitere Informationen finden Sie unter Data Compression. |
Partitionierung von speicheroptimierten Tabellen und HASH-Indizes sowie nicht gruppierten Indizes. | Die Daten partitionierter Tabellen und Indizes werden in Einheiten aufgeteilt, die über mehrere Dateigruppen in einer Datenbank verteilt sein können. Weitere Informationen finden Sie unter partitionierte Tabellen und Indizes. |
Replikation | Replikationskonfigurationen, die keine Transaktionsreplikation in speicheroptimierten Tabellen von Abonnenten darstellen, sind mit Tabellen oder Ansichten, die auf speicheroptimierte Tabellen verweisen, nicht kompatibel. Die Replikation mit sync_mode='database snapshot' wird bei Vorhandensein speicheroptimierter Dateigruppen nicht unterstützt. Weitere Informationen finden Sie unter Replikation mit Abonnenten von speicheroptimierten Tabellen. |
Spiegelung | Die Datenbankspiegelung wird für Datenbanken mit einer MEMORY_OPTIMIZED_DATA-Dateigruppe nicht unterstützt. Weitere Informationen zur Spiegelung finden Sie unter Datenbankspiegelung (SQL Server). |
Protokollneuerstellung | Die Neuerstellung des Protokolls, entweder durch Anfügen oder mithilfe von ALTER DATABASE, wird für Datenbanken mit einer MEMORY_OPTIMIZED_DATA-Dateigruppe nicht unterstützt. |
Verknüpfter Server | Sie können auf verknüpfte Server nicht in der gleichen Abfrage oder Transaktion als speicheroptimierte Tabellen zugreifen. Weitere Informationen finden Sie unter Verbindungsserver (Datenbank-Engine). |
Massenprotokollierung | Unabhängig vom Wiederherstellungsmodell der Datenbank werden alle Vorgänge in dauerhaften speicheroptimierten Tabellen immer vollständig protokolliert. |
Minimale Protokollierung | Die minimale Protokollierung wird für speicheroptimierte Tabellen nicht unterstützt. Weitere Informationen zur minimalen Protokollierung finden Sie unter "Transaktionsprotokoll (SQL Server) und Voraussetzungen für die minimale Protokollierung im Massenimport". |
Änderungsnachverfolgung | Die Änderungsnachverfolgung wird für arbeitsspeicheroptimierte Tabellen nicht unterstützt. |
DDL-Trigger | Trigger auf Datenbankebene und DDL-Trigger auf Serverebene werden nicht mit OLTP-Tabellen im Arbeitsspeicher oder mit systemeigenen kompilierten Modulen unterstützt. |
Change Data Capture (CDC) | SQL Server 2017 CU15 und höher unterstützt die Aktivierung von CDC für eine Datenbank mit arbeitsspeicheroptimierten Tabellen. Dies gilt nur für die Datenbank und Tabellen auf dem Datenträger in der Datenbank. In früheren Versionen von SQL Server kann CDC nicht mit einer Datenbank mit speicheroptimierten Tabellen verwendet werden, da CDC intern einen DDL-Trigger für DROP TABLE verwendet. |
Fibermodus | Der Fibermodus wird für speicheroptimierte Tabellen nicht unterstützt: Wenn der Fibermodus aktiviert ist, können keine Datenbanken mit speicheroptimierten Dateigruppen erstellt oder speicheroptimierte Dateigruppen zu vorhandenen Datenbanken hinzugefügt werden. Sie können den Fibermodus aktivieren, wenn Datenbanken mit speicheroptimierten Dateigruppen vorhanden sind. Allerdings erfordert das Aktivieren des Fibermodus einen Serverneustart. In einem solchen Fall können Datenbanken mit speicheroptimierten Dateigruppen nicht wiederhergestellt werden. Dann wird eine Fehlermeldung angezeigt, die Ihnen empfiehlt, den Fibermodus zu deaktivieren, um Datenbanken mit speicheroptimierten Dateigruppen nutzen zu können. Wenn der Fasermodus aktiv ist, schlägt das Anfügen und Wiederherstellen einer Datenbank mit einer speicheroptimierten Dateigruppe fehl. Die Datenbanken werden als fehlerverdächtig gekennzeichnet. Weitere Informationen finden Sie unter Lightweightpooling (Serverkonfigurationsoption). |
Service Broker-Einschränkung | Kann über eine systemintern kompilierte gespeicherte Prozedur nicht auf eine Warteschlange zugreifen. Kann in einer Transaktion, die auf speicheroptimierte Tabellen zugreift, nicht auf eine Warteschlange in einer Remotedatenbank zugreifen. |
Replikation auf Abonnenten | Die Transaktionsreplikation in speicheroptimierte Tabellen von Abonnenten wird nur eingeschränkt unterstützt. Weitere Informationen finden Sie unter Replikation mit Abonnenten von speicheroptimierten Tabellen. |
Datenbankübergreifende Abfragen und Transaktionen
Mit wenigen Ausnahmen werden datenbankübergreifende Transaktionen nicht unterstützt. In der folgenden Tabelle werden unterstützte Szenarien und entsprechende Einschränkungen beschrieben. (Siehe auch Datenbankübergreifende Abfragen.)
Datenbanken | Zulässig | Beschreibung |
---|---|---|
Benutzerdatenbanken, Modell- und msdb-Datenbanken | Nein | In den meisten Fällen werden datenbankübergreifende Abfragen und Transaktionen nicht unterstützt. Ein Abfrage kann nicht auf andere Datenbanken zugreifen, wenn die Abfrage eine speicheroptimierte Tabelle oder eine nativ kompilierte gespeicherte Prozedur verwendet. Diese Einschränkung gilt für Transaktionen und Abfragen. Ausgenommen sind die Systemdatenbanken tempdb und master. Hier steht die master-Datenbank nur für den schreibgeschützten Zugriff zur Verfügung. |
Datenbank Resource, tempdb | Ja | Bei einer Transaktion, die speicherinterne OLTP-Objekte betrifft, können die Systemdatenbanken Resource und tempdb ohne zusätzliche Einschränkungen verwendet werden. |
Nicht unterstützte Szenarien
Zugreifen auf speicheroptimierte Tabellen mithilfe der Kontextverbindung aus CLR-gespeicherten Prozeduren.
Keysetgesteuerte und dynamische Cursor für Abfragen, die auf speicheroptimierte Tabellen zugreifen. Diese Cursor werden auf "static" und "read-only" heruntergestuft.
Das Verwenden von MERGE INTOziel, wobei ziel eine speicheroptimierte Tabelle ist, wird nicht unterstützt.
- MERGE USINGquelle wird für speicheroptimierte Tabellen unterstützt.
Der Datentyp ROWVERSION (TIMESTAMP) wird nicht unterstützt. Weitere Informationen finden Sie unter FROM (Transact-SQL).
Automatisches Schließen wird für Datenbanken, die eine MEMORY_OPTIMIZED_DATA-Dateigruppe enthalten, nicht unterstützt.
Transaktions-DDL, wie z.B. CREATE/ALTER/DROP von speicherinternen OLTP-Objekten wird innerhalb von Benutzertransaktionen nicht unterstützt.
Ereignisbenachrichtigung
Richtlinienbasierte Verwaltung.
- Verhindert und protokolliert nur die Modi von PBM, die nicht unterstützt werden. Das Vorhandensein solcher Richtlinien auf dem Server verhindert möglicherweise, dass In-Memory OLTP-DDL erfolgreich ausgeführt wird. On-Demand- und On-Schedule-Modi werden unterstützt.
Datenbankkapselung (Eigenständige Datenbanken) wird bei In-Memory-OLTP nicht unterstützt.
- Die Authentifizierung eigenständiger Datenbanken wird unterstützt. Allerdings werden alle speicherinternen OLTP-Objekte in den dm_db_uncontained_entities der dynamischen Verwaltungssicht als „breaking containment“ gekennzeichnet.
Kürzlich hinzugefügte Unterstützungen
In manchen Fällen wird durch ein neues Release von SQL Server Unterstützung für ein Feature hinzugefügt, das zuvor nicht unterstützt wurde. In diesem Abschnitt werden Features aufgeführt, die für In-Memory-OLTP nicht unterstützt werden, die später jedoch für IN-Memory OLTP unterstützt wurden.
In der folgenden Tabelle wird unter den Werten für Version (z. B. (15.x)
) aufgeführt, welcher Wert von der Transact-SQL-Anweisung SELECT @@Version;
zurückgegeben wird.
Funktionsname | Version von SQL Server | Bemerkungen |
---|---|---|
Datenbank-Momentaufnahmen | 2019 (15.x) | Datenbankmomentaufnahmen werden nun für Datenbanken unterstützt, die eine MEMORY_OPTIMIZED_DATA-Dateigruppe enthalten. |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für