
https://dev.mysql.com/downloads/repo/yum/
현재 시점에서 최신 mysql 버전 확인
wget https://dev.mysql.com/get/mysql80-community-release-el9-5.noarch.rpm
yum localinstall mysql80-community-release-el7-3.noarch.rpm
yum install mysql-community-server
sudo systemctl start mysqld
sudo systemctl status mysqld

mysql에서 utf-8 인코딩 설정을 위한 것이다.
vim /etc/my.cnf
파일을 열고 맨 아래 부분에 추가해주자,
추가 방법은 키보드 방향키를 이용해 원하는 위치까지 간다음 i를 눌러 수정
수정이 끝나면 :w 를 입력해서 저장
:q 를 입력해서 나오기

mysql을 처음 설치하면 임시비밀번호가 log에 찍혀있기 때문에 , log를 통해 root 비밀번호를 알아내자
cat /var/log/mysqld.log | grep 'temporary password'

root@localhost 뒤에있는것이 비밀번호
알아낸 임시비밀번호를 이용해 mysql에 접속한다.
mysql -u root -p

정상적으로 접속되면 root 비밀번호를 변경하자
alter user 'root'@'localhost' identified with mysql_native_password by '원하는비밀번호';
비밀번호 정책에 따라 복잡성이 부족하면 변경이 안된다는 에러가 뜰 수 있다. 대문자, 소문자, 일정길이 이상, 특수문자 조합이면 생성된다.
현재까지 완료한 셋팅이다.

aws 콘솔로 넘어가서

보안그룹 에 들어가서 생성된 security group id 클릭
인바운드 규칙 편집 클릭

규칙 추가 후 아래와 같이 설정 , 규칙 저장하고 나오기

CREATE USER '아이디'@'로컬/외부 접속' IDENTIFIED BY '비밀번호';
-> ex) CREATE USER 'yskim'@'%' IDENTIFIED BY '1234';
CREATE DATABASE 데이터베이스명;
GRANT ALL PRIVILEGES ON *.* to 'User명'@'%';
FLUSH PRIVILEGES;
vim /etc/my.cnf
마지막에 추가
bind-address=0.0.0.0
systemctl restart mysqld
aws 콘솔에서 인스턴스에 들어가면 퍼블릭 ipv4 DNS를 복사

신규 연결 셋팅을 아래와 같이 진행
server host : 퍼블릭 ipv4 dns
port : 3306 ( aws 인바운드 규칙 설정 시 설정한 포트)
Database : 9번 항목에서 생성한 Database 이름(필수는 아님 옵션임)
username : 9번 항목에서 생성한 아이디
password : 생성한 비밀번호

이러고 연결 테스트시 만약
"Public Key Retrieval is not allowed" 오류 가 발생하면
Driver properties 탭으로 가서

allowPublicKeyRetrieval 속성을 찾고, 이 속성의 값을 true로 설정한다.
없으면 하단에 보면 + 모양으로 추가할 수 있으니 추가해줄 것.
아래와 같이 연결 성공
