web-dev-qa-db-ja.com

Mariadb MySQL Tunerレポートが混乱する

MariaDBデータベースに関するmysqltunerからのレポートを明確にするようにお願いします。 mysqltunerが--nogoodフラグで呼び出されました!

 >>  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.

私を混乱させるのは、「ログファイルの推奨事項」セクションです。どうすればいいのか分かりません。次に、この行:

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

また、なぜquery_cache_typeを0に変更してquery_cache_limitを増やすことが推奨されるのか非常に興味がありますか?

24時間以上実行されていないことに気付いています。これは、構成を調整してデータベースを再起動したためです。 MariaDBに関する知識に基づいて調整を行いましたが、これらのいくつかのことで混乱しました。

7
user119791

この行を説明できます

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

InnoDBストレージエンジンとクエリキャッシュが常に戦争状態にある(私の1.5-を参照) 1年前の投稿 query_cache_typeがデフォルトで無効になっている理由MySQL 5.6からの開始

mysqltunerは query_cache_type を0に設定して、クエリキャッシュを明示的に無効にすることを推奨しています。 query_cache_size も0に設定することを忘れないでください。それ以外の場合、ミューテックス動作はとにかく受動的に発生します。

my old post で述べたように、最も一般的な結果セットのサイズが合理的にわかっている場合は、クエリキャッシュを無効にする必要はありません。そのサイズを把握できる場合は、結果セットサイズの上限と下限として query_cache_limit および query_cache_min_res_unit を使用できます。そうして初めて query_cache_type を1に設定できます。

ログファイルの推奨事項について

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

多分これはそれを説明するかもしれません

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

Mysqltunerは、サポートされているバージョンとは異なり、このバージョンのMariaDBのログファイルに関連付けることができない可能性があります。

7
RolandoMySQLDBA

信頼しないでください(それだけに依存します)-mysqltunnerの場合、すべての設定は実際の監視とロードに基づいて調整する必要があります。

片側からのログファイルサイズ-この期間中のすべてのトランザクションの0.5〜1時間のサイズを推奨

しかし、反対側から-クラッシュ後に1〜2Gb以上再起動すると、時間がかかる可能性があります。ログが大きいほど-開始時間が長いほど。

したがって、常にバランスが取れています。

ファイルあたり512M(合計1G)から開始し、高負荷の場合-最大1024Gbまで増加

内部の内容を確認することをお勧めします:

Slow queries: 27% (221/812)
  • どのクエリ?
  • なぜ遅いの?
  • データサイズ別ですか?または間違ったインデックスによって?

これにより、パフォーマンスが向上します

3
a_vlad

システムが15秒しか実行されていないため、出力は実質的に役に立ちません。少なくとも1日待ちます。

それにもかかわらず、「遅い」クエリの割合はひどいです。 slowlogをオンにして、1日待ってから、pt-query-digestを使用して最悪のクエリをいくつか見つけます。それからそれらを議論しましょう。

InnoDBがログファイルなしで実行できるとは思いませんでした。 (または、別のログファイルを参照している可能性がありますか??)それでも後でinnodb_log_file_sizeは512Mです。それは今のところまともなサイズになるはずです。 (現時点で注目すべき他の問題があります。)

書き込みが多い本番システムでは、これが最良のQC設定です。

query_cache_type = OFF
query_cache_size = 0

別のレビューをご希望の場合は、SHOW VARIABLES;およびSHOW GLOBAL STATUS;(少なくとも1日稼働した後)。

2
Rick James