SHOW CREATE DATABASEコマンドでデータベース作成時のSQLクエリを確認する
MariaDBでデータベース作成時のSQLクエリを確認する方法
方法1:SHOW CREATE DATABASEコマンドを使用する
これは、データベース作成時のSQLクエリを直接表示する最も簡単な方法です。以下のコマンドを実行します。
SHOW CREATE DATABASE データベース名;
例:
SHOW CREATE DATABASE my_database;
このコマンドは、データベース作成時のDDL(データ定義言語)ステートメントをすべて出力します。
方法2:情報スキーマを使用する
MariaDBの情報スキーマには、データベースに関する様々な情報が格納されています。この情報を利用して、データベース作成時のSQLクエリを間接的に確認することができます。
以下のクエリを実行します。
SELECT DDL FROM information_schema.schemata WHERE schema_name = 'データベース名';
SELECT DDL FROM information_schema.schemata WHERE schema_name = 'my_database';
このクエリは、information_schema.schemata
テーブルから、指定されたデータベース名のDDLステートメントを取得します。
方法3:データベースログを確認する
MariaDBは、実行された全てのSQLクエリをログファイルに記録しています。データベース作成時のクエリもこのログファイルに記録されているため、ログを確認することでクエリを確認することができます。
ログファイルの場所は、MariaDBの設定によって異なります。通常は、/var/log/mariadb/mariadb.log
のような場所に保存されています。
方法4:GUIツールを使用する
MySQL WorkbenchのようなGUIツールを使用する場合は、ツール上でデータベース作成時のSQLクエリを確認することができます。
補足
- 上記の方法で確認できるのは、データベース作成時のDDLステートメントのみです。データ挿入などのDMLステートメントは確認できません。
- データベース作成後にテーブルやインデックスなどを追加・変更した場合、その情報は上記のクエリ結果には反映されません。
注意
- 上記のコマンドを実行する前に、必ずデータベースに接続していることを確認してください。
- データベースの権限設定によっては、上記のコマンドを実行できない場合があります。
MariaDBでデータベース作成時のSQLクエリを確認するには、いくつかの方法があります。自分に合った方法を選択して、確認を行ってください。
SHOW CREATE DATABASE my_database;
SELECT DDL FROM information_schema.schemata WHERE schema_name = 'my_database';
- 上記のコードは、MariaDB 10.2.38で動作確認しています。
- 環境によって、コードの動作が異なる場合があります。
MariaDBでデータベース作成時のSQLクエリを確認するその他の方法
方法5:mysqldumpコマンドを使用する
mysqldump
コマンドは、データベースの構造とデータをダンプファイルに出力するコマンドです。このコマンドの--no-data
オプションを指定すると、データは出力されずに、データベースの構造のみが出力されます。
mysqldump --no-data -uroot -p データベース名 > database.sql
mysqldump --no-data -uroot -p my_database > my_database.sql
このコマンドは、database.sql
というファイルに、データベース作成時のDDLステートメントを出力します。
方法6:バイナログファイルを使用する
方法7:監査ログを使用する
監査ログの機能は、MariaDBの設定によって有効にする必要があります。
mariadb