AWS の EC2 の Amazon Linux 2023 に MySQL インストールして外部から接続した時の備忘録メモ
初期パスワードは探すの大変だった...log から取得しかないかは謎です...
実施したのは 2024/04/03 時点です
ざっくり流れは...
- EC2インスタンス起動
- EC2ログイン
- MySQLインストール
- MySQLユーザ作成
- 外部からMySQL接続
EC2インスタンス起動
AMI は Amazon Linux 2023にして ssh で接続するのでキーペアとかちゃんと設定する
MySQL に外部から接続できるようにセキュリティグループを追加
そのほかは自由でOK
EC2 ログイン
windows pc で作業したので putty 使ってログイン
TeraTermがv5になったのでそれでも良いかも
putty の ppk 指定は [Connection] - [Auth] - [Credentials] のところから
root でログイン
sudo -i
MySQLインストール
-
リポジトリ
dnf localinstall https://dev.mysql.com/get/mysql80-community-release-el9-5.noarch.rpm
-
パッケージ
dnf install mysql-community-server mysql-community-client mysql-community-devel
MySQLサーバ起動
systemctl start mysqld
MySQL の root パスワード設定、外部接続用ユーザ作成
-
MySQL の root の初期パスワード確認
cat /var/log/mysqld.log | grep root@localhost
# 実行結果はこんな感じ 2024-04-02T16:10:50.386960Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: tPd*********
-
MySQL に root でログイン
コマンド実行でパスワード入力になるので上のパスワードをコピペmysql -u root -p
-
MySQL の root のパスワード変更
なんとなく初期パスワード忘れそうなので適当なやつに変更しておく
大文字・小文字・数字・記号含む8文字以上がポリシーになってるset password = 'abc******';
-
外部接続用のユーザ作成
create user 'user'@'%' identified by 'abc****'; grant all on *.* to 'user'@'%';
# 確認用SQL select user, host from mysql.user;
外部から接続確認
windows pc の MySQL Workbench からアクセスしてみる
Hostname に EC2 のパブリックIP 、Username はさっき作ったユーザ使う
Test Connection でパスワード入力で接続設定つくってつながればOK