Ubuntu 20.04へ最新版のMySQL 8.0をインストールしていきます。
公式の手順に従って、MySQLのインストールを行います。
本記事の内容
- MySQLとは?
- MySQLのシステム要件
- MySQLのインストール
- MySQLの初期設定
それでは、上記に沿って解説します。
MySQLとは?
MySQLは、最も有名なオープンソースのデータベースです。
ただし、最近はその人気に陰りが出てきています。
以下は、「MySQL」の検索ボリュームの傾向です。
期間は、直近5年間となります。

Oracleに買収されて以降は、MySQLの人気は下がる一方です。
それでも、まだまだ最も利用されているデータベースであることに変わりありません。
何より、安定した技術(枯れた技術とも言う)には安心感があります。
その分だけノウハウも蓄積されていることでしょう。
そんなMySQLですが、バージョンがちょっと複雑です。
現在MySQLのバージョンには、5系と8系が存在しています。
もちろん、機能的には違いがあります。
8系の方が新しくて、性能もいいはずです。
「MySQL 8.0: MySQL 5.7よりも最大2倍高速」
MySQLの公式では、上記のように宣伝がなされています。
しかし、いまだに5系もメンテナンスはされています。
それは、ずっと5系のデータベースが利用されているという事情もあるのでしょう。
データベースのメジャーバージョンアップは、普通は怖くてできません。
せいぜいマイナーバージョンアップ程度でしょう。
以上、MySQLについて説明しました。
次は、MySQLのシステム要件を確認します。
MySQLのシステム要件
現時点(2021年5月末)でのMySQLの最新バージョンは、8.0.25です。
この最新バージョンは、2021年4月24日にリリースされています。
サポートOSに関しては、以下を含むクロスプラットフォーム対応となります。
- Windows
- macOS
- Linux
基本的には、メジャーなOSであれば何でも大丈夫でしょう。
なお、今回は次のOSにインストールしていきます。
$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04 DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04.2 LTS"
以上、MySQLのシステム要件についての説明でした。
次は、MySQLをインストールしていきます。
MySQLのインストール
インストールは、公式が用意しているdebパッケージを利用します。
最新版をインストールするには、この方法が確実です。
インストールは、次の3つの処理に分けて説明します。
- debパッケージのダウンロード
- debパッケージのインストール
- aptコマンドによるインストール
debパッケージのダウンロード
MySQL公式のダウンロードページ
https://dev.mysql.com/downloads/mysql/
OSと対象バージョンを選択します。

選択すると、該当するパッケージの一覧が表示されます。
先頭に表れる次のリンクを選択します。

ページを遷移していくと、現状では「mysql-apt-config_0.8.17-1_all.deb」がダウンロード可能です。
では、ダウンロードは次のコマンドで行います。
$ wget https://dev.mysql.com/get/mysql-apt-config_0.8.17-1_all.deb
mysql-apt-config_0.8.17-1_all.debが、保存されました。
debパッケージのインストール
ダウンロードしたdebパッケージをリポジトリに追加します。
$ sudo dpkg -i mysql-apt-config_0.8.17-1_all.deb
上記を実行すると、次の画面が表示されます。

「Ok」にカーソルを合わせて、Enterを押します。
次のような表示に戻ります。
$ sudo dpkg -i mysql-apt-config_0.8.17-1_all.deb 以前に未選択のパッケージ mysql-apt-config を選択しています。 (データベースを読み込んでいます ... 現在 143043 個のファイルとディレクトリがインストールされています。) mysql-apt-config_0.8.17-1_all.deb を展開する準備をしています ... mysql-apt-config (0.8.17-1) を展開しています... mysql-apt-config (0.8.17-1) を設定しています ... Warning: apt-key should not be used in scripts (called from postinst maintainerscript of the package mysql-apt-config) OK $
ここで、「apt-get update」を実行します。
$ sudo apt-get update
これでリポジトリへの追加が完了です。
aptコマンドによるインストール
準備が整ったので、aptコマンドでインストールが可能です。
$ sudo apt install mysql-server
上記を実行して、すぐに出てくる問いには「Y」で対応します。
すると、次の画面に切り替わります。

管理者のパスワードを設定します。
パスワードを入力して「Ok」を選択。
パスワードの確認画面です。

先ほど設定したパスワードを入力して「Ok」を選択。
バージョンUPして、セキュリティの方式が変更されたことの案内です。

「Ok」を選択。
案内された新方式が選択されています。
そのままの状態で「Ok」を選択。

画面が切り替わって、インストールが完了します。
以上、MySQLのインストールを説明しました。
次は、MySQLの初期設定を行います。
MySQLの初期設定
まずは、セキュリティを高めましょう。
デフォルトのままだと、リモートでのrootログインを認めています。
そのようなリスクのある設定を変更しましょうということです。
付属のスクリプトを実行すれば、一気にその設定をやってくれます。
$ sudo mysql_secure_installation
上記を実行するとrootのパスワードを聞かれます。

先ほど設定したパスワードを入力します。
パスワードを厳しくチェックするツールを入れるかどうかの確認です。

折角なので、そのツールを入れましょう。
「y」を入力して、Enter。
強度の選択です。
ここは、みなさんご自由にどうぞ。

とりあえず、私はLOWである「0」を入力してEnter。
そうすると、現在アクセス中のrootのパスワードがチェックされました。

強度は、「50」ということのようです。
変更する必要がある場合は、ここで変更しましょう。
変更しないので「n」を入力して、Enter。
次は、テストユーザーの扱いについてです。

必要ないモノは削除しましょう。
「y」を入力して、Enter。
リモートのrootログインを許可するかどうかの確認です。

危険であるため、許可しません。
普通は、別でユーザーを作成します。
「y」を入力して、Enter。
デフォルトで用意されている「test」データベースに扱いについての確認です。

必要のないモノは消しましょう。
「y」を入力して、Enter。
ここまでの変更を即反映するかどうかの確認です。

すぐに反映させましょう。
「y」を入力して、Enter。
最後に「All done!」で表示されれば、完了です。
以上、 MySQLの初期設定についての説明でした。
今回は、Ubuntuへの最新版MySQLをインストールする方法を解説しました。
初期設定まで終われば、とりあえずは利用可能です。
ただ、rootを利用するのは危険と言えます。
それにrootのリモートアクセスは禁止にしましたからね。
次に、やるべきことはユーザーの作成となります。
次回(別の記事で)は、ユーザーの作成についてまとめていきます。
追記 2021年5月29日
ユーザーの作成ついては、次の記事で解説しています。