LoginSignup
4
2

More than 3 years have passed since last update.

AWS Amazon LinuxサーバにMySQLをインストールした際に詰まった箇所の備忘録

Posted at

はじめに

AWSのAmazon Linux 2にMySQL5.7をインストールしようとした際に詰まった(?)箇所が何点かあったので備忘録を。詰まった内容は以下の通りです。

行おうとした作業

  1. AWSのVPC上に構築した仮想サーバにMySQLをダウンロード+インストール
  2. インストールしたMySQLにrootユーザでログインし、DBの初期設定を行う

発生した問題

1.デフォルトで入っているMariaDBとの競合でMySQLがインストールできない
2.MySQL 5.7のrootユーザに初期パスワードが設定されており、ログインできない

※本記事執筆時点(2019/05/11)での環境の内容になります。

1. MariaDBとの競合

Amazon Linux 2にはデフォルトでMySQLの後継となるMariaDBというオープンソースのDBソフトがインストールされており、私の環境ではMySQLのインストールに失敗していました。
以下の手順でMariaDBをアンインストール→MySQLをインストールで解決しました。

# MariaDBのアンインストール
$ sudo yum remove mariadb-libs

# MySQLをダウンロード + インストール
$ sudo yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
$ sudo yum -y install mysql-community-server

(とはいえ、WordPress用のDBなのでMariaDBのままでも良かったのかも・・・)

2. MySQL 5.7 rootユーザの初期パスワード

MySQL 5.7では初回起動時(systemctl start mysqldのタイミング?)でrootにランダムな初期パスワードが生成されるらしく、このパスワードが分からないためログインに失敗するという事態になりました。
これを解決するためにはMySQLのログファイルから初期パスワードを確認する必要があります。MySQLは/var/log/mysqld.log になります。ログファイル内から「temporary password」という文字列を検索し、付与されたrootユーザのパスワードを調べます。

# MySQLのログファイル内からrootユーザーに付与されたパスワードを検索
sudo cat /var/log/mysqld.log | grep 'temporary password'
[Note] A temporary password is generated for root@localhost: XXXXXX

#上記の「XXXXXX」の部分が初期パスワード

なお、MySQLのログファイルなので初回起動から時間が流れると、初期パスワードを付与した上記ログが無くなってしまうので、初回起動の操作とセットですぐ行うべき(というか普通そうするハズ)。

参考文献

第10回 yum, rpmインストールにおけるMySQL 5.6とMySQL 5.7の違い
書籍:Amazon Web Services 基礎からのネットワーク&サーバー構築

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2