it-swarm.com.de

Mariadb MySQL Tuner Bericht verwirrend

Ich möchte Sie bitten, den Bericht von mysqltuner bezüglich der MariaDB-Datenbank zu präzisieren. Der mysqltuner wurde mit --nogood flag aufgerufen!

 >>  MySQLTuner 1.7.1 - Major Hayden <[email protected]>
 >>  Bug reports, feature requests, and downloads at http://mysqltuner.com/
 >>  Run with '--help' for additional options and output filtering

[--] Skipped version check for MySQLTuner script
[!!] Currently running unsupported MySQL version 10.0.29-MariaDB-0ubuntu0.16.04.1

-------- Log file Recommendations ------------------------------------------------------------------
[--] Log file: (0B)
[!!] Log file  doesn't exist
[!!] Log file  isn't readable.

-------- Storage Engine Statistics -----------------------------------------------------------------
[--] Status: +ARCHIVE +Aria +BLACKHOLE +CSV +FEDERATED +InnoDB +MEMORY +MRG_MyISAM +MyISAM +PERFORMANCE_SCHEMA 
[--] Data in InnoDB tables: 380M (Tables: 417)

-------- Security Recommendations ------------------------------------------------------------------
[--] There are 605 basic passwords in the list.

-------- CVE Security Recommendations --------------------------------------------------------------
[--] Skipped due to --cvefile option undefined

-------- Performance Metrics -----------------------------------------------------------------------
[--] Up for: 15s (812 q [54.133 qps], 275 conn, TX: 258K, RX: 108K)
[--] Reads / Writes: 100% / 0%
[--] Binary logging is disabled
[--] Physical Memory     : 31.3G
[--] Max MySQL memory    : 10.0G
[--] Other process memory: 1.2G
[--] Total buffers: 8.4G global + 10.7M per thread (150 max threads)
[--] P_S Max memory usage: 34M
[--] Galera GCache Max memory usage: 0B
[!!] Slow queries: 27% (221/812)
[!!] Query cache may be disabled by default due to mutex contention.
[!!] Query cache efficiency: 0.0% (0 cached / 521 selects)

-------- Performance schema ------------------------------------------------------------------------
[--] Memory used by P_S: 35.0M
[--] Sys schema isn't installed.

-------- ThreadPool Metrics ------------------------------------------------------------------------
[--] ThreadPool stat is enabled.
[--] Thread Pool Size: 8 thread(s).
[--] Using default value is good enough for your version (10.0.29-MariaDB-0ubuntu0.16.04.1)

-------- MyISAM Metrics ----------------------------------------------------------------------------
[!!] Key buffer used: 18.2% (24M used / 134M cache)
[!!] Read Key buffer hit rate: 80.0% (10 cached / 2 reads)

-------- InnoDB Metrics ----------------------------------------------------------------------------
[--] InnoDB is enabled.
[--] InnoDB Thread Concurrency: 0
[!!] Ratio InnoDB log file size / InnoDB Buffer pool size (12.5 %): 512.0M * 2/8.0G should be equal 25%
[--] InnoDB Buffer Pool Chunk Size not used or defined in your version
[!!] InnoDB Write Log efficiency: 0% (2 hits/ 0 total)

-------- AriaDB Metrics ----------------------------------------------------------------------------
[--] AriaDB is enabled.

-------- TokuDB Metrics ----------------------------------------------------------------------------
[--] TokuDB is disabled.

-------- XtraDB Metrics ----------------------------------------------------------------------------
[--] XtraDB is disabled.

-------- RocksDB Metrics ---------------------------------------------------------------------------
[--] RocksDB is disabled.

-------- Spider Metrics ----------------------------------------------------------------------------
[--] Spider is disabled.

-------- Connect Metrics ---------------------------------------------------------------------------
[--] Connect is disabled.

-------- Galera Metrics ----------------------------------------------------------------------------
[--] Galera is disabled.

-------- Replication Metrics -----------------------------------------------------------------------
[--] Galera Synchronous replication: NO
[--] No replication slave(s) for this server.
[--] This is a standalone server.

-------- Recommendations ---------------------------------------------------------------------------
General recommendations:
    MySQL started within last 24 hours - recommendations may be inaccurate
    Consider installing Sys schema from https://github.com/mysql/mysql-sys
Variables to adjust:
    query_cache_type (=0)
    query_cache_limit (> 256K, or use smaller result sets)
    innodb_log_file_size * innodb_log_files_in_group should be equals to 1/4 of buffer pool size (=4G) if possible.

