Content Platform Engine,    Datenbank:  SQL          

Deadlock-Fehler in Microsoft SQL Server verringern

Ein hoher gemeinsamer Zugriff in Microsoft SQL Server verursacht Transaktions-Deadlock-Fehler, da Benutzer, die Schreibvorgänge durchführen, den Lesezugriff anderer Benutzer auf Datenbankressourcen blockieren. Sie können die Wahrscheinlichkeit von Deadlocks durch Festlegen der Option READ_COMMITTED_SNAPSHOT ON für Ihre Datenbank verringern.

Vorgehensweise

So verringern Sie Deadlock-Fehler in einer Microsoft SQL Server-Datenbank:

  1. Fahren Sie alle Server und Clients herunter, die eine Verbindung zu Ihrer Datenbank (DBName) herstellen können, und stellen Sie sicher, dass keine weiteren Verbindungen zu Microsoft SQL Server bestehen.
  2. Stellen Sie eine Verbindung zu Microsoft SQL Server her und setzen Sie den folgenden SQL-Befehl ab, um zu ermitteln, ob die Snapshotisolation für DBName aktiviert ist:
    SELECT Name, is_read_committed_snapshot_on FROM sys.databases 
      Dabei ist Name='DBName'.
    Wenn die Snapshotisolation für DBName aktiviert ist, überspringen Sie den Rest dieser Prozedur.
  3. Setzen Sie den folgenden Befehl ab, um die Snapshotisolation für DBName zu aktivieren:
    ALTER DATABASE DBName SET READ_COMMITTED_SNAPSHOT ON
  4. Starten Sie Microsoft SQL Server erneut und setzen Sie den folgenden SQL-Befehl ab, um zu bestätigen, dass die Einstellung zur Snapshotisolation für DBName in Kraft ist:
    SELECT Name, is_read_committed_snapshot_on FROM sys.databases 
      Dabei ist Name='DBName'.


Letzte Aktualisierung: März 2016
p8ppu174.htm

© Copyright IBM Corp. 2013, 2016.