SQL Server konnte nicht genügend Arbeitsspeicher zuweisen, um die Abfrage auszuführen.
SQL Server konnte nicht genügend Arbeitsspeicher zuweisen, um die Abfrage auszuführen.
Dieses Problem kann viele verschiedene Ursachen haben und u. a. auf Betriebssystemeinstellungen, die Verfügbarkeit physischen Speichers oder Arbeitsspeicherbegrenzungen für die aktuelle Arbeitsauslastung zurückzuführen sein. Meistens ist die Transaktion, die nicht ausgeführt werden kann, nicht die Fehlerursache. Fehler bei Diagnoseabfragen, wie z. B. DBCC-Anweisungen, können dadurch verursacht werden, dass der Server nicht über genügend Arbeitsspeicher verfügt.
Die Speichernutzung durch speicheroptimierte SQL Server-Daten unterscheidet sich von der Speichernutzung durch SQL Server. Es kann vorkommen, dass die von Ihnen installierte und für speicheroptimierte Daten zugewiesene Speichermenge Ihren gestiegenen Anforderungen nicht mehr entspricht. In diesem Fall ist möglicherweise nicht genügend Arbeitsspeicher vorhanden.
Hinweise zur Vermeidung von Situationen mit unzureichendem Arbeitsspeicher finden Sie auch im Thema "Überwachung und Problembehebung bei der Arbeitsspeichernutzung".
Ausführlichere Informationen zu diesem Problem finden Sie unter: Beheben von OOM-Problemen (nicht genügend Arbeitsspeicher)
Name | Beschreibung | Standardwert |
Aktiviert | Aktiviert oder deaktiviert den Workflow. | Ja |
Intervall (Sekunden) | Gibt das Wiederholungsintervall in Sekunden für die Ausführung des Workflows an. | 300 |
Priorität | Definiert die Warnungspriorität. | 1 |
Schweregrad | Definiert den Warnungsschweregrad. | 2 |
Synchronisierungszeit | Synchronisierungszeit |
|
Timeout (Sekunden) | Gibt die Zeit an, zu der der Workflow ausgeführt werden dann, bevor er geschlossen und als fehlerhaft markiert wird. | 200 |
Timeout für Datenbankverbindung (Sekunden) | Es tritt ein Fehler beim Workflow auf, und ein Ereignis wird registriert, wenn der Workflow nicht innerhalb des angegebenen Zeitraums auf die Datenbank zugreifen kann. | 15 |
Target | Microsoft.SQLServer.Linux.DBEngine | ||
Category | EventCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Comment | Mom2017ID='{2531CFA5-7EF0-4B45-AAA1-DAE73294DFF6}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74} |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered | Default |
GenerateAlert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SQLServer.Linux.EventRule.DBEngine.EventCollectionRule.DBEngine.SQLServerOutOfMemory" Target="SqlDiscL!Microsoft.SQLServer.Linux.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{2531CFA5-7EF0-4B45-AAA1-DAE73294DFF6}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" Comment="DS" TypeID="Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered">
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>701</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Linux.EventRule.DBEngine.EventCollectionRule.DBEngine.SQLServerOutOfMemory.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>