-
[TIL] 로컬에서 개발하기2) DB 원격 접속하기 postgreSQLTIL 2024. 1. 22. 21:58
EC2 인스턴스 서버 내에서 개발하던 것을 로컬에서 개발하기위해서 필요한 것은
프로젝트 폴더를 내려받았다고 끝이아니다.
기존에 같은 서버내에서 접속하던 DB들을 이제는 원격 접속을 해줘야하기 때문에 특정한 과정이 추가로 필요하다.
이는 DB들 Postgres, MongoDB, Redis 각각 하나하나 해줘야한다.
기본적으로 큰 과정은 모두 동일하다.
데이터베이스 원격 접속 국룰
1. DB 사용자 이름, 비밀번호로 계정을 만든다.
2. 사용자 이름에 대해서 권한을 부여한다, 데이터베이스를 생성한다
3. 설정 파일에서 원격 접속을 허용한다. (mongod.conf, postgres.conf .... 설정파일 조정.), 데이터베이스 재시작하기
4. AWS 인바운드 규칙을 편집한다. ( EC2 인스턴스 서버의 원격 접속 포트번호를 열어준다. 인스턴스내 DB에 원격 접속을 할 것이므로, DB의 고유 포트번호를 열어준다.)1. DB 사용자 이름, 비밀번호로 계정을 만든다)
DB의 외부접속은 반드시 계정 ID, PW가 필요하다.
기존에 같은 위치 EC2 인스턴스에 존재할때는 경우에따라 DB의 계정이 필요없을 수도 있었다.
하지만 이제는 외부의 컴퓨터로 원격 접속을 하는 상황이니까 계정 ID, pw가 필요하다.
왜냐하면, 계정이 없다고할때, 주소만알면 누구나 접속이 가능해지기 때문이다.
PostgreSQL 원격 접속 방법)
1. 데이터베이스를 만들기 전에 사용자를 만든다
CREATE USRE [USER_NAME] WITH PASSWORD '[PASSWORD]';
CREATE DATABASE [DB_NAME] OWNER [USER_NAME]2. DB내에서 사용자에게 권한부여
3. 설정 파일을 건든다
pg_hba.conf 경로)
ㄴ/etc/postgresql/12/main/pg_hba.conf
postgresql.conf 경로)
ㄴ/etc/postgresql/12/main/postgresql.conf
pg_hba.conf -> md5 로 변경
ㄴmd5와 peer 구분*
postgresql.conf -> listen * 로 변경4. aws 인스턴스 보안그룹에서 psql의 포트번호인 5432를 열어준다
'TIL' 카테고리의 다른 글
[AWS] aws 특정 EC2, S3에서 하나의 계정에만 접근 허용하기, IAM 정책 JSON, arn 문법구조 (0) 2024.02.01 [Postman] Postman 포스트맨 토큰값 자동 갱신하기 (0) 2024.01.26 로컬에서 개발하기1) 프로젝트 폴더 내려받기 (git clone) (0) 2024.01.22 캐싱 (0) 2024.01.14 [MongoDB] express - mongoDB 연결하기 (0) 2024.01.10