続いてMySQLのクライアントプログラムを起動してみましょう。
MySQLクライアントプログラムからサーバプログラムにアクセスするにはMySQLのユーザ名とパスワードを指定する必要があります。MySQLサーバプログラムをインストール時点のデフォルトでは以下のユーザが用意されています。
- ユーザ名:root
- パスワード:なし
デフォルトで作成される root
という名前のユーザはMySQLの管理者アカウントになります。MySQLでは root
以外の独自のユーザを作成することもできますが、本講座ではこの root
ユーザを使って動作を確認していくことにします。
パスワードの設定方法やデータベースの初期化方法については後ほど解説します。
それではMySQLのクライアントプログラムを起動してみましょう。ターミナルから次のように入力します。
$ mysql -u root -p
そうすると以下のようにパスワードの入力を求められます。
$ mysql -u root -p
Enter password:
ここでは未入力のままでよいのでEnterキーを入力してみましょう。そうすると次のような結果が表示されるでしょう。
$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.2.38-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
上記のようなメッセージが表示されれば大丈夫です。MySQLのクライアントプログラムからサーバプログラムに上手く接続できています。
参考:MySQLサーバプログラムが起動していない場合
mysql -u root -p
コマンドでMySQLのクライアントプログラムが起動します。もしMySQLのサーバプログラムが起動していない場合は次のようなエラーメッセージが表示されます。
$ mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
上記のようなエラーメッセージを表示された場合は sudo systemctl status mariadb
と入力してMySQLのサーバプログラムが起動していることを確認してください。
MySQLデータベース
MySQLはサーバプログラム(単純にサーバと呼んだり、サービスとも呼びます)上に複数のデータベースを構築することができます。名前が紛らわしいのですが、MySQLの中に目的に合わせて、複数のデータベースを作成できるようになっています。
インストールされてすぐのデフォルトの状態では、以下の4つのデータベースが存在します。
- information_schema
- mysql
- performance_schema
- test
information_schema
、mysql
、performance_schema
はMySQLの内部情報を管理する特殊なデータベースです。本講座ではこれらのデータベースは利用しません。さいごの test
データベースは動作確認に利用できます。
それでは実際に4つのデータベースが生成されていることを確認してみましょう。MySQLクライアントプログラムを起動した状態で show databases
と入力するとMySQL上のデータベースの一覧を確認できます。
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
MariaDB [(none)]>
上記のように4つのデータベースの名前が確認できるでしょう。
MySQLデータベースへの接続
つづいてMySQLの test
データベースに接続してみましょう。データベースに接続するには use
コマンドを使います。MySQLクライアントプログラムを起動した状態で use test
と入力します。
MariaDB [(none)]> use test
Database changed
MariaDB [test]>
上記のように Database changed
と出力されれば test
データベースとの接続は完了です。
test
データベース上のテーブル一覧の確認
use test
と入力して test
データベースに接続したら、データベースの中にあるテーブルの一覧を確認できます。MySQLクライアントプログラムを起動した状態で show tables;
と入力します。さいごの ;
の入力にも注意してください。
MariaDB [test]> show tables;
Empty set (0.00 sec)
MariaDB [test]>
上記のように Empty set
と出力された場合は、テーブルが0件だということがわかります。
テーブルの作成方法についてはあとの講座で解説することにします。いったん、MySQLクライアントプログラムを終了しておきましょう。MySQLクライアントプログラムを起動した状態で quit
と入力します。
MariaDB [test]> quit
Bye
上記のように Bye
というメッセージが確認できればMySQLクライアントプログラムは終了できています。ターミナルが元の状態に戻っていることが確認できるでしょう。
MySQLコマンドのまとめ
ここで学習したコマンドについて整理しておきましょう。
コマンド | 意味 |
---|---|
mysql -u root -p | MySQLクライアントプログラムを起動する。-u root はユーザ名は root、 -p は パスワードを入力するという意味 |
上記のプログラムでMySQLのクライアントプログラムが起動します。
MySQLのクライアントプログラムが起動した後は、以下のMySQL固有のコマンドを利用できます。
コマンド | 意味 |
---|---|
show databases | MySQLサーバ内のデータベース一覧を表示する |
use test | test という名前のデータベースに接続する |
show tables | 接続しているデータベース内のテーブル一覧を表示する |
quit | MySQLクライアントプログラムを起動する |
ここまででMySQLを扱うためのサーバプログラムの起動とクライアントプログラムの起動は完了です。そのまま test
データベースを利用してSQLの学習を始めることもできますが、その前に root
アカウントのパスワードの設定などデータベースを初期化する方法を解説します。
まとめ
mysql
コマンドでMySQLクライアントを起動する- MySQLサーバ上に複数のデータベースを保持できる
mysql
クライアントを起動したらuse
コマンドで接続先データベースを決定する