AWS EC2 Linux2에 Postgresql을 직접 설치하고 스프링 부트로 연동하기까지의 작업을 해보자.
Postgresql 설치
먼저 EC2에 접속해서 posrgresql 관련 패키지를 설치해준다.
sudo amazon-linux-extras install postgresql10 epel -y
sudo yum install postgresql-server postgresql-devel -y
설치한 postgresql 버전을 확인해보자
/usr/bin/postgres --version
버전 확인 완료.
Postgresql DB 접속
아래의 명령어를 입력해 db를 실행시켜준다.
sudo /usr/bin/postgresql-setup --initdb
sudo systemctl enable postgresql
sudo systemctl start postgresql
postgresql을 설치할 때 자동으로 생성되는 계정인 postgres 유저로 db에 접속한다.
sudo su - postgres
psql로 쿼리를 실행할 수 있다.
user/database 생성
CREATE USER noums PASSWORD ‘password’ SUPERUSER;
CREATE DATABASE bigwave OWNER noums;
외부환경에서 접속할 수 있게 postgresql 설정 변경
/var/lib/pgsql/data/postgresql.conf
/var/lib/pgsql/data/pg_hba.conf
postgresql.conf -> listen_addresses = '*'
pg_hba.conf -> host all all 0.0.0.0/0 md5
sudo systemctl restart postgresql
설정 파일 변경 후 postgresql 재시작을 해주어야 적용된다.
AWS 보안 그룹 인바운드 규칙 설정
외부에서 접속할 수 있게 postgresql 5432 포트 번호를 개방해주어야 한다.
접속 확인
인텔리제이에서 postgresql db에 접속이 잘 되는지 테스트해보자.
Name : 접속할 DB
Host : 퍼블릭IP
Port : 5432
Databse : postgres
스프링 부트에 postgresql db 접속 정보 설정하기
먼저 build.gradle에서 postgresql 의존성 추가
application.properties 설정하기
# PostgreSql
spring.datasource.url=jdbc:postgresql://3.35.50.206:5432/postgres
spring.datasource.username=
spring.datasource.password=
spring.datasource.show-sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
# JPA
spring.jpa.properties.hibernate.use_sql_comments=true
spring.jpa.hibernate.ddl-auto=create
spring.jpa.show_sql=true
application.properties 설정까지 마쳤으면 스프링 애플리케이션을 실행해서 데이터를 저장해보자.
테이블이 생성되고 값이 제대로 insert 된 것을 확인할 수 있다.
https://devegoist.tistory.com/1#recentComments
https://awse2050.tistory.com/44
'Dev > AWS' 카테고리의 다른 글
Travis CI,CodeDeploy,S3,Nginx로 EC2에 무중단 배포하기(2) - Travis CI,S3,CodeDeploy 연동 (0) | 2022.04.06 |
---|---|
Travis CI,CodeDeploy,S3,Nginx로 EC2에 무중단 배포하기(1) - Travis CI,S3 연동 (0) | 2022.04.05 |
[AWS] CloudWatch를 활용한 docker 이미지 로그 관리하기 (1) | 2022.03.06 |
[AWS] EC2 생성하고 서버배포하기 (0) | 2022.02.10 |
[AWS] Security Group(보안그룹) (0) | 2022.01.04 |
댓글