MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

【MySQL】SHOW TABLE STATUSで表示されるテーブル情報とは?

MySQLの「SHOW TABLE STATUS」コマンドを使うと、テーブルの名前(Name)、ストレージエンジン(Engine)、バージョン(Version)、行数(Rows)、チェックサム(Checksum)など、テーブルに関する詳細なステータス情報を一覧で確認できます。データベースの運用やパフォーマンス調査の際に非常に役立つコマンドです。

例:テーブルを作成する

まずは例として、MyISAMエンジンを使用したテーブルを作成してみましょう。テーブル作成のクエリは以下のとおりです。

mysql> create table Post_Demo
    -> (
    -> PostId int,
    -> PostName varchar(100),
    -> PostDate datetime,
    -> PRIMARY KEY(PostId)
    -> )ENGINE = MyISAM;
Query OK, 0 rows affected (0.28 sec)

SHOW TABLE STATUSでテーブルの状態を確認する

テーブルが作成できたら、SHOW TABLE STATUSコマンドを実行してステータスを確認しましょう。特定のテーブルだけを表示したい場合は、WHERE句でテーブル名を指定します。クエリは以下のとおりです。

mysql> show table status where Name = 'Post_Demo'\G

実行結果

*************************** 1. row ***************************
Name: post_demo
          Engine: MyISAM
         Version: 10
     Row_format: Dynamic
           Rows: 0
  Avg_row_length: 0
     Data_length: 0
 Max_data_length: 281474976710655
    Index_length: 1024
       Data_free: 0
Auto_increment: 1
    Create_time: 2019-02-12 16:27:26
     Update_time: 2019-02-12 16:27:26
     Check_time: NULL
       Collation: utf8_general_ci
       Checksum: NULL
Create_options:
         Comment:
1 row in set (0.00 sec)

主な項目の意味

出力結果に含まれる主なカラムの意味は以下のとおりです。

  • Name: テーブル名
  • Engine: 使用されているストレージエンジン(この例ではMyISAM)
  • Version: テーブル定義ファイルのバージョン番号
  • Row_format: 行の格納形式(Dynamic、Fixed、Compressedなど)
  • Rows: テーブル内の行数の概算値
  • Avg_row_length: 平均的な1行あたりの長さ(バイト数)
  • Data_length: データファイルのサイズ
  • Index_length: インデックスファイルのサイズ
  • Data_free: 割り当てられているが未使用の領域
  • Auto_increment: 次のAUTO_INCREMENT値
  • Create_time/Update_time/Check_time: それぞれテーブルの作成日時、最終更新日時、最終チェック日時
  • Collation: テーブルの照合順序
  • Checksum: チェックサム値(有効化されていない場合はNULL)

このようにSHOW TABLE STATUSを活用すれば、テーブルの構造だけでなく、データ量や更新状況、使用しているエンジンなどの運用に必要な情報を簡単に把握できます。

  1. Javaを使用してMySQLテーブルの値を表示する方法

    MySQLデータベースのテーブル値をJavaで表示するには、ResultSetの概念を利用します。データベースへの接続には、MySQL JDBCドライバーを使用します。テーブルの作成まず、サンプル用のテーブルを作成しましょう。mysql> create table demo87    -> (    -> name varchar(20),    -> age int    -> )  

  2. mysqlshowコマンドでMySQLのデータベース・テーブル・列の情報を確認する方法

    mysqlshowクライアントを使うと、システム上に存在するデータベースの一覧や、各データベースに含まれるテーブル、さらに特定のテーブルの列やインデックスの情報を簡単に確認できます。mysqlshowは、複数のSQL SHOWステートメントをコマンドラインから実行できる便利なインターフェースを提供するツールです。 mysqlshowの起動方法 mysqlshowユーティリティは、以下の形式で実行します。 shell> mysqlshow [options] [db_name [tbl_name [col_name]]] 引数の指定内容によって、表示される情報が変わります。 データベース