データベースの一覧とデータベースに関する情報を取得する

MySQL で作成済のデータベースの一覧や、データベースが作成された時の CREATE DATABASE 文の情報などデータベースに関する情報を取得するには SHOW DATABASES 文, SHOW CREATE DATABASE 文, INFORMATION_SCHEMA データベースなどを使用します。ここでは MySQL でデータベースの一覧とデータベースに関する情報を取得する方法について解説します。

(Last modified: )

作成済のデータベース一覧を確認する

現在作成されているデータベースの一覧を取得するには SHOW DATABASES 文を使います。書式は次の通りです。

SHOW DATABASES [LIKE 'pattern' | WHERE expr]

すべてのデータベースの一覧を取得するには次のように実行してください。

show databases;

作成済のデータベース一覧を確認する(1)

作成済みのデータベースの一覧が表示されました。自分が作成した mydb データベースや、 MySQL をインストールした時に一緒にインストールしたサンプルデータベースの sakila データベースなどがあります。

なお information_schema と mysql は MySQL サーバが使用しているデータベースです。

データベースが作成された時のCREATE DATABASE文を確認する

次にデータベース名を指定して、そのデータベースを作成するのと同じデータベースを作成するための CREATE DATABASE 文を表示する方法です。 SHOW CREATE DATABASE 文を使います。書式は次の通りです。

SHOW CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name

それでは自分が作成した mydb データベースについて確認してみます。次のように実行してください。

show create database mydb\G

データベースが作成された時のCREATE DATABASE文を確認する(1)

文字セットや照合順序を指定せずにデータベースを作成してるので、デフォルトで使用される文字セットと照合順序が指定されてデータベースが作成されています。

INFORMATION_SCHEMAデータベースのSCHEMATAテーブルを参照する

INFORMATION_SCHEMA データベースは MySQL に作成されているデータベースやテーブルなどの情報を参照するために利用できます。データベースに関しては INFORMATION_SCHEMA データベースの中の SCHEMATA テーブルに格納されており、情報を参照するには次のように入力して下さい。

select * from INFORMATION_SCHEMA.SCHEMATA where SCHEMA_NAME='mydb'\G

INFORMATION_SCHEMAデータベースのSCHEMATAテーブルを参照する(1)

指定したデータベースに関する情報が表示されました。

-- --

作成済のデータベースに関する情報の取得する手順について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。