コマンドライン vs GUI!MySQLスクリプト実行方法のメリット・デメリット
MySQLでSQLスクリプトを実行するには、いくつかの方法があります。
- コマンドライン
- MySQL Workbench
- MySQL Shell
この解説では、コマンドラインを使ってMySQLスクリプトを実行する方法について、詳しく説明します。
コマンドラインは、MySQLサーバーに直接接続してSQLクエリを実行する最も基本的な方法です。
必要なもの
- MySQLサーバー
- コマンドラインツール (ターミナル)
手順
-
コマンドラインツールを開く
-
以下のコマンドを実行します。
mysql -h <ホスト名> -u <ユーザー名> -p <パスワード>
<ホスト名>
: MySQLサーバーのホスト名<ユーザー名>
: MySQLユーザー名
-
SQLスクリプトを実行する
以下のいずれかの方法でスクリプトを実行できます。
-
スクリプトの内容を直接入力する
USE <データベース名>; -- スクリプトの内容
-
スクリプトファイルを指定する
mysql -h <ホスト名> -u <ユーザー名> -p <パスワード> <データベース名> <スクリプトファイル名>
-
-
接続を閉じる
exit
例
以下の例では、sample.sql
という名前のスクリプトを実行します。
# コマンドプロンプトを開く
# MySQLサーバーに接続する
mysql -h localhost -u root -p
# データベースを選択する
USE test;
# スクリプトを実行する
mysql -h localhost -u root -p test < sample.sql
# 接続を閉じる
exit
-- データベースを作成する
CREATE DATABASE IF NOT EXISTS sample;
-- データベースを選択する
USE sample;
-- テーブルを作成する
CREATE TABLE users (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
-- データを挿入する
INSERT INTO users (name, email) VALUES ('John Doe', '[email protected]');
INSERT INTO users (name, email) VALUES ('Jane Doe', '[email protected]');
-- データを取得する
SELECT * FROM users;
このスクリプトを実行すると、sample
という名前のデータベースが作成され、そのデータベース内にusers
という名前のテーブルが作成されます。
テーブルには、2つのレコードが挿入されます。
最後に、SELECT * FROM users;
クエリによって、テーブル内のすべてのデータが取得されます。
実行方法
上記のサンプルコードを実行するには、以下の手順に従ってください。
sample.sql
という名前のファイルを作成し、上記のコードを保存します。
mysql -h localhost -u root -p test < sample.sql
注意事項
- 上記のコードは、MySQL 8.0を想定しています。他のバージョンのMySQLを使用している場合は、コードを修正する必要があります。
localhost
、root
、password
は、ご自身の環境に合わせて変更してください。
コマンドライン以外でMySQLスクリプトを実行する方法
MySQL Workbenchは、MySQLのGUI管理ツールです。
- メリット
- 操作が簡単
- 視覚的にわかりやすい
- 複数のデータベースサーバーを管理できる
- デメリット
- コマンドラインよりも動作が遅い場合がある
- インストールが必要
MySQL Shellは、MySQLサーバーと対話するためのコマンドラインインターフェースです。
- メリット
- コマンドラインよりも機能が豊富
- スクリプトを簡単に実行できる
- 履歴機能がある
- デメリット
その他のツール
- DBeaver
- Sequel Pro
- Navicat
これらのツールは、MySQL Workbenchと同様に、GUIでMySQLデータベースを管理することができます。
どの方法を選ぶべきかは、ご自身のニーズとスキルレベルによって異なります。
- 初心者
- 上級者
mysql command-line