devops/aws

(AWS EC2)Mysql Server 설정

ri5 2021. 5. 15. 19:55

1. aws port 추가

인바운드 규칙 추가에서 mysql 포트를 추가한다.

2. mysql download

sudo su 를 입력해서 관리자 권한으로 바꿔준 후 apt-get update 입력해서 업데이트가 끝나면
apt-get install mysql-server 를 입력해서 다운로드.

 

3. mysql 로그인

mysql -u root -p mysql 입력 후 password는 설정하지 않았으니 Enter를 눌러준다.

 

4. 현재 암호 확인

// mysql 5.x 는 "password" 또는 "authentication_string"으로 확인.
mysql> select Host, User, Password from user;
mysql> select Host, User, authentication_string from user;

// mysql 8.x
mysql> select Host, User, authentication_string from user;

5.비밀번호 변경

// mysql 5.x
mysql> update user set password=password('비밀번호') where user='계정이름';
mysql> update user set authentication_string=password('비밀번호') where user='계정이름';

// mysql 8.x
mysql> alter user '계정이름'@'localhost' identified with mysql_native_password by '비밀번호';

비밀번호를 변경해준다.

6. 저장후 종료

mysql> FLUSH PRIVILEGES;
mysql> exit
Bye

7.mysql.cnf 설정

cd /etc/mysql/mysql.conf.d 입력해서 mysql.conf.d로 이동후에 nano mysqld.cnf 입력.

-ctrl+o 입력후 Enter 입력 bind address를 0.0.0.0으로 수정.

-다시 ctrl+o입력하고 Enter입력 그후에 ctrl + x 입력.

-cat mysqld.cnf 입력해서 변경 되었는지 확인.

8. 외부 접속을 위해 user를 만들고, 권한 부여.

mysql> create user 'username'@'%' identified by 'password';
mysql> grant all privileges on *.* to username@'%';


-root계정으로 하려면 아래 코드처럼 입력

mysql> update user set Host='%' where User='root';

9. mysql접속확인

mysql -h [ec2_ip_address] -P 3306 -u [user] -p