MySQLは、オープンソースで公開されているリレーショナルデータベース管理システム (RDBMS) の一つです。本記事では、MySQLのインストール方法について備忘録も兼ねてまとめます。
MySQLって何?
MySQLは、オープンソースで公開されているリレーショナルデータベース管理システム (RDBMS) の一つです。
Wikipediaに以下のように記述があるとおり、世界で最も普及しているデータベースです。
世界的にはこのMySQLの方が、ライバルであるFirebirdやPostgreSQLよりも多く使用されており、ウェブサイトの構築に用いるソフトウェア環境として、LAMP (Linux, Apache, MySQL, Perl・PHP・Python) の略称が知られている。Yahoo!、Facebook、Twitterなどの巨大なウェブサイトでの適用例も多く、WebアプリケーションのXOOPS、WordPress、SugarCRMなどCMSも、バックエンドのデータベースとしてMySQLを利用している。また、ウィキペディアのためのソフトウェアであるMediaWikiでもこのソフトウェアを使用している。他にも、社内用WebアプリケーションのサイボウズもMySQLを利用しており、MySQLを改造するため、有償契約をしている。
より詳細な情報は、公式サイト:https://www.mysql.com/を参照ください。
確認した環境
- OS: Ubuntu16.04LTS
- MySQL version 8.0.12
MySQLのインストール
基本的に公式サイトのとおりです。以下に順番に示します。
(1) パッケージをダウンロードする
公式のダウンロードサイトの下の方にあるをクリック
すると、以下の画面に遷移してLoginボタンが出てきます。
私は登録(無料)してからダウンロードしちゃいましたが、下の方に小さくNo thanks, just start my downloadと書いてあるので、登録しなくてもダウンロードできるようです。
(2) インストールする
ダウンロードが完了したら、以下コマンドでインストールします。dpkgコマンドの最後の引数は上記でダウンロードしたファイル名になりますので適宜変更してください。
今回は、”mysql-apt-config_0.8.10-1_all.deb”でした。
~$ sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb
~$ sudo apt update
~$ sudo apt install mysql-server
実行すると、最初に以下のような画面がでてきてちょっと焦ります。ここでは一番上のメニューでインストールするMySQLのバージョンを選択します。残り2つは特に変更しなくても大丈夫だと思います。
インストール途中でrootユーザのパスワードを設定するよう求められるので、任意のパスワードを設定します。
インストールが完了したら、ちゃんと動作しているかチェックしましょう。
$ sudo service mysql status
[sudo] *********のパスワード:
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
Active: active (running) since 日 2018-08-19 12:51:40 JST; 1h 23min ago
Docs: man:mysqld(8)
MySQL :: MySQL 8.0 Reference Manual :: 2.5.9 Managing MySQL Server with systemd
Process: 984 ExecStartPre=/usr/share/mysql-8.0/mysql-systemd-start pre (code=e
Main PID: 1050 (mysqld)
Status: "SERVER_OPERATING"
CGroup: /system.slice/mysql.service
└─1050 /usr/sbin/mysqld
8月 19 12:50:58 ubuntu systemd[1]: Starting MySQL Community Server...
8月 19 12:51:40 ubuntu systemd[1]: Started MySQL Community Server.
無事動いているようです。これで正常にインストールできました。
ハマった点
ここで、一点だけハマった点があるので追記しておきます。
それは、MySQL8.0から認証方式がSHA2に変わっている(※1)と言う点です。
今回、MySQLと同時にphpMyAdmin(ver4.8.1)(※2)もインストールしましたが、いざ動かそうとするとphpMyAdminにログインできないという事態になりました。
原因は、phpMyAdmin側が認証方式としてSHA2に対応していないことでした。
対処としては、MySQL側の認証方式を従来方式に戻すことで解決しました。すなわち、
etc/mysql/my.cnf
に以下を記述し、MySQL側を従来の認証方式に戻しました。
$ vi my.cnf
[mysqld]
default_authentication_plugin= mysql_native_password
設定を反映させるためのmySQLの再起動を忘れずに!
$ sudo service mysql restart
※1)MySQL8.0での変更点は、公式サイトにも明記されていて、きちんと読んで理解していれば問題にはならなかったのかもしれません。
※2)phpMyAdminはMySQLをブラウザで操作できるWebアプリケーションです。ここではインストール方法などは割愛しますが(こちらのサイト様など参考になりました。
まとめ
今回はデータベースMySQLのインストール方法をまとめました。