Was mich verwirrt, ist der Abschnitt "Empfehlungen für Protokolldateien". Ich weiß nicht wirklich, was ich damit anfangen soll. Dann auch diese Zeile:

[!!] Query cache may be disabled by default due to mutex contention.

Ich bin auch sehr neugierig, warum es mir empfehlen würde, query_cache_type auf 0 zu ändern und query_cache_limit zu erhöhen?

Ich bin mir bewusst, dass es seit mindestens 24 Stunden nicht mehr läuft. Das liegt daran, dass ich die Konfiguration bereits angepasst und meine Datenbank neu gestartet habe. Ich habe Anpassungen vorgenommen, die meinem Wissen über MariaDB entsprechen, aber mit diesen wenigen Dingen bin ich verwirrt.

7
user119791

Ich kann diese Zeile erklären

[!!] Query cache may be disabled by default due to mutex contention.

Die InnoDB-Speicher-Engine und der Abfrage-Cache befinden sich in einem ständigen Kriegszustand (Siehe meinen 1,5-Jährigen post Warum ist query_cache_type standardmäßig deaktiviert, ab MySQL 5.6? )

mysqltuner empfiehlt, query_cache_type auf 0 zu setzen, damit Sie den Abfragecache explizit deaktivieren. Bitte vergessen Sie nicht, query_cache_size ebenfalls auf 0 zu setzen. Andernfalls tritt das Mutexing-Verhalten ohnehin passiv auf.

Wie ich in mein alter Beitrag sagte, müssen Sie den Abfrage-Cache nicht unbedingt deaktivieren, wenn Sie die Größe Ihrer häufigsten Ergebnismengen vernünftigerweise kennen. Wenn Sie diese Größe herausfinden können, können Sie query_cache_limit und query_cache_min_res_unit als Ober- und Untergrenze der Ergebnismengengrößen verwenden. Nur dann können Sie query_cache_type auf 1 setzen.

Wie für Ihre Protokolldatei-Empfehlungen

[--] Log file: (0B)
[!!] Log file  doesn't exist
[!!] Log file  isn't readable.

Vielleicht könnte dies das erklären

[!!] Currently running unsupported MySQL version 10.0.29-MariaDB-0ubuntu0.16.04.1

Es ist möglich, dass mysqltuner sich nicht auf Protokolldateien in dieser Version von MariaDB beziehen kann, wie dies bei unterstützten Versionen der Fall ist.

7
RolandoMySQLDBA

Vertrauen Sie nicht (verlassen Sie sich nur darauf) - für mysqltunner müssen alle Einstellungen basierend auf der tatsächlichen Überwachung und dem Laden angepasst werden.

Protokolldateigröße von einer Seite - Es wird eine Größe von 0,5 bis 1 Stunde aller Transaktionen in diesem Zeitraum empfohlen

aber von der anderen Seite - wenn es mehr als 1-2 GB Neustart nach dem Absturz kann Ewigkeiten dauern. Als größere Protokolle - als längerer Start.

So balanciert es immer zwischen.

Beginnen Sie mit 512 MB pro Datei (insgesamt 1 GB) und erhöhen Sie bei hohem Ladevorgang auf 1024 GB

besser zu überprüfen, was drin ist:

Slow queries: 27% (221/812)
  • welche abfragen
  • warum langsam?
  • ist es nach Datengröße? oder durch falsche Indizes?

dies könnte mehr für die Leistung geben

3
a_vlad

Die Ausgabe ist praktisch nutzlos, da das System nur 15 Sekunden lang ausgeführt wurde. Warten Sie mindestens einen Tag.

Trotzdem ist der Prozentsatz der "langsamen" Abfragen schrecklich. Schalten Sie das Slowlog ein, warten Sie einen Tag und verwenden Sie pt-query-Digest, um die schlimmsten Abfragen zu finden. Dann lass uns darüber diskutieren.

Ich hätte nicht gedacht, dass InnoDB ohne eine Protokolldatei laufen könnte! (Oder bezieht es sich vielleicht auf eine andere Protokolldatei?) Später heißt es jedoch innodb_log_file_size ist 512M. Das sollte vorerst eine anständige Größe sein. (Sie müssen sich vorerst auf andere Themen konzentrieren.)

Für Produktionssysteme mit vielen Schreibvorgängen ist dies die beste QC-Einstellung:

query_cache_type = OFF
query_cache_size = 0

Wenn Sie eine andere Bewertung wünschen, geben Sie bitte SHOW VARIABLES; und SHOW GLOBAL STATUS; (nach mindestens einem Tag aufstehen).

2
Rick James