우분투 서버 20.04 LTS Postgresql12 설치와 설정
우분투 서버 20.04 LTS 에서 Postgresql 의 최신 버전인 Postgresql12 를 설치하는 방법을 설명한다.
사실 공식 가이드대로 하면 별 문제는 없다.
공식 인스톨 가이드 – https://www.postgresql.org/download/linux/ubuntu/
pgdg.list 파일을 만들고 nano 편집기로 열자.
sudo touch /etc/apt/sources.list.d/pgdg.list sudo nano /etc/apt/sources.list.d/pgdg.list
pgdg.list 파일에 아래 내용을 넣고 저장하자. nano 에디터에서 저장은 Ctrl+O, 닫기는 Ctrl+X 이다.
deb http://apt.postgresql.org/pub/repos/apt/ focal-pgdg main
아래 커맨드를 차례대로 실행하면 설치까지 끝난다.
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - sudo apt update sudo apt install postgresql-12
아래 글에서 유저 추가와 외부에서 접속하는 설정을 가져왔다.
관련글: Postgresql 12 버젼을 우분투 18.04 에 설치 설정
유저 추가
아래 커맨드 중 elmitash 부분을 사용하고 싶은 아이디로 바꿀것.
postgres 유저로 바꾼 후, 새로운 유저를 추가
패스워드를 두번 입력
sudo su - postgres createuser --pwprompt --interactive elmitash
Shall the new role be a superuser? (y/n) y
y를 입력해 관리자 권한을 준다
접속 테스트
psql -h localhost -U elmitash -d postgres
외부 접속
postgresql.conf 파일을 수정
sudo nano /etc/postgresql/12/main/postgresql.conf
아래 부분을 찾아 주석 해제하고 localhost 를 * 로 바꾼다. 특정 IP에서만 접속할 경우엔 IP 주소를 쓰면 된다.
#listen_addresses = 'localhost' # what IP address(es) to listen on; >> listen_addresses = '*' # what IP address(es) to listen on;
pg_hba.conf 파일을 수정
sudo nano /etc/postgresql/12/main/pg_hba.conf
접속 인증을 할 IP 범위를 설정하기 위해서 아래 내용을 추가한다. 내부 네트웍일 경우 아래 내용에서 아이피 정도만 바꾸면 될듯.
host all all 192.168.1.1/24 md5
설정을 마쳤으면 Postgresql 서비스 재시작
sudo systemctl restart postgresql
서버 시간(타임존)도 안맞추고 설치했다가 시간이 안맞아서 보니 타임존 설정이 잘못 되어 있었다.
아래 형식으로 지역에 맞는 걸로 DB 쿼리를 날리면 된다.
SET TIME ZONE 'Asia/Seoul'; SET TIME ZONE 'Asia/Tokyo';