

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Überblick über RDS-for-MySQL-Datenbankprotokolle
<a name="USER_LogAccess.MySQL.LogFileSize"></a>

Sie können die folgenden Arten von RDS-for-MySQL-Protokolldateien überwachen:
+ Fehler-log
+ Slow-Query-Protokoll
+ Allgemeines Protokoll
+ Prüfungsprotokoll
+ Instance-Protokoll
+ Fehlerprotokoll zur IAM-Datenbankauthentifizierung

Das RDS-for-MySQL-Fehlerprotokoll wird standardmäßig generiert. Sie können die langsamen Abfrage- und allgemeinen Protokolle generieren, indem Sie Parameter in Ihrer DB-Parametergruppe festlegen.

**Topics**
+ [RDS-for-MySQL-Fehlerprotokolle](#USER_LogAccess.MySQL.Errorlog)
+ [RDS-für-MySQL-Protokolle für langsame Abfragen und allgemeine Protokolle](#USER_LogAccess.MySQL.Generallog)
+ [MySQL Audit-Protokoll](#USER_LogAccess.MySQL.Auditlog)
+ [Protokollrotation und -aufbewahrung für RDS für MySQL](#USER_LogAccess.MySQL.LogFileSize.retention)
+ [Größenbeschränkungen für Redo-Protokolle](#USER_LogAccess.MySQL.LogFileSize.RedoLogs)

## RDS-for-MySQL-Fehlerprotokolle
<a name="USER_LogAccess.MySQL.Errorlog"></a>

RDS für MySQL schreibt Fehler in die `mysql-error.log`-Datei. An den Namen jeder Protokolldatei wird die Stunde ihrer Erstellung (in UTC) angefügt. Die Protokolldateien verfügen auch über einen Zeitstempel, anhand dessen Sie feststellen können, wann die Protokolleinträge geschrieben wurden.

RDS f0r MySQL schreibt das Fehlerprotokoll nur beim Startup, Herunterfahren und beim Auftreten von Fehlern. Eine DB-Instance kann Stunden oder Tage lang laufen, ohne dass neue Einträge in das Fehlerprotokoll geschrieben werden. Wenn Sie keine neuen Einträge sehen, sind im Server keine Fehler aufgetreten, die zu einem Eintrag in das Protokoll führen würden.

Konstruktionsbedingt werden die Fehlerprotokolle gefiltert, sodass nur unerwartete Ereignisse wie Fehler angezeigt werden. Die Fehlerprotokolle enthalten jedoch auch einige zusätzliche Datenbankinformationen, z. B. den Abfragefortschritt, die nicht angezeigt werden. Daher kann die Größe der Fehlerprotokolle auch ohne tatsächliche Fehler aufgrund laufender Datenbankaktivitäten zunehmen. Und obwohl Sie in den Fehlerprotokollen möglicherweise eine bestimmte Größe in Byte oder Kilobyte sehen AWS-Managementkonsole, haben sie möglicherweise 0 Byte, wenn Sie sie herunterladen.

RDS für MySQL schreibt `mysql-error.log` alle 5 Minuten auf die Festplatte. Es fügt den Inhalt des Protokolls `mysql-error-running.log` an.

RDS für MySQL rotiert die Datei `mysql-error-running.log` stündlich. Es behält die in den letzten zwei Wochen erzeugten Protokolle bei.

**Anmerkung**  
Der Aufbewahrungszeitraum für das Protokoll ist zwischen Amazon RDS und unterschiedlich Aurora.

## RDS-für-MySQL-Protokolle für langsame Abfragen und allgemeine Protokolle
<a name="USER_LogAccess.MySQL.Generallog"></a>

Das Slow-Query-Protokoll von RDS für MySQL und das allgemeine Protokoll können in eine Datei oder in eine Datenbanktabelle geschrieben werden. Legen Sie dazu die Parameter in Ihrer DB-Parametergruppe fest. Weitere Informationen zum Erstellen und Ändern einer DB-Parametergruppe finden Sie unter [Parametergruppen für Amazon RDS](USER_WorkingWithParamGroups.md). Sie müssen diese Parameter festlegen, bevor Sie das Protokoll für langsame Abfragen oder das allgemeine Protokoll in der Amazon RDS-Konsole oder mithilfe der Amazon RDS-API, Amazon RDS-CLI oder anzeigen können AWS SDKs.

Sie können RDS-for-MySQL-Protokolle mithilfe der Parameter in dieser Liste kontrollieren:
+ `slow_query_log` Um das Slow-Query-Protokoll zu erstellen, auf 1 setzen. Der Standardwert ist 0.
+ `general_log` Um das allgemeine Protokoll zu erstellen, auf 1 setzen. Der Standardwert ist 0.
+ `long_query_time`: Damit vermieden wird, dass schnell ausgeführte Abfragen im Slow-Query-Protokoll aufgenommen werden, legen Sie die kürzeste Laufzeit für eine zu protokollierende Abfrage in Sekunden fest. Der Standardwert liegt bei 10 Sekunden, der Mindestwert bei 0. Wenn log\$1output = FILE, können Sie einen Gleitkommawert angeben, der die Mikrosekundenauflösung festlegt. Wenn log\$1output = TABLE, können Sie einen Ganzzahlwert angeben, der die Sekundenauflösung festlegt. Nur Abfragen, deren Laufzeit den `long_query_time`-Wert übersteigt, werden im Protokoll aufgenommen. Wenn Sie beispielsweise `long_query_time` auf 0,1 setzen, verhindert dies Einträge von allen Abfragen, die weniger als 100 Millisekunden lang ausgeführt werden.
+ `log_queries_not_using_indexes`: Um alle Abfragen, die keinen Index für das Slow-Query-Protokoll verwenden im Protokoll aufzunehmen, auf 1 setzen. Abfragen, die keinen Index verwenden, werden protokolliert, auch wenn ihre Laufzeit niedriger als der Wert des Parameters `long_query_time` ist. Der Standardwert ist 0.
+ `log_output option`: Sie können eine der folgenden Optionen für den `log_output`-Parameter festlegen. 
  + **TABLE** (Standard)– schreibt allgemeine Abfragen in die `mysql.general_log`-Tabelle und langsame Abfragen in die `mysql.slow_log`-Tabelle.
  + **FILE**– schreibt Protokolle allgemeiner und langsamer Abfragen in das Dateisystem.
  + **NONE**– Die Protokollierung ist deaktiviert.

Damit langsame Abfragedaten in Amazon CloudWatch Logs angezeigt werden, müssen die folgenden Bedingungen erfüllt sein:
+ CloudWatch Protokolle müssen so konfiguriert sein, dass sie langsame Abfrageprotokolle enthalten.
+ `slow_query_log` muss aktiviert sein.
+ muss `log_output` auf `FILE` festgelegt sein.
+ Die Abfrage muss länger dauern als die für `long_query_time` konfigurierte Zeit.

Weitere Informationen zu den Slow-Query- und allgemeinen Protokollen finden Sie in den folgenden Themen in der MySQL-Dokumentation:
+ [Das Slow-Query-Protokoll](https://dev.mysql.com/doc/refman/8.0/en/slow-query-log.html)
+ [Das allgemeine Abfrageprotokoll](https://dev.mysql.com/doc/refman/8.0/en/query-log.html)

## MySQL Audit-Protokoll
<a name="USER_LogAccess.MySQL.Auditlog"></a>

Für den Zugriff auf das Audit-Protokoll muss die DB-Instance eine benutzerdefinierte Optionsgruppe mit der Option `MARIADB_AUDIT_PLUGIN` verwenden. Weitere Informationen finden Sie unter [MariaDB-Audit-Plugin-Support für MySQL](Appendix.MySQL.Options.AuditPlugin.md).

## Protokollrotation und -aufbewahrung für RDS für MySQL
<a name="USER_LogAccess.MySQL.LogFileSize.retention"></a>

Wenn Protokollierung aktiviert ist, rotiert Amazon RDS Tabellenprotokolle oder löscht Protokolldateien in regelmäßigen Intervallen. Dies ist eine Vorsichtsmaßnahme, um möglichst zu vermeiden, dass eine umfangreiche Protokolldatei die Datenbanknutzung blockiert oder die Leistung beeinträchtigt. RDS für MySQL behandelt Rotation und Löschen wie folgt:
+ Die MySQL-Slow-Query-Protokolldatei, Fehlerprotokolldatei und allgemeine Protokolldatei sind auf eine Größe beschränkt, die 2 % des zugewiesenen Speicherplatzes für eine DB-Instance nicht überschreiten darf. Um diesen Schwellenwert einzuhalten, werden die Protokolle automatisch stündlich gedreht. MySQL entfernt Protokolldateien, die älter als zwei Wochen sind. Wenn die kombinierte Größe der Protokolle nach dem Löschen von alten Protokolldateien den Schwellwert überschreitet, werden die ältesten Protokolldateien gelöscht, bis die Größe den Schwellwert nicht mehr überschreitet.
+ Wenn die `FILE`-Protokollierung aktiviert ist, werden Protokolldateien stündlich untersucht und Protokolldateien, die älter als zwei Wochen sind, werden gelöscht. In einigen Fällen kann die Größe der verbleibenden kombinierten Protokolldatei nach dem Löschen die Schwelle von 2 % des zugeteilten Speicherplatzes für eine DB-Instance überschreiten. In diesen Fällen werden die ältesten Protokolldateien gelöscht, bis die Größe den Schwellenwert nicht mehr überschreitet.
+ Wenn die `TABLE`-Protokollierung aktiviert ist, werden in einigen Fällen Protokolltabellen alle 24 Stunden überschrieben. Diese Rotation erfolgt, wenn der von den Tabellenprotokollen verwendete Speicherplatz mehr als 20 Prozent des zugeteilten Speicherplatzes ausmacht. Sie tritt auch auf, wenn die Größe aller kombinierten Protokolle mehr als 10 GB beträgt. Wenn der für eine DB-Instance verwendete Speicherplatz 90 Prozent des Speicherplatzes überschreitet, der der DB-Instance zugeteilt ist, werden die Schwellen für die Protokollrotation reduziert. Protokolltabellen werden dann rotiert, wenn der von den Tabellenprotokollen verwendete Speicherplatz mehr als 10 Prozent des zugeteilten Speicherplatzes ausmacht. Sie werden auch rotiert, wenn die Größe aller kombinierten Protokolle mehr als 5 GB beträgt. Sie können die Ereigniskategorie `low storage` abonnieren, um Benachrichtigungen zu erhalten, wenn Protokolltabellen rotiert werden, um Speicherplatz freizugeben. Weitere Informationen finden Sie unter [Arbeiten mit Amazon-RDS-Ereignisbenachrichtigungen](USER_Events.md).

  Wenn Protokolltabellen rotiert werden, wird die aktuelle Protokolltabelle zuerst in eine Backup-Protokolltabelle kopiert. Dann werden die Einträge aus der aktuellen Protokolltabelle entfernt. Sofern bereits eine Sicherungsprotokolltabelle vorhanden ist, wird diese gelöscht, bevor die aktuelle Protokolltabelle ins Backup kopiert wird. Sie können die Sicherungsprotokolltabelle abfragen, wenn dies nötig ist. Die Backup-Protokolltabelle für die `mysql.general_log`-Tabelle ist als `mysql.general_log_backup` benannt. Die Backup-Protokolltabelle für die `mysql.slow_log`-Tabelle ist als `mysql.slow_log_backup` benannt.

  Sie können die `mysql.general_log`-Tabelle rotieren, wenn Sie die Prozedur `mysql.rds_rotate_general_log` aufrufen. Sie können die `mysql.slow_log`-Tabelle rotieren, wenn Sie die Prozedur `mysql.rds_rotate_slow_log` aufrufen.

  Tabellenprotokolle werden während des Upgrades einer Datenbankversion rotiert.

Um mit den Protokollen von der Amazon RDS-Konsole, der Amazon RDS-API, der Amazon RDS-CLI oder zu arbeiten AWS SDKs, setzen Sie den `log_output` Parameter auf FILE. So wie das MySQL-Fehlerprotokoll, werden diese Protokolldateien stündlich rotiert. Die Protokolldateien, die in den letzten zwei Wochen generiert wurden, werden aufbewahrt. Beachten Sie, dass der Aufbewahrungszeitraum bei Amazon RDS und Aurora jeweils unterschiedlich ist.

## Größenbeschränkungen für Redo-Protokolle
<a name="USER_LogAccess.MySQL.LogFileSize.RedoLogs"></a>

Bei RDS für MySQL Version 8.0.32 beträgt der Standardwert dieses Parameters 256 MB. Dieser Betrag wird abgeleitet, indem der Standardwert des Parameters `innodb_log_file_size` (128 MB) mit dem Standardwert des Parameters `innodb_log_files_in_group` (2) multipliziert wird. Weitere Informationen finden Sie unter [Best practices for configuring parameters for Amazon RDS für MySQL, part 1: Parameters related to performance](https://aws.amazon.com/blogs/database/best-practices-for-configuring-parameters-for-amazon-rds-for-mysql-part-1-parameters-related-to-performance/). 

Bei Version 8.0.33 von RDS für MySQL und höher wird der `innodb_redo_log_capacity`-Parameter anstelle des `innodb_log_file_size`-Parameters verwendet. Der Amazon-RDS-Standardwert für den Parameter `innodb_redo_log_capacity` ist 2 GB. Weitere Informationen finden Sie unter [Änderungen in MySQL 8.0.30](https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-30.html) in der MySQL-Dokumentation.

Ab MySQL 8.4 aktiviert Amazon RDS den Parameter `innodb_dedicated_server` standardmäßig. Mit dem Parameter `innodb_dedicated_server` berechnet die Datenbank-Engine die Parameter `innodb_buffer_pool_size` und `innodb_redo_log_capacity`. Weitere Informationen finden Sie unter [Konfigurieren der Pufferpoolgröße und der Redo-Protokollkapazität in MySQL 8.4](Appendix.MySQL.CommonDBATasks.Config.Size.8.4.md).