1. 접속
C:\Program Files\PostgreSQL\14\bin>psql -U postgres
암호:
psql (14.1)
도움말을 보려면 "help"를 입력하십시오.
postgres=# \l
데이터베이스 목록
이름 | 소유주 | 인코딩 | Collate | Ctype | 액세스 권한
-------------------+----------+--------+------------------+------------------+-----------------------
blog.daonelab.com | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 |
postgres | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 |
template0 | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 | =c/postgres +
| | | | | postgres=CTc/postgres
(4개 행)
postgres=# \dn
스키마(schema) 목록
이름 | 소유주
--------+----------
public | postgres
(1개 행)
postgres=#
postgres=# \q
C:\Program Files\PostgreSQL\14\bin>
2. DB 삭제
postgres=# drop database "blog.daonelab.com";
DROP DATABASE
postgres=# \l
데이터베이스 목록
이름 | 소유주 | 인코딩 | Collate | Ctype | 액세스 권한
-----------+----------+--------+------------------+------------------+-----------------------
postgres | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 |
template0 | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 | =c/postgres +
| | | | | postgres=CTc/postgres
(3개 행)
3. DB 생성
postgres=# create database "blog.daonelab.com";
CREATE DATABASE
postgres=# \l
데이터베이스 목록
이름 | 소유주 | 인코딩 | Collate | Ctype | 액세스 권한
-------------------+----------+--------+------------------+------------------+-----------------------
blog.daonelab.com | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 |
postgres | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 |
template0 | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | Korean_Korea.949 | Korean_Korea.949 | =c/postgres +
| | | | | postgres=CTc/postgres
(4개 행)
4. 백업한 DB복원 (full backup 기준)
백업한 파일이 다른 버전의 PostgreSQL SERVER라면 백업파일을 UTF-8인코딩으로 열어서 PASSWORD관련 부분 주석처리후 복원한다.
...
--
-- Roles
--
--CREATE ROLE blog;
--ALTER ROLE blog WITH NOSUPERUSER INHERIT NOCREATEROLE NOCREATEDB LOGIN NOREPLICATION NOBYPASSRLS PASSWORD 'md596bfc24075f5b18186c0ec4a9f1dc6b9';
--CREATE ROLE postgres;
--ALTER ROLE postgres WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN REPLICATION BYPASSRLS PASSWORD 'md53cb7295b3d4903b5c34ed398c3510c5b';
--
-- User Configurations
...
C:\Program Files\PostgreSQL\14\bin>psql -U postgres -f "C:\Work\Postgres backup\full_2022.01.31.sql" blog.daonelab.com
postgres 사용자의 암호:
SET
SET
SET
ALTER ROLE
ALTER ROLE
접속정보: 데이터베이스="template1", 사용자="postgres".
SET
SET
SET
SET
SET
set_config
------------
(1개 행)
...
ALTER TABLE
GRANT
접속정보: 데이터베이스="postgres", 사용자="postgres".
SET
SET
SET
....
C:\Program Files\PostgreSQL\14\bin>
5. 비번 초기화
C:\Program Files\PostgreSQL\14\data\pg_hba.conf 에서 METHOD를 모두 trust로 변경후 PostgreSQL Server 재시작
C:\Program Files\PostgreSQL\14\bin>psql -U postgres
psql (14.1)
도움말을 보려면 "help"를 입력하십시오.
postgres=# ALTER USER postgres WITH PASSWORD 'new_password';
ALTER ROLE
그리고 나서 다시 pg_hba.conf 복원후 PostgresSQL Server 재시작