すぐに忘れるのでメモ書き。
対象OSはCentOS7.5.1804。
リポジトリの追加
sudo rpm -ivh http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
パッケージの切り替え(MySQL5.7をインストールするとき)
MySQL8.0をインストールする場合は実施不要。
sudo yum-config-manager --disable mysql80-community
sudo yum-config-manager --enable mysql57-community
リポジトリ定義ファイルは以下で確認可能。
vi /etc/yum.repos.d/mysql-community.repo
MySQLのインストール
sudo yum install mysql-community-server
MySQLの起動
sudo service mysqld start
初期生成パスワードの確認
rootユーザーの初期パスワードを確認する。
grep 'temporary password' /var/log/mysqld.log
MySQLにログイン
以下コマンドを入力するとパスワードの入力を求められるので、上記で確認したパスワードを入力する。
mysql -u root -p
パスワードポリシー(文字長、複雑さ)の変更
初期状態ではシステム変数以下のようなパスワードポリシーとなっている。
validate_password_length=8 // パスワードの長さは8文字以上
validate_password_policy=MEDIUM // パスワードに大文字、小文字、数字、記号のすべてを最低1文字以上含む
簡単なパスワードを設定可能にするため(本番では当然良くないが、検証用のため)以下の通りシステム変数を変更する。(パスワードの長さは4文字以上、文字種は問わない)
SET GLOBAL validate_password_length=4;
SET GLOBAL validate_password_policy=LOW;
パスワードの変更
初期パスワードを変更しない限り他の操作が行えないため(上記のシステム変数設定は可能)、パスワードを変更する。
set password for root@localhost=password('xxxxxxxx');