MySQLにemployeeサンプルデータを入れる

 MySQLでとりあえず何かのデータが入っている状態(そこそこレコードがある状態)が欲しいと思っていたところ、やまさきさんに Employee サンプルデータを教えてもらいました。


 MySQLチーム(Oracle社)では昔から、world, sakila など様々なサンプルデータを公開していましたが、その中にある Employee が比較的大きめであるとのことです。
以下、データをMySQLに取り込んだメモ。
 Ubuntu 20.04 に MySQL 8.0.22 が入っている状態にて。

ダウンロード

MySQL :: Other MySQL Documentation
にアクセスして、"employee data" の "GitHub" の部分をクリック。

Code の Download Zip のリンクURLをメモ(実際は右クリックして「URLをコピー」)。

Ubuntu 上で、そのURLを指定して

$ wget https://github.com/datacharmer/test_db/archive/master.zip

入れ込み

$ unzip master.zip
$ cd test_db-master/
$ mysql -uroot -p -t <employees.sql 

 なお、冒頭で紹介したURLの Employee data の 「HTML Setup Guide」リンク先(https://dev.mysql.com/doc/employee/en/employees-installation.html)では、employee.sql を編集して、InnoDB以外のストレージエンジンをコメントアウトはずすことで指定可能だと書いてありますが、そもそもコメントアウトされたストレージエンジンの羅列はありませんでした。どこかのバージョンで廃止されたのかな。いずれにせよ、InnoDB(デフォルト)で使いたいので、今回は編集不要。

 今回、Oracle Cloud Infrastructure(OCI)上に立てた Ubuntu上で、apt で入れっぱなし(my.cnf類の設定変更一切なし)のMySQL 8.0.22でしたが、1分43秒ほどかかりました。

+---------------------+
| data_load_time_diff |
+---------------------+
| 00:01:43            |
+---------------------+

確認

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| employees          |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
6 rows in set (0.07 sec)

mysql> use employees
mysql> show tables;
+----------------------+
| Tables_in_employees  |
+----------------------+
| current_dept_emp     |
| departments          |
| dept_emp             |
| dept_emp_latest_date |
| dept_manager         |
| employees            |
| salaries             |
| titles               |
+----------------------+
8 rows in set (0.01 sec)

さて遊ぶぞ!



追記:
 5年前にも、この employee データについて認識したいたことが発覚w
 当時は launchpad だったんですね。

sakaik.hateblo.jp