lulu

【AWS】EC2上にMySQLを構築して、外部から接続する方法

やること

新規で起動したEC2サーバー上にMySQLをinstallして、外部から接続できるようにする

MySQLをinstall

新規構築したEC2にMySQLをinstall

$ sudo yum update

# MariaDBを削除
$ sudo yum remove mariadb-libs

# MySQLのリポジトリ追加
$ sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

# MySQLに必要なパッケージの取得
$ sudo yum install --enablerepo=mysql80-community mysql-community-server
$ sudo yum install --enablerepo=mysql80-community mysql-community-devel

# ログファイルを作成
$ sudo touch /var/log/mysqld.log

# MySQLの起動とEC2再起動に起動するように設定
$ sudo systemctl start mysqld
$ sudo systemctl enable mysqld

MySQLをsetup

rootユーザーを設定する方法

/var/log/mysqld.log からrootユーザーのpasswordを取得

$ mysql -uroot -p [password]

# 新規ユーザー作成
mysql> CREATE USER lulu IDENTIFIED BY 'password';

こちらを参考にさせていただきました。

外部から接続

ローカルPCから以下で接続可能

$ mysql -ululu -h グローバルIP -p
Enter password: password

※security_groupの3306ポートを解放しておく必要があります。