Lösen Sie das Problem der Verkleinerung des Mysql-Transaktionsprotokolls und der Protokolldateien, die zu groß zum Verkleinern sind

Lösen Sie das Problem der Verkleinerung des Mysql-Transaktionsprotokolls und der Protokolldateien, die zu groß zum Verkleinern sind

1. MS SQL SERVER 2005

--1. Löschen Sie das Protokoll
exec('DUMP TRANSACTION Datenbankname WITH NO_LOG')
--2. Das Transaktionsprotokoll kürzen:
exec('BACKUP LOG-Datenbankname WITH NO_LOG')
--3. Verkleinern Sie die Datenbankdatei (wenn sie nicht komprimiert ist, wird die Datenbankdatei nicht verkleinert
exec('DBCC SHRINKDATABASE(Datenbankname) ')
--4. Automatisches Verkleinern einstellen
exec('EXEC sp_dboption Datenbankname,autoshrink,TRUE')

2.MS SQL SERVER 2008 & 2008r2 & 2012 & 2016

--In SQL2008 muss das Löschen des Protokolls im einfachen Modus erfolgen und nach Abschluss des Löschvorgangs wieder in den vollständigen Modus gewechselt werden.
VERWENDEN [Meister]
GEHEN
ALTER DATABASE Datenbankname SET RECOVERY SIMPLE MIT NO_WAIT
GEHEN
ALTER DATABASE Datenbankname SET RECOVERY SIMPLE --Einfacher Modus GO
USE Datenbankname GO
--crm50sp1_log ist der logische Name der Datenbankprotokolldatei DBCC SHRINKFILE (N'crm50sp1_log', 11, TRUNCATEONLY)
GEHEN
VERWENDEN [Meister]
GEHEN
ALTER DATABASE Datenbankname SET RECOVERY FULL WITH NO_WAIT
GEHEN
ALTER DATABASE Datenbankname SET RECOVERY FULL --Wiederherstellen im Vollmodus GO

3. Die Protokolldatei ist ungewöhnlich groß und kann nicht verkleinert werden

Wenn die Protokolldatei ungewöhnlich groß ist und nicht verkleinert werden kann, müssen Sie überprüfen, ob nicht festgeschriebene oder zurückgesetzte Transaktionen vorhanden sind.

Führen Sie den Befehl DBCC OPENTRAN aus, um zu prüfen, ob es Transaktionen gibt, die sehr früh ausgeführt wurden (die Startzeit der Transaktion wird in der Meldung angezeigt). Wenn Transaktionen angezeigt wurden, bedeutet dies, dass für die Transaktion kein Commit oder Rollback ausgeführt wurde. Daher kann MinLSN nicht vorwärts gerollt werden.
In diesem Fall gibt es zwei Möglichkeiten: Eine besteht darin, den Prozess mit der in den Informationen angezeigten Prozessnummer zu beenden. Prozessnummer beenden; (Natürlich ist auch ein Neustart des SQL-Dienstes in Ordnung, sofern Ausfallzeiten zulässig sind);

Wenn keine Transaktionen vorhanden sind, die über einen längeren Zeitraum nicht abgeschlossen wurden, einfacher Modus: Sichern Sie zuerst die Datenbank und führen Sie dann „BACKUP LOG-Datenbankname WITH NO_LOG“ aus. Vollständiger Modus: Wenn keine vollständige Sicherung durchgeführt wurde, führen Sie zuerst eine vollständige Sicherung durch, sichern Sie dann die Protokolldatei und führen Sie abschließend „DBCC SHRINKFILE“ (N‘logischer Name der Protokolldatei‘, 0, TRUNCATEONLY) aus, um nur die Protokolldatei zu verkleinern.

Der logische Name der Protokolldatei kann mit der folgenden Anweisung ermittelt werden: USE erp database go SELECT [name] FROM sys.database_files WHERE type_desc='LOG'

Zusammenfassen

Oben habe ich Ihnen erklärt, wie Sie das Problem der Verkleinerung von MySQL-Transaktionsprotokollen und der zu großen Protokolldateien lösen können. Ich hoffe, es wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • So verkleinern Sie die Protokolldatei in MYSQL SERVER
  • So konvertieren Sie MySQL-Bin-Log-Protokolldateien in SQL-Dateien
  • Zusammenfassung der grundlegenden Betriebsbefehle für binäre Protokolldateien des Binärprotokolls in MySQL
  • Grundlegende Konzepte von Binär- und Redo-Logdateien in MySQL
  • Details zur MySQL-Protokolldatei
  • Einführung in MySQL-Protokolldateien und -Protokolltypen
  • MySQL-Binärprotokolldatei - Datenbank wiederherstellen
  • Austausch von Ideen und Lösungen zum automatischen Wiederherstellen von MySQL-Datenbankprotokolldateien
  • Bringen Sie Ihnen bei, die Protokolldatei (binlog) der MySQL-Datenbank automatisch wiederherzustellen
  • Wo befindet sich die MySQL-Protokolldatei? So ändern Sie den Speicherort der MySQL-Protokolldatei
  • Zusammenfassung wichtiger MySQL-Protokolldateien

<<:  jQuery implementiert Akkordeon-Kleinbuchstaben

>>:  So konfigurieren Sie den virtuellen Nginx-Host in CentOS 7.3

Artikel empfehlen

Grundsätze zur Auswahl von MySQL-Datentypen

Inhaltsverzeichnis Klein aber fein Mach es einfac...

Ein praktischer Bericht über die Wiederherstellung einer MySQL Slave-Bibliothek

Beschreibung der Situation: Heute habe ich mich b...

Einfaches Beispiel zum Hinzufügen und Entfernen von HTML-Knoten

<br />Einfaches Beispiel zum Hinzufügen und ...

Grafisches Tutorial zur Installation und Konfiguration der MySQL-Version 5.7.15

Dieser Artikel enthält ein ausführliches Tutorial...

So erreichen Sie die maximale Anzahl von Verbindungen in MySQL

Inhaltsverzeichnis Was ist der Grund für den plöt...

Eine gängige Technik zur Implementierung von Dreiecken mit CSS (mehrere Methoden)

In manchen Vorstellungsgesprächen werden häufig F...

Docker stellt eine MySQL-Remoteverbindung bereit, um 2003-Probleme zu lösen

Herstellen einer Verbindung mit MySQL Hier verwen...