MySQL WorkbenchでMySQLデータベースのスキーマをエクスポートする
SQLデータベースのスキーマをデータなしでエクスポートする
このチュートリアルでは、MySQLデータベースのスキーマをデータなしでエクスポートする方法について説明します。データベースの構造を別のデータベースに移行したり、バックアップを取ったりする際に役立ちます。
方法
以下の2つの方法があります。
mysqldumpコマンドは、MySQLデータベースをダンプするためのコマンドラインツールです。以下のコマンドを実行することで、スキーマのみをエクスポートできます。
mysqldump -d -R --no-data <データベース名> > <出力ファイル名.sql>
オプションの説明
-d
: データベース名-R
: すべてのテーブルとスキーマをエクスポート--no-data
: データをエクスポートしない<出力ファイル名.sql>
: 出力ファイル名
MySQL Workbenchは、MySQLデータベースを管理するためのGUIツールです。以下の手順で、スキーマのみをエクスポートできます。
- MySQL Workbenchを起動し、データベースに接続します。
- 左側のツリービューで、エクスポートしたいデータベースを選択します。
- 右クリックして、「スキーマをエクスポート」を選択します。
- 出力ファイル名と保存場所を指定して、「保存」をクリックします。
注意事項
- エクスポートする前に、データベースが最新の状態であることを確認してください。
- 出力ファイルは、安全な場所に保存してください。
追加情報
- 特定のテーブルのみをエクスポートしたい場合は、
-t
オプションを使用してテーブル名を指定できます。 - エクスポートしたスキーマを別のデータベースにインポートするには、
mysql
コマンドまたはMySQL Workbenchを使用できます。
mysqldump -d -R --no-data sample_database > schema.sql
このコマンドは、sample_database
データベースのスキーマをschema.sql
というファイルにエクスポートします。
MySQL Workbenchを使用する
出力ファイルには、以下の内容が含まれます。
- データベースの作成文
- テーブルの作成文
- インデックス
インポート
mysql -u <ユーザー名> -p <パスワード> <データベース名> < schema.sql
- インポートする前に、インポート先のデータベースが存在することを確認してください。
- インポートすると、インポート先のデータベースの既存のデータが失われる可能性があります。
SQL Server Management Studio (SSMS)を使用する
- SSMSを起動し、データベースに接続します。
- 「ファイルにスクリプトを保存」を選択して、「次へ」をクリックします。
- エクスポートするオブジェクトを選択します。
データベーススキーマ抽出ツールを使用する
Toad for MySQLやSQL Data Modelerなどのデータベーススキーマ抽出ツールを使用して、スキーマをエクスポートできます。これらのツールは、GUIインターフェースを提供し、複雑なスキーマを簡単にエクスポートできます。
自作のスクリプトを使用する
SQLを使用して、スキーマを抽出するスクリプトを作成できます。この方法は、複雑なスキーマや、特定の要件を満たす必要がある場合に役立ちます。
- 使用する方法は、データベースの種類や要件によって異なります。
sql mysql database