이전에 aws ec2 서버에 mariadb를 설치했습니다. 외부 ip에서도 접속을 할 수 있도록 설정하겠습니다.
mariadb의 환경설정 파일을 먼저 살펴봅니다. 서버의 os마다 경로와 파일 이름이 다른데 linux 경우는 다음과 같습니다.
vi /etc/my.cnf.d/mariadb-server.cnf
bind-address=0.0.0.0
부분에 주석 처리(#)를 해줍니다. 아마 mariadb 보안 설정 시 외부 접속 허용 항목에 'Y'를 선택했다면 주석 처리되어있을 겁니다.
다음으로 db의 root 계정으로 접속하여 외부 접근 권한을 적용합니다. 보안 측면에서 좋은 방법은 아니지만, 저는 root 계정의 외부 접근을 허용하겠습니다.
접근 가능한 계정 정보를 조회합니다.
SELECT host, user, password FROM mysql.user;
root 계정으로 외부 접근 권한이 없는 것을 확인할 수 있습니다.
grant all privileges on *.* to 'root'@'%' identified by '[password]';
권한 추가 또는 삭제 후 설정을 적용해줍니다. (저는 해당 과정 없이 자동으로 설정되었습니다)
FLUSH PRIVILEGES;
intellij에서 ec2 서버에 설치한 mariadb에 접속해보도록 합시다.
오른쪽 상단에 'Database'를 클릭하고 'Data Source'에서 'MairaDB'를 선택합니다.
Name, User, Password를 입력하고 Test Connection을 눌러 접속을 확인합니다.
https://docs.3rdeyesys.com/database/ncloud_database_mysql_mariadb_config_my_cnf.html
https://veneas.tistory.com/entry/MySQL-MySQL-외부-접속-불가능-현상-해결-방법-접근-권한
https://8ugust-dev.tistory.com/19
https://nali.tistory.com/m/53
(글에 업로드 된 이미지 중 외부 자료가 있습니다. 절대 악용하지 마세요.)