mysqlshowコマンドでMySQLのデータベース・テーブル・列の情報を確認する方法
mysqlshowクライアントを使うと、システム上に存在するデータベースの一覧や、各データベースに含まれるテーブル、さらに特定のテーブルの列やインデックスの情報を簡単に確認できます。mysqlshowは、複数のSQL SHOWステートメントをコマンドラインから実行できる便利なインターフェースを提供するツールです。
mysqlshowの起動方法
mysqlshowユーティリティは、以下の形式で実行します。
shell> mysqlshow [options] [db_name [tbl_name [col_name]]]
引数の指定内容によって、表示される情報が変わります。
データベース名を指定しない場合は、存在するデータベース名の一覧が表示されます。
データベースのみを指定した場合は、そのデータベース内の一致するすべてのテーブルが表示されます。
テーブルまで指定した場合は、そのテーブル内の一致するすべての列と列の型が表示されます。
出力には、現在のユーザーが何らかの権限を持っているデータベース、テーブル、または列の名前のみが表示されます。権限のない対象は表示されません。
主なオプション
mysqlshowでは、以下のオプションを利用できます。これらはコマンドラインで直接指定できるほか、オプションファイルの [mysqlshow] グループや [client] グループに記述することも可能です。
--bind-address=ip_address
コンピュータに複数のネットワークインターフェースがある場合、このオプションを使用して、MySQLサーバーへの接続にどのインターフェースを使うかを指定できます。
--character-sets-dir=dir_name
文字セットがインストールされているディレクトリを指定します。
--compress, -C
可能な場合に、クライアントとサーバー間で送受信されるすべての情報を圧縮します。
--count
各テーブルの行数を表示します。ただし、MyISAM以外のテーブルでは処理に時間がかかることがあります。
--port=port_num, -P port_num
TCP/IP接続時に使用するポート番号を指定します。
--print-defaults
プログラム名と、オプションファイルから取得したすべてのオプション設定を出力します。
--user=user_name, -u user_name
サーバーへ接続する際に使用するMySQLアカウントのユーザー名を指定します。
--verbose, -v
詳細モードを有効にします。プログラムの動作に関するより詳しい情報が出力され、このオプションを複数回指定すると、表示される情報量を段階的に増やすことができます。
--version, -V
バージョン情報を表示して終了します。
-
MySQLでテーブルを更新し、新しい列に名前のイニシャルを表示する方法
MySQLでは、LEFT()関数とSUBSTRING_INDEX()関数を組み合わせることで、氏名からイニシャル(頭文字)だけを取り出すことができます。この記事では、実際にテーブルを作成し、既存のデータからイニシャルを生成して新しい列に格納する手順を解説します。 1. テーブルの作成 まず、氏名を保存する「full_name」列と、イニシャルを格納する「short_name」列を持つテーブルを作成しましょう。 mysql> create table demo13 -> ( -> full_name varchar(100), -> short_name varchar
-
MySQLでデータベースやテーブルの情報を取得する方法|SHOW・DESCRIBEの使い方を解説
はじめにデータベース名やテーブル名、テーブルの構造、カラム名などをうっかり忘れてしまうことは、開発現場でよくあることです。MySQLでは、データベースやテーブルに関する情報を取得するための便利なステートメントが多数用意されているため、このような問題も簡単に解決できます。本記事では、代表的な情報取得コマンドである「SHOW DATABASES」「DATABASE()」「SHOW TABLES」「DESCRIBE」の使い方を順番に解説します。サーバーが管理するデータベースの一覧を表示する「SHOW DATABASES」クエリを使うと、サーバーが管理しているすべてのデータベースの一覧を表示できます。