2021. 12. 24. 09:45ㆍDatabase/db2
-DB2 server v11.5 바이너리 설치하는 노드의 OS 정보.
$cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.5 LTS"
NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"
-DB2_v11.5_server_download 가이드
1.Linux, UNIX 및 Windows 용 IBM DB2 버전 11.5 다운로드 -> 권장 수정팩 다운 클릭.
2.Linux, UNIX 및 Windows 용 DB2의 권장 수정 팩 -> DB2 버전 11.5 Mod 5 수정팩 다운 클릭.
3.Linux 64 비트, AMD64 및 Intel EM64T의 x86-64 -> 서버 -> db2 서버 수정 팩 다운.
4.최종 다운로드 경로(IBM 계정 필요.)
-다운로드한 파일 정보.
- v11.5.5_linuxx64_server_dec.tar.gz (1.84 GB)
-DB2 server user & gruop 생성
1.db2 user(inst/fenc/usr)를 포함할 계정 생성.
$ adduser anylink
2.db2 user(inst/fenc/usr)의 group 생성.
$ groupadd db2iadm1
$ groupadd db2fadm1
$ groupadd dasadm1
3.db2 server user(inst/fenc/usr) 생성.
$ useradd -g db2iadm1 -m -d /home/anylink/db2inst2 db2inst2
$ useradd -g db2fadm1 -m -d /home/anylink/db2fenc1 db2fenc1
$ useradd -g dasadm1 -m -d /home/anylink/dasusr1 dasusr1
4.db2 user(inst/fenc/das) 역할 참고.
- https://www.bcgsc.ca/downloads/NBL/oligo_pileups/download/expc/doc/gettingstarted/ko_KR/help/html/html-installing37.html
- https://www.ibm.com/support/pages/howto-getting-started-db2
- https://www.ibm.com/support/knowledgecenter/ko/SSEPGG_11.1.0/com.ibm.db2.luw.qb.server.doc/doc/t0006742.html
- https://technowizardz.wordpress.com/tag/db2fenc1/
-다운로드한 v11.5.5_linuxx64_server_dec.tar.gz 압축 해제.(압축 해제되면 *.tar.gz 경로에 server_dec dir 생성됨.)
$ tar -zxvf v11.5.5_linuxx64_server_dec.tar.gz
-DB2 server 설치 바이너리 실행.
[/home/anylink/server_dec] $ ./db2_install
db2/라이센스 디렉토리의 라이센스 계약 파일을 읽으십시오.
***********************************************************
해당 조항에 동의하려면 "예"를 입력하십시오. 그렇지 않으면 "아니오"를 입력하여 설치 프로세스를 취소하십시오s. [yes/no]
yes
제품을 설치할 기본 디렉토리 - /opt/ibm/db2/V11.5
***********************************************************
기본 디렉토리 (/opt/ibm/db2/V11.5)에 설치하시겠습니까? [yes/no]
no
기본 설치 디렉토리의 전체 경로를 입력하십시오.
------------------------------------------------
/home/anylink/V11.5
DB2 제품을 설치하려면 다음 키워드 중 하나를 지정하십시오.
SERVER
CONSV
CLIENT
RTCL
제품 이름을 다시 표시하려면 "help"를 입력하십시오.
종료하려면 "quit"을 입력하십시오.
***********************************************************
SERVER
***********************************************************
DB2 pureScale Feature를 설치하시겠습니까? [yes/no]
no
DB2 설치가 초기화되고 있습니다.
수행할 총 태스크 수: 59
수행할 모든 태스크에 대해 계산된 총 시간: 2724초
태스크 #1 시작
설명: 라이센스 계약 승인 점검
계산된 시간 1초
태스크 #1 종료
…
태스크 #59 시작
설명: 전역 프로파일 레지스트리 갱신
계산된 시간 3초
태스크 #59 종료
실행이 완료되었습니다.
자세한 정보는 "/tmp/db2_install.log.22820"에서 DB2 설치 로그를
참조하십시오.
-설치된 db2 version 확인
$ db2ls -q -p -b /home/anylink/V11.5
Install Path : /home/anylink/V11.5
Product Response File ID Level Fix Pack Product Description
---------------------------------------------------------------------------------------------------------------------
DB2_SERVER_EDITION 11.5.5.0 0 DB2 Server Edition
DB2_WAREHOUSE_ON_CLOUD 11.5.5.0 0 DB2 Server Edition
-db2 instance 관련 가이드 참고.
- http://jmkjb.blogspot.com/2015/06/db2-instance.html
- https://www.ibm.com/support/knowledgecenter/ko/SSEPGG_11.1.0/com.ibm.db2.luw.qb.server.doc/doc/t0006744.html
- https://www.ibm.com/support/knowledgecenter/SSEPGG_11.5.0/com.ibm.db2.luw.admin.gui.doc/doc/c0004959.html
-db2 server instance 생성(root 계정으로 작업해야 함.)
[…/V11.5/instance] # ./db2icrt -u db2fenc1 db2inst2
DBI1446I The db2icrt command is runnung.
DB2 installation is being initalized.
Total number of tasks to be performed: 4
Total estimated time for all tasks to be performed: 309 second(s)
Task #1 start
Description: Setting default global profile registry variables
Estimated time 1 second(s)
Task #1 end
Task #2 start
Description: Initializing instance list
Estimated time 5 second(s)
Task #2 end
Task #3 start
Description: Configuring DB2 instances
Estimated time 300 second(s)
Task #3 end
Task #4 start
Description: Updating global profile registry
Estimated time 3 second(s)
Task #4 end
The execution completed successfully.
For more information see the DB2 installation log at "/tmp/db2icrt.log.6527".
DBI1070I Program db2icrt completed successfully.
-db2 server instance dir(../db2inst2/sqllib)생성 확인.
[../db2inst2/sqllib] $ ls
Readme backup cfgcache ctrlhamirror db2nodes.cfg doc gskit java lib64 msg profile.env security32 tmp userprofile
acs bin conv dasfcn db2profile federation hmonCache json log nodes python security64 tools
adm bnd ctrl db2cshrc db2systm function include lib map nodes.reg samples spmlog uif
adsm cfg ctrlha db2dump db2tss gse infopop lib32 misc pd security sqldbdir usercshrc
-db2inst2 계정의 ../db2inst2/.profile에 DB2 instance 설정 추가되었는지 확인.
[$HOME/] $ vi .profile
# The following three lines have been added by IBM DB2 instance utilities.
if [ -f /home/anylink/db2inst2/sqllib/db2profile ]; then
. /home/anylink/db2inst2/sqllib/db2profile
fi
-db2 service 설정.(db2inst2 계정으로 작업해야 함.)
1.통신 프로토콜 설정.
$ db2set db2comm=tcpip;
2.서비스 네임 설정.
$ db2 update dbm cfg using svcename DB2_db2inst2;
DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed successfully.
3.설정한 서비스 네임 확인.
$ db2 get dbm cfg | grep SVCE
TCP/IP Service name (SVCENAME) = DB2_db2inst2
SSL service name (SSL_SVCENAME) =
4.등록된 서비스 & 포트/프로토콜 조회.
$ cat /etc/services | grep DB2_db2inst2
DB2_db2inst2 60001/tcp
DB2_db2inst2_1 60002/tcp
DB2_db2inst2_2 60003/tcp
DB2_db2inst2_3 60004/tcp
DB2_db2inst2_4 60005/tcp
DB2_db2inst2_END 60006/tcp
-db2 server 기동.(db2inst2 계정으로 작업해야 함.)
$ db2start
12/22/2021 16:14:13 0 0 SQL1063N DB2START processing was successful.
SQL1063N DB2START processing was successful.
-"db2inst2" 이름으로 database 생성.(db2inst2 계정으로 작업해야 하며, DB 이름은 변경 가능함.)
$ db2 create database db2inst2
-db2inst2 계정의 $HOME 경로에 생성한 database "db2inst2" dir 존재하는지 확인.
-db2 테이블 스페이스 생성.
1."db2inst2" database에 접속.
$ db2 connect to db2inst2
Database Connection Information
Database server = DB2/LINUXX8664 11.5.5.0
SQL authorization ID = DB2INST2
Local database alias = DB2INST2
2.db2 command line processor 실행.
$ db2
(c) Copyright IBM Corporation 1993,2007
Command Line Processor for DB2 Client 11.5.5.0
You can issue database manager commands and SQL statements from the command
prompt. For example:
db2 => connect to sample
db2 => bind sample.bnd
For general help, type: ?.
For command help, type: ? command, where command can be
the first few keywords of a database manager command. For example:
? CATALOG DATABASE for help on the CATALOG DATABASE command
? CATALOG for help on all of the CATALOG commands.
To exit db2 interactive mode, type QUIT at the command prompt. Outside
interactive mode, all commands must be prefixed with 'db2'.
To list the current command option settings, type LIST COMMAND OPTIONS.
For more detailed help, refer to the Online Reference Manual.
db2 =>
3.db2 table space bufferpool 생성.
db2 => create bufferpool bufferpool8k size 1000 pagesize 8k
DB20000I The SQL command completed successfully.
4.db2 table space 생성.
db2 => create tablespace db2inst2 pagesize 8192 managed by system using ('/home/anylink/db2inst2/tablespace') bufferpool bufferpool8k
DB20000I The SQL command completed successfully.
5.db2 테이블 스페이스 조회.(생성한 "db2inst2" tablespace 출력 부분만 캡쳐.)
db2 => list tablespaces show detail
6.db2inst2 계정의 $HOME 경로에 생성한 tablespace dir 존재하는지 확인.
-db2 테스트 테이블 생성 & 데이터 입력 & 테이블 조회.
1.테이블을 생성할 database 접속.
$ db2 connect to db2inst2
2.db2 command line processor 실행.
$ db2
3.테스트 테이블(stores) 생성
db2 => CREATE TABLE stores(store_id INT NOT NULL, store_name VARCHAR(15) NOT NULL, PRIMARY KEY (store_id));
4.테스트 데이터 입력.
db2 => INSERT INTO stores(store_id, store_name) values(1, 'test1'), (2, 'test2');
5.테스트 테이블 조회.
db2 => SELECT * FROM stores;
-db2 server 기동 정지.(db2inst2 계정으로 작업해야 함.)
$ db2stop
2021-12-23 15:28:44 0 0 SQL1064N DB2STOP processing was successful.
SQL1064N DB2STOP processing was successful.