Windows에 PostgreSQL 설치해서 사용해보기

https://www.enterprisedb.com/downloads/postgres-postgresql-downloads 에 클릭해서 들어가면 여러가지 버전의 PostgreSQL을 다운로드 받을 수 있다.


이 중에서 가장 최신 버전(16.4)를 다운로드 하여, 설치프로그램으로 설치하면 됩니다.






적당한 비밀번호를 입력해주세요.







Finish 버튼을 누르기 전에 체크박스를 언체크해주세요. 그리고, Finish 누르면, 설치 완료.


서비스에도 등록되어서, 자동으로 서버가 실행이 된다. Windows 에서 PostgreSQL을 운영하려면 이렇게도 괜찮은데, 보통은 개발 목적으로 설치하게 된다. 그래서, 나는 이렇게 설치프그로램으로 설치하는 것보다는 scoop ( https://scoop.sh ) 을 이용해서 설치한다. 일단 설치한 PostgreSQL을 삭제하고.... scoop 을 준비한다.

 

그리고, 커맨드창에서 scoop install main/postgresql 를 입력해서 다시 설치를 진행한다.



여기에서 마지막 Notes 를 잘 확인해자. PostgreSQL 시작/종료를 pg_ctl start / pg_ctl stop 으로 할 수 있다. 그리고, pc_ctl register -N PostgreSQL 로 서비스에도 등록할 수 있다. 마지막으로 수퍼유저인 postgres 의 비밀번호는 없다고 나온다. 일단, pg_ctl start 로 서버를 실행시키자.


그리고, 시작의 프로그램메뉴를 뒤져보면, Scoop Apps 아래에 pgAdmin 4 라는 프로그램이 설치된 것을 확인해볼 수 있다. 이름을 보면 알겠지만, PostgreSQL GUI 관리 프로그램이다. 일단 실행을 해보자.


실행하면 아래와 같이 나오고, 왼쪽의 Servers 에 마우스 우측 버튼을 클릭해서 팝업버튼을 표시하고, Register > Server... 를 선택해준다. 

아래 화면이 나오면, General 탭의 Name에 localhost 라고 입력하고,


Connection 탭을 선택해서 Host name/address 에 localhost 를 입력해준다. 그리고, Save 버튼을 클릭한다.


그러면, 아래처럼 설치된 PostgreSQL 에 연결될 것이다.


pgAdmin 4에 접속하는 법을 알아보았고, 우리는 커맨드툴을 주로 사용할 것이라서 psql 명령어로 로그인해봅시다. 커맨드창에서 psql -U postgres 를 입력합니다.


여기에서 \l 이라고 입력하면, 존재하는 database 목록을 출력해준다.


일단 새로운 User를 하나 생성해봅시다.


-- CREATE USER 아이디 WITH PASSWORD '비밀번호';
CREATE USER test_user WITH PASSWORD 'test123';

 

\dg 를 입력하면 현재 존재하는 사용자를 볼 수 있습니다.


자... 그러면... 이제 Database 를 생성해봅시다.


-- CREATE DATABASE 디비이름 WITH ENCODING='utf-8' OWNER 아이디;
CREATE DATABASE test_db WITH ENCODING='utf-8' OWNER test_user;


\l 로 Database(test_db)가 생성되었는지도 확인해봅시다.


이제, \q 로 psql 을 빠져나가서, test_user로 test_db에 재접속해봅니다.

테스트용으로 테이블을 생성해봅시다.


CREATE TABLE TB_ADMIN
(
    ADMIN_NO Serial NOT NULL,
    LOGIN_ID Varchar(20) NOT NULL UNIQUE,
    PASSWD Varchar(20) NOT NULL,
    NICK Varchar(20) NOT NULL,
    EMAIL Varchar(40),
    PRIMARY KEY (ADMIN_NO)
) Without Oids;

 

\d 를 입력하면 현재 존재하는 테이블을 볼 수 있습니다.


다음과 같이 해당 테이블의 내용을 조회해볼 수도 있습니다. 아직 데이터가 들어있지 않으니, 아무 것도 안나오겠지요.


테스용 데이터를 2개 넣어보겠습니다.


INSERT INTO TB_ADMIN(LOGIN_ID, PASSWD, NICK, EMAIL)
VALUES('honggildong', 'ajtwlddl', '홍길동', 'hgd@gmail.com');
 
INSERT INTO TB_ADMIN(LOGIN_ID, PASSWD, NICK, EMAIL)
VALUES('jangnara', 'dlQmsdl', '장나라', 'jnr@gmail.com');


다시 조회를 해보면, 다음처럼 2개의 데이터가 들어있는 것을 확인할 수 있을 겁니다.


데이터 수정도 해볼까요? ^^


UPDATE TB_ADMIN SET nick = '홍길똥' WHERE LOGIN_ID = 'honggildong';
UPDATE TB_ADMIN SET nick = '짱나라' WHERE LOGIN_ID = 'jangnara';


확인해보면, NICK 이 '홍길똥'과 '짱나라'로 바뀌어 있을 거에요.

그러면, 마지막으로 데이터 삭제도 해봅시다.


DELETE FROM TB_ADMIN WHERE LOGIN_ID = 'honggildong';


역시 확인해보면,  '홍길똥'이 삭제되고 '짱나라'만 남은 것을 볼 수 있습니다.


\q 로 psql 을 일단 빠져나옵니다. DB 백업을 알아보자구요. pg_dump 라는 프로그램을 사용합니다. 아래처럼 실행해주면, test_db.bak 이라는 백업파일이 생성됩니다.


다시, psql 로 로그인 해서 DROP TABLE 로 TB_ADMIN 테이블을 날려줍니다. \d 로 확인해보고 SELECT 문으로 확인해보세요. 확실히 날라갔지요.


\q 로 빠져와서 Database 를 복구해봅시다.


위와 같이 진행되어 복구가 완료됩니다. 이를 확인해보려면, psql 로 다시 로그인해서 \d 를 입력해보고, SELECT 문으로 데이터를 조회해보면 됩니다.

여기까지 해서, Windows 에 PostgreSQL 을 설치하고, 기본적인 사용법을 함께 알아보았습니다. SQL문에 대해서는 좀 더 심도있게 따로 공부할 필요는 있습니다.




댓글

이 블로그의 인기 게시물

야마하 디지털 피아노 YDP-140

테이블위로 마우스 커서 이동시 색깔 변경하기

피아노 연습