본문 바로가기
프로젝트/스프링 부트와 AWS로 혼자 구현하는 웹 서비스_실습

스프링부트와 AWS로 혼자 구현하는 웹 서비스 15_AWS

by dudung__ 2023. 8. 25.

07_3 내 pc에서 RDS에 접속해보기

 

ec2의 보안 그룹 ID 복사 -> 인바운드 트래픽 -> 붙여넣기 

 

+ 내 계정의 IP 붙여넣기 

 

 

●인텔리제이에 DB 플러그인 설치

 

RDS 정보 페이지 -> 앤드포인트 확인 -> 복붙

 

springboot-webservice.cpmu4exyjmic.ap-northeast-2.rds.amazonaws.com

 

 

인텔리 제이에서 => 플러그인 => database navigator => 설치 => 재시작

 

연결 테스트

이제 콘솔창을 열어볼 것임

 

 

 

=> 이름이 기억나지 않더라도, 스키마창을 보면 DB의 이름이 나와있음

=> 잘 받아왔다고 생각했는데, show 명령어가 아예 먹지 않았음

=> 그래서 검색을 해봤는데 database navigator가 잘 작동하지 않을 수 있으니,  내장 DB를 사용해야한다는 글을 보았음

 

https://github.com/jojoldu/freelec-springboot2-webservice/issues/757

 

[오류] p.285 DB Navigator의 연결오류가 납니다ㅠㅠ · Issue #757 · jojoldu/freelec-springboot2-webservice

책따라 몇번을 만들어도 intellij에서 연결이 안됩니다..ㅜ 무슨 문제일까요.. nc -zv로 RDB DB 인스턴스 3306포트 연결이 되는것도 확인 해봤는데 왜 intellij에서 연결이 안될까요..ㅠㅠ

github.com

=> 하지만 모든 방법을 동원하고 나서도, 해결이 안되서 일단 다른 방법으로 접근해보기로 함

 

 


다른 DB앱을 사용해봤음

 

https://dbeaver.io/

 

DBeaver Community | Free Universal Database Tool

DBeaver Universal Database Tool DBeaver Community is a free cross-platform database tool for developers, database administrators, analysts, and everyone working with data. It supports all popular SQL databases like MySQL, MariaDB, PostgreSQL, SQLite, Apach

dbeaver.io

=> 국비 수업중에 선생님이 언급한적이 있는 프로그램이라서 이걸로 접속을 해봤음

 

=> 인텔리제이에서 접속하던 방식이랑 동일하게 하면 됨

 

=> 쿼리가 성공적으로 진행된것을 볼 수 있음 ...!

 character_set_database 와 collation_connection 이 제대로 바뀌지 않았기 때문에 바꿔주는 쿼리를 실행

ALTER Database springboot_webservice

character set = 'utf8mb4'

COLLATE = 'utf8mb4_general_ci';

 

후에 다시 설정을 봐보면 

show variables like 'c%';

 

 

=> 잘 바뀐것을 볼 수 있음 

 

select @@time_zone, now();

=> 시간도 잘 바뀐것을 볼 수 있음

 

INSERT into test(content) values('테스트');

SELECT * from test;

 

=> 쿼리도 잘 진행되고, 한글고 잘 적용된 것이 보임

 

 

07_04 EC2에서  RDS 접근 확인

전에 접속했던 putty로 접속함

 

sudo yum -y install mysql 

 

접속해서 mysql을 깔아줌

mysql -u 계정명 -p(비밀번호) -h(호스트) 호스트주소(RDS엔트포인트)

 

=> 성공적으로 접속이 됨

 

 

show databases;

=> 내 DB도 잘 보이고

 

 

use DB 명;

=> DB 를  사용, 안에있는 내용을 볼 것임

 

show tables;

=> 아까 만들었던 test 테이블이 보이고,

 

 

select * from test;

=> 안에 insert 했던 내용도 잘 보이는것이 확인됨

 

다음에는 서버에 ec2 서버에 프로젝트를 배포할 것임 .