#業務
MariaDB(MySQL)のチューニングを行っています。
質問したいこと、知見を得たいこと
MariaDB(MySQL)のあるtableのindexの容量の表示がおかしく、
なぜこうなってしまったのか、解決方法はなにか知見を得たいです。
状況
1.INFORMATION_SCHEMA.tablesの情報で、
あるtableのindex_lengthの容量が極小になっています。
そのtableはdata_lengthは25GBあり,indexはPrimary含め7つ張ってありますが
index_lengthの値が1MB以下しか無く、おかしいです。
2.show indexでindex情報を見てみると、Primalykey以外の
全てのindexのcardinality(一意な値の数)の値が「2」になっています。
Primalykeyだけはレコード数の数だけcardinalityに値が入っています。
1.2.ともデータ量からありえない状態です。
補足
EngineはinnoDBです。
レコード数8000万行超えのテーブルでこの症状が起きています
indexは効いているようです。遅いですが、
それでも検索は数秒で返ってきます。
あるtableに対して、1,と2.は同時に起きています。
1.2.の症状が起きていないテーブルもあります。
1.だけ、2,だけ起きているテーブルはありません。
環境
MariaDB 10.36.1.21
Cent OS 7.4
試したこと
統計情報を再取得すれば解消されるかもと考えたのですが、
本番環境につき実施していません