Zugriff auf die MariaDB-Slow-Query- und allgemeinen Protokolle - Amazon Relational Database Service

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.

Zugriff auf die MariaDB-Slow-Query- und allgemeinen Protokolle

Das Slow-Query-Protokoll von MariaDB und das allgemeine Protokoll können in eine Datei oder in eine Datenbanktabelle mithilfe der Parametereinstellungen in Ihrer DB-Parametergruppe geschrieben werden. Weitere Informationen zum Erstellen und Ändern einer DB-Parametergruppe finden Sie unter Parametergruppen für Amazon RDS. Sie müssen diese Parameter festlegen, bevor Sie das Protokoll für langsame Abfragen oder das allgemeine Protokoll in der RDS Amazon-Konsole oder mithilfe von Amazon RDSAPI, AWS CLI, oder anzeigen können AWS SDKs.

Sie können MariaDB-Protokolle mithilfe der Parameter in dieser Liste kontrollieren:

  • slow_query_logOderlog_slow_query: Um das Protokoll für langsame Abfragen zu erstellen, setzen Sie den Wert auf 1. Der Standardwert ist 0.

  • general_log Um das allgemeine Protokoll zu erstellen, auf 1 setzen. Der Standardwert ist 0.

  • long_query_timeOderlog_slow_query_time: Um zu verhindern, dass Abfragen mit schneller Ausführung im Protokoll für langsame Abfragen protokolliert werden, geben Sie einen Wert für die kürzeste zu protokollierende Abfragelaufzeit in Sekunden an. Der Standardwert liegt bei 10 Sekunden, der Mindestwert bei 0. Wenn log_output = istFILE, können Sie einen Fließkommawert mit einer Auflösung im Mikrosekundenbereich angeben. Wenn log_output = istTABLE, müssen Sie einen Ganzzahlwert mit zweiter Auflösung angeben. Nur Abfragen, deren Laufzeit den log_slow_query_time Wert long_query_time oder überschreitet, werden protokolliert. Wenn Sie beispielsweise long_query_time oder log_slow_query_time auf 0,1 setzen, wird verhindert, dass Abfragen, die weniger als 100 Millisekunden lang ausgeführt werden, protokolliert werden.

  • log_queries_not_using_indexes: Um alle Abfragen zu protokollieren, die keinen Index für das Slow-Query-Protokoll verwenden, setzen Sie diesen Parameter auf 1. Der Standardwert ist 0. Abfragen, die keinen Index verwenden, werden protokolliert, auch wenn ihre Laufzeit niedriger als der Wert des long_query_time-Parameters ist.

  • log_output option: Sie können eine der folgenden Optionen für den log_output-Parameter festlegen:

    • TABLE(Standard) — Schreiben Sie allgemeine Abfragen in die mysql.general_log Tabelle und langsame Abfragen in die Tabelle. mysql.slow_log

    • FILE— Schreibt sowohl allgemeine als auch langsame Abfrageprotokolle in das Dateisystem. Protokolldateien werden stündlich rotiert.

    • NONE— Deaktiviert die Protokollierung.

Wenn die Protokollierung aktiviert ist, RDS rotiert Amazon Tabellenprotokolle oder löscht Protokolldateien in regelmäßigen Abständen. Dies ist eine Vorsichtsmaßnahme, um möglichst zu vermeiden, dass eine umfangreiche Protokolldatei die Datenbanknutzung blockiert oder die Leistung beeinträchtigt. FILE- und TABLE-Protokollierung führen das Rotieren und Löschen wie folgt aus:

  • Wenn die FILE-Protokollierung aktiviert ist, werden Protokolldateien stündlich geprüft und Protokolldateien, die älter als 24 Stunden 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 umfangreichsten 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 Grenzwerte 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.

    Beim Rotieren von Protokolldateien wird die aktuelle Protokolltabelle in eine Sicherungsprotokolltabelle kopiert, und die Einträge in der aktuellen Protokolltabelle werden 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.

Amazon RDS zeichnet beides auf TABLE und FILE protokolliert die Rotation in einem RDS Amazon-Ereignis und sendet Ihnen eine Benachrichtigung.

Um mit den Protokollen von der RDS Amazon-Konsole, Amazon RDSAPI, Amazon RDS CLI oder zu arbeiten AWS SDKs, setzen Sie den log_output Parameter aufFILE. Wie das MariaDB-Fehlerprotokoll werden auch diese Protokolldateien stündlich rotiert. Die Protokolldateien, die während der vorherigen 24 Stunden angelegt wurden, werden aufbewahrt.

Weitere Informationen zu den Slow-Query- und allgemeinen Protokollen finden Sie in den folgenden Themen in der MariaDB-Dokumentation: