티스토리 뷰
본 포스팅은 PostgreSQL Installation 및 기본 운영자 가이드를 포함하고 있습니다.
최근 Cloud 환경으로 넘어 오면서 급격하게 OpenSource Software를 사용하는 빈도가 늘어나고 있습니다. Standalone 환경에서 ScaleOut, ScaleIn이 유동적으로 이루어 질수 있도록 기반을 잡고 있고, PostgreSQL이 앞으로 DB 시장에 어떠한 역할을 할지 귀추가 주목됩니다.
먼저 PostgreSQL 설치 방법에 대해 알아보겠습니다.
본 바이너리는 S-CORE에서 내재화를 진행하고 있는 PostgreSQL-10.4_S1.0_CentOS-7.5.run를 사용하였습니다.
1. 바이너리 업로드
[postgresql@k8s-master ~]$ pwd
/home/postgres
[postgresql@k8s-master ~]$ ls -la
total 11620
drwx------. 6 postgresql postgresql 185 Nov 5 00:50 .
drwxr-xr-x. 8 root root 97 Nov 5 00:49 ..
-rw-------. 1 postgresql postgresql 37 Nov 5 00:50 .bash_history
-rw-r--r--. 1 postgresql postgresql 18 Apr 10 2018 .bash_logout
-rw-r--r--. 1 postgresql postgresql 193 Apr 10 2018 .bash_profile
-rw-r--r--. 1 postgresql postgresql 231 Apr 10 2018 .bashrc
drwxrwxr-x. 3 postgresql postgresql 18 Nov 5 00:49 .cache
drwxrwxr-x. 3 postgresql postgresql 18 Nov 5 00:49 .config
drwxrwxr-x. 3 postgresql postgresql 19 Nov 5 00:49 .local
drwxr-xr-x. 4 postgresql postgresql 39 Oct 16 01:38 .mozilla
-rw-r--r--. 1 postgresql postgresql 11881053 Nov 5 00:48 PostgreSQL-10.4_S1.0_CentOS-7.5.run
[postgresql@k8s-master ~]$- 실행할 바이너리를 업로드 합니다.
2. 권한 부여
[postgresql@k8s-master ~]$ chmod u+x PostgreSQL-10.4_S1.0_CentOS-7.5.run
[postgresql@k8s-master ~]$
- 실행권한을 부여하여 바이너리 설치 준비를 합니다.
3. 바이너리 실행
[postgresql@k8s-master ~]$ ./PostgreSQL-10.4_S1.0_CentOS-7.5.run
...
...
- 위와 같이 실행 권한을 부여받은 바이너리를 실행합니다.
4. 설치 경로 선택
[postgresql@k8s-master ~]$ ./PostgreSQL-10.4_S1.0_CentOS-7.5.run
----------------------------------------------------------------------------
Welcome to the PostgreSQL Setup Wizard.
----------------------------------------------------------------------------
1. Please specify the directory where PostgreSQL will be installed.
Installation Directory [/home/postgres/SEPAS]:/home/postgres/SEPAS
- 설치 경로를 지정합니다.
- Default 값은 현재 디렉토리 + SEPAS입니다.
5. Data 경로 선택
2. Please select a directory under which to store your data.
Data Directory [/home/postgres/SEPAS/DATA]:/home/postgres/SEPAS/DATA
- 설치 경로 + DATA 경로가 Default로 data 파일 저장소 경로를 입력합니다.
6. Port 선택
3. Please select the port number the server should listen on.
Port [5432]:5432
- PostgreSQL powered by S-CORE에서 사용할 port 번호를 입력합니다.
- default는 5432입니다.
7. SuperUser 계정 생성
4. Please provide the database superuse
Superuser [postgresql]: postgresql
- PostgreSQL의 SuperUser를 생성합니다.
8. Locale 선택
5. Select the locale to be used by the new database cluster.
Locale :
[1] [Default_locale]
[2] C
[3] C.UTF-8
[4] POSIX
[5] en_AG
[6] en_AG.utf8
[7] en_AU.utf8
[8] en_BW.utf8
[9] en_CA.utf8
[10] en_DK.utf8
[11] en_GB.utf8
[12] en_HK.utf8
[13] en_IE.utf8
[14] en_IN
[15] en_IN.utf8
[16] en_NG
[17] en_NG.utf8
[18] en_NZ.utf8
[19] en_PH.utf8
[20] en_SG.utf8
[21] en_US.utf8
[22] en_ZA.utf8
[23] en_ZM
[24] en_ZM.utf8
[25] en_ZW.utf8
[26] ko_KR.utf8
Please choose an option [1]:26
- ko_KR.utf8을 선택합니다.
9. 옵션 내용 확인 (Summary 확인)
Pre Installation Summary
The following settings will be used for the installation
1. Installation Directory : /home/postgres/SEPAS
2. Data Directory : /home/postgres/SEPAS/DATA
3. Database Port : 5432
4. Database Superuser : postgresql
5. LOCALE : ko_KR.utf8
----------------------------------------------------------------------------
Setup is now ready to begin installing PostgreSQL on your computer.
Do you want to continue? [Y/N]:Y
- 설정 내용을 검토하고 Y를 입력합니다.
10. SuperUser 계정 비밀번호 지정 및 설치
The files belonging to this database system will be owned by user "postgresql".
This user must also own the server process.
The database cluster will be initialized with locale "ko_KR.utf8".
The default database encoding has accordingly been set to "UTF8".
initdb: could not find suitable text search configuration for locale "ko_KR.utf8"
The default text search configuration will be set to "simple".
Data page checksums are disabled.
Enter new superuser password:
Enter it again:
creating directory /home/postgres/SEPAS/DATA ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Success. You can now start the database server using:
/home/postgres/SEPAS/bin/pg_ctl -D /home/postgres/SEPAS/DATA -l logfile start
You must load SEPAS.env before using SE-PostgreSQL.
[postgresql@k8s-master ~]$
- 위와 같이 계정 비밀번호를 두번 입력하면 설치가 진행됩니다.
- 설치가 완료 되면 위와 같은 메시지를 확인할 수 있습니다.
11. 설치 확인
[postgresql@k8s-master ~]$ ls -la
total 11624
drwx------. 7 postgresql postgresql 215 Nov 5 01:03 .
drwxr-xr-x. 8 root root 97 Nov 5 00:49 ..
-rw-------. 1 postgresql postgresql 37 Nov 5 00:50 .bash_history
-rw-r--r--. 1 postgresql postgresql 18 Apr 10 2018 .bash_logout
-rw-r--r--. 1 postgresql postgresql 193 Apr 10 2018 .bash_profile
-rw-r--r--. 1 postgresql postgresql 231 Apr 10 2018 .bashrc
drwxrwxr-x. 3 postgresql postgresql 18 Nov 5 00:49 .cache
drwxrwxr-x. 3 postgresql postgresql 18 Nov 5 00:49 .config
drwxrwxr-x. 3 postgresql postgresql 19 Nov 5 00:49 .local
drwxr-xr-x. 4 postgresql postgresql 39 Oct 16 01:38 .mozilla
-rwxr--r--. 1 postgresql postgresql 11881053 Nov 5 00:48 PostgreSQL-10.4_S1.0_CentOS-7.5.run
drwxrwxr-x. 7 postgresql postgresql 112 Nov 5 01:04 SEPAS
-rw-rw-r--. 1 postgresql postgresql 203 Nov 5 01:03 SEPAS.env
[postgresql@k8s-master ~]$
- 위와 같이 설치가 정상적을 완료되면 SEPAS와 SEPAS.env가 생성된 것을 볼 수 있습니다.
12. 환경 변수 셋팅
[postgresql@k8s-master ~]$ cat SEPAS.env
export LD_LIBRARY_PATH=:/home/postgres/SEPAS/lib
export PATH=$PATH:/home/postgres/SEPAS/bin
export PGDATA=/home/postgres/SEPAS/DATA
export PGDATABASE=postgres
export PGUSER=postgresql
export PGPORT=5432
[postgresql@k8s-master ~]$ vi .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
export LD_LIBRARY_PATH=:/home/postgres/SEPAS/lib
export PATH=$PATH:/home/postgres/SEPAS/bin
export PGDATA=/home/postgres/SEPAS/DATA
export PGDATABASE=postgres
export PGUSER=postgresql
export PGPORT=5432
[postgresql@k8s-master ~]$ source .bash_profile
[postgresql@k8s-master ~]$ env | grep PG
PGPORT=5432
PGUSER=postgresql
PGDATABASE=postgres
PGDATA=/home/postgres/SEPAS/DATA
[postgresql@k8s-master ~]$
- 설치 시 함께 생성되는 SEPAS.env 파일을 확인합니다.
- 해당 내용을 복사하여 .bash_profile or .profile 하단에 붙여넣기를 수행합니다.
- 이후 source를 통해 profile 반영 후 환경 변수가 제대로 셋팅되었는지 확인합니다.
13. postgresql 기동 및 admin 접속
[postgresql@k8s-master ~]$ pg_ctl start
waiting for server to start....2018-11-05 01:09:00.815 EST [21968] LOG: listening on IPv6 address "::1", port 5432
2018-11-05 01:09:00.815 EST [21968] LOG: listening on IPv4 address "127.0.0.1", port 5432
2018-11-05 01:09:00.857 EST [21968] LOG: listening on Unix socket "/tmp/.s.PGSQL.5432"
2018-11-05 01:09:00.979 EST [21969] LOG: database system was shut down at 2018-11-05 01:04:42 EST
2018-11-05 01:09:01.022 EST [21968] LOG: database system is ready to accept connections
done
server started
[postgresql@k8s-master ~]$ psql
Password:
psql (10.4_S1.0 Powered by S-Core)
Type "help" for help.
postgres=# \du
List of roles
Role name | Attributes | Member of
------------+------------------------------------------------------------+-----------
postgresql | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
postgres=#
- 위와 같이 pg_ctl start로 postgresql이 정상적으로 기동되는 것을 확인할 수 있습니다.
- 또한 psql로 postgresql CLI 환경 Admin 접속이 가능하며, 다음과 같이 명령어를 수행할 수 있습니다.
다음시간에는 repmgr 설치 및 운영가이드에 대해 살펴보도록 하겠습니다.
'⑤ 개발, 데이터베이스 > ⓓ Database' 카테고리의 다른 글
[PostgreSQL] 운영자 가이드 (0) | 2018.09.06 |
---|---|
[Oracle] getConnection 지연 조치 방법 (2) | 2018.08.04 |
Oracle CTF vs TAF (0) | 2018.07.09 |
[SQL 6일차] 데이터베이스 보안 (0) | 2018.07.03 |
[SQL 5일차] 데이터베이스 서브쿼리와 제약조건, 뷰, 트랜잭션 (0) | 2018.07.03 |
- Total
- Today
- Yesterday
- MSA
- nodejs
- openstack tenant
- openstack token issue
- apache
- 마이크로서비스
- OpenStack
- Da
- JBoss
- API Gateway
- 오픈스택
- SA
- kubernetes
- 아키텍처
- wildfly
- jeus
- node.js
- aws
- webtob
- aa
- 쿠버네티스
- 마이크로서비스 아키텍처
- SWA
- Architecture
- git
- Docker
- k8s
- TA
- JEUS6
- JEUS7
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |