MySQLのサンプルデータベースをダウンロードして利用する

MySQLのサンプルデータベースをダウンロードして利用する プログラミング

この記事は、MySQLの初心者向けの内容となります。
主な内容は、サンプルデータベースの作り方です。

そのサンプルデータベースにはデータの用意されたテーブルが存在しています。
そのため、MySQLの学習や練習には最適と言えるでしょう。

本記事の内容

  • サンプルデータベースのダウンロード
  • サンプルデータベースの構築
  • サンプルデータベースの確認(テーブル一覧)

それでは、上記に沿って解説していきます。

サンプルデータベースのダウンロード

サンプルデータベースは、MySQLの公式サイトで公開されています。
https://dev.mysql.com/doc/index-other.html

まずは、上記ページにアクセスします。
この画面上で次の表示を確認できます。

サンプルデータベースは、複数用意されています。
今回は、「world database」をダウンロードします。

TGZかZipのどちらかを選択できます。
ここでは、Zip形式のファイルを選びます。

wgetが使えるなら、次のコマンドでもダウンロードできます。

$ wget https://downloads.mysql.com/docs/world-db.zip

ダウンロードされるファイル(world-db.zip)は、zip形式で容量が91KBです。
では、以下ではダウンロードしたファイルをもとにサンプルデータベースを作っていきます。

サンプルデータベースの構築

検証環境は、Linux(Ubuntu)となります。
Windowsであっても、MySQLコマンドは同じように利用できます。

では、サンプルデータベースの構築を行います。
作業は、以下の順番で実施します。

  • sqlファイルの用意
  • MySQLへの接続
  • SOURCEコマンドの実行

それぞれを下記で説明します。

sqlファイルの用意

ダウンロードしたファイルを展開します。

$ unzip world-db.zip
Archive:  world-db.zip
   creating: world-db/
  inflating: world-db/world.sql

sqlファイルをtmpに移動しておきます。

$ mv ./world-db/world.sql /tmp

MySQLへの接続

公式の手順では、rootで接続しています。

$ mysql -u root -p

しかし、セキュリティのためにrootログインを許可していない場合があるでしょう。
その場合は、root以外のユーザーで接続しても構いません。

ただし、そのユーザーにはデータベースの新規作成の権限が必要です。
とにかく、MySQLに接続します。

$ mysql -u root -p 
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.29 MySQL Community Server - GPL

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

SOURCEコマンドの実行

MySQLに接続した状態で、次のコマンドを実行。

mysql> SOURCE /tmp/world.sql

実行すると、次のような表示が繰り返されます。

~
Query OK, 1 row affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
Query OK, 1 row affected (0.00 sec)
~

処理が完了したら、サンプルデータベースの構築の作業は終了です。
最後に、データの中身を見てみましょう。

サンプルデータベースの確認(テーブル一覧)

MySQLに接続した状態で処理を行います。
まず、データベース一覧を確認します。

mysql> SHOW DATABASES;

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| world              |
+--------------------+
5 rows in set (0.01 sec)

「world」を確認できますね。
では、この「world」データベースに接続します。

mysql> USE world 
Database changed

「world」データベースに接続できました。
存在するテーブル一覧を確認します。

mysql> SHOW TABLES;
+-----------------+
| Tables_in_world |
+-----------------+
| city            |
| country         |
| countrylanguage |
+-----------------+
3 rows in set (0.00 sec)

それぞれのレコード数を確認してみましょう。

mysql> SELECT COUNT(*) FROM city;
+----------+
| COUNT(*) |
+----------+
|     4079 |
+----------+
1 row in set (0.02 sec)

mysql> SELECT COUNT(*) FROM country;
+----------+
| COUNT(*) |
+----------+
|      239 |
+----------+
1 row in set (0.02 sec)

mysql> SELECT COUNT(*) FROM countrylanguage;
+----------+
| COUNT(*) |
+----------+
|      984 |
+----------+
1 row in set (0.01 sec)

ここまで確認できれば、十分でしょう。

タイトルとURLをコピーしました