CentOS 7 に MySQL 5.7 をインストールする
CentOS 7 上で MySQL 5.7 をインストールして使える状態にするまでの手順を説明します。
yum にリポジトリを追加する
MySQL をインストールするには yum に外部のリポジトリを登録する必要があります。
sudo yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm -y
コマンドを実行してリポジトリの登録が完了したら、実際に MySQL のパッケージを検索して登録に成功していることを確認します。
sudo yum search mysql
mysql-community-server
が検索結果に出てくればリポジトリの追加は成功しています。
インストールする
リポジトリの登録が完了したら、通常のパッケージと同じようにインストールすることができます。
sudo yum install mysql-community-server -y
インストールが完了したら、MySQL のバージョンを表示させてインストールが成功していることを確認します。
sudo mysqld --version
バージョン情報が正しく表示されればインストールは完了です。
MySQL の起動
インストール直後は MySQL Server が起動していないため、起動させます。
sudo systemctl start mysqld.service
root ユーザーのパスワードの確認
MySQL の root ユーザーのパスワードは初回起動時に自動生成されます。自動生成されたパスワードは /var/log/mysqld.log
ファイルに記載されているため、以下のコマンドを実行してパスワードを確認します。
sudo grep 'temporary password' /var/log/mysqld.log
検索の結果出てきた行にパスワードが記述されているため確認します。
2020-01-16T06:23:28.165738Z 1 [Note] A temporary password is generated for root@localhost: XXXXXXXXXXXX
この例の場合最後の XXXXXXXXXXXX
の部分にパスワードが表示されます。
MySQL へのアクセス
調べた初期パスワードを利用して MySQL にアクセスします。
sudo mysql -uroot -p
パスワードを確認されるため、先ほど調べたパスワードを入力します。
パスワードの変更
自動生成されたパスワードを変更します。自動生成されたパスワードのままでは SQL コマンドを実行できないようになっているためこの操作は必須になります。
MySQL 上で以下の様な SQL 文を実行してパスワードを変更します。この例では new password
の部分に新しいパスワードを設定します。
alter user root@localhost identified by 'new password';
MySQL に設定されているどの程度の強度のパスワードを認めるかの設定次第ではパスワード変更に失敗する場合があります。