Amazon Linux2にMySQL5.7をインストールしてrootのパスワードをなしに設定する

2021年12月24日金曜日

AWS MySQL

t f B! P L
Amazon LinuxにMySQL5.7をインストールした時にはデフォルトでrootのパスワードが設定されていなかったのですが、Amazon Linux2では設定されていました。開発用なので、次の手順でrootのパスワードをなしに設定しました。

インストール

MySQL5.7のインストール手順は次のとおりです。MariaDBをアンインストールしてからMySQL5.7をインストールします。

sudo service mariadb stop
sudo yum -y erase mariadb-config mariadb-common mariadb-libs mariadb
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm -y
sudo yum-config-manager --disable mysql80-community
sudo yum-config-manager --enable mysql57-community
sudo yum install mysql-community-server -y
sudo systemctl start mysqld.service 
sudo systemctl enable mysqld.service

rootパスワードの設定

MySQLの初期パスワードは、/var/log/mysqld.log の中に記載されています。

$sudo cat /var/log/mysqld.log | grep password
[Note] A temporary password is generated for root@localhost: [英数字の初期パスワード]
次の手順でrootのパスワードをなしに設定します。
  1. MySQLをrootユーザーで起動する。パスワードは /var/log/mysqld.logの初期パスワード
  2. 暫定的にrootのパスワードを変更する(例えばXY@isono1など、8文字以上、大文字小文字特殊文字を含む必要あり)
  3. uninstall plugin validate_passwordでパスワード設定の厳格なルールを無効にする
  4. root@localhost=password('')でrootのパスワードを無しに設定する
ec2-user:~/environment $ mysql -u root -p
Enter password: [英数字の初期パスワード]
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.36 MySQL Community Server (GPL)

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'XY@isono1' ;
Query OK, 0 rows affected (0.00 sec)

mysql>uninstall plugin validate_password;
Query OK, 0 rows affected (0.01 sec)

mysql>set password for root@localhost=password('');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> quit
Bye

このブログを検索

QooQ