
CentOS で Maria DB 10.6.9 を実行していますが、メモリ使用量が増加し続けていることが確認されています。サーバー仕様: RAM - 128 GB vCPU - 48 スワップ - 100 GB
innodb_buffer_poolを65 GBに設定しました
そして、スワップは引き続き増加し続けています。
サーバーは Mariadb 専用であり、Mariadb 以外のアプリは実行されません。
夜間には負荷が軽減されますが、MariaDB が回復してメモリを解放する様子は見られません。
MySQL 5.7.38 を実行している同様の DB サーバーがありますが、同様の問題は発生していません。
以下の内容を理解する上で役立つご意見をいただければ幸いです。
- mariadb 内のメモリを使用しているのは何ですか?
- メモリ使用量の増加の原因となっている可能性のあるメモリにロードされているテーブルは何ですか?
- mariadb のメモリ使用量についての洞察を提供できるツールをさらに分析するにはどうすればよいですか?
私たちの状況をよりよく理解するために、他に必要な情報はありますか?
現時点での Innodb のステータスは以下の通りです。 Innodb ステータス
[追加情報の要求]
A:https://justpaste.it/cs5vw
バ:https://justpaste.it/9868l
C:https://justpaste.it/8q99c
デ:https://justpaste.it/byhv5
E:https://justpaste.it/cgnum
G:https://justpaste.it/ba5if
トップ:https://justpaste.it/dd57f
追加情報パート2
1)https://jpst.it/30ItC- トップ -b -n 1
2)https://jpst.it/30OBo- トップ -b -n 1 -H
3)https://jpst.it/30OGm- ulimit -a
4)https://jpst.it/30OKb- iostat -xm 5 3
5)https://jpst.it/30OME- df -h
6)https://jpst.it/30OPx- 無料 -h
7)https://jpst.it/30OQF- cat /proc/meminfo
8)https://jpst.it/30OTB- df -i
答え1
メモリ使用率の考えられる原因
通常、com_perpare_sql、com_execute_sql、および com_dealloc_sql ではバランスの取れたカウントが表示されます。グローバル ステータスの表示では、com_dealloc_sql (close) が 151,033 回失敗しており、これは 36 日間リソースが解放されなかったことを意味します。
通常、com_stmt_prepare、com_stmt_execute、および com_stmt_close ではバランスの取れたカウントが表示されます。グローバル ステータスの表示では、com_stmt_close が 373.474 回失敗しており、これは 36 日間でリソースが解放されなかったことを意味します。
観察に貢献している可能性がある、1 時間あたり 78 の割合でカウントされた 68,677 件の aborted_clients イベントがありました。
com_rollback カウントは 117,323 で、平均 27 秒ごとにロールバックが実行され、回避できる場合があります。ロールバック処理はリソースを大量に消費します。「mysql ロールバックを回避する方法」を検索してください。
連絡先情報についてはプロフィールをご覧ください。多くのグローバル変数を調整してパフォーマンスを向上させることができます。