MariaDBでテーブルの容量とデータベースの容量を確認する
MariaDBで、テーブルの容量とデータベースの容量を確認する方法です。
MariaDBでデータベースを運用していると、ログを書き込んでいるテーブルなど、容量がどんどん増えてきますね。
定期的に不要な過去のログのデータを削除したい場合など、テーブルの容量を確認できると便利です。
データベース全体の容量を確認できるコマンドを合わせて紹介します。
テーブルの容量を確認
テーブルの容量を確認するSQLです。データ容量、インデックス容量、それらを足した総容量を表示しています。テーブルの行数(table_rows)と、列の平均サイズ(avg_row_length)も合わせて表示しています。合計サイズの降順でソートしています。
# テーブルの容量を確認するSQL select table_name, floor((data_length+index_length)/1024/1024) as total_size_MB, floor((data_length)/1024/1024) as data_size_MB, floor((index_length)/1024/1024) as index_size_MB, table_rows, avg_row_length from information_schema.tables where table_schema=database() order by (data_length+index_length) desc ;
テーブルの容量を確認するSQLの出力結果のサンプルです。
+----------------------------+---------------+--------------+---------------+------------+----------------+ | table_name | total_size_MB | data_size_MB | index_size_MB | table_rows | avg_row_length | +----------------------------+---------------+--------------+---------------+------------+----------------+ | book | 304 | 179 | 125 | 344669 | 547 | | author | 157 | 104 | 52 | 1212336 | 90 | | publisher | 138 | 138 | 0 | 2467485 | 58 | +----------------------------+---------------+--------------+---------------+------------+----------------+
データベースの容量を確認
データベースの容量を確認するSQLです。テーブルの容量を合計することによって求めています。
# データベースの容量を確認するSQLDBのサイズ select table_schema, floor(sum(data_length)/1024/1024) as database_size_MB from information_schema.tables group by table_schema order by sum(data_length+index_length) desc ;
データベースの容量を確認する出力結果のサンプルです。
+--------------------+------------------+ | table_schema | database_size_MB | +--------------------+------------------+ | perlzemi | 660 | | kimoto_system | 50 | +--------------------+------------------+