[Docker] Tibero6 설치하는 방법.(이미지 다운로드, 컨테이너 생성/실행, 원격에서 Tibero 서버로 접속 ...)
2021. 11. 5. 13:52ㆍTool/docker
728x90
728x90
도커 서버 설치 참고.
docker hub에서 다운받을 tibero6 이미지 확인
- https://hub.docker.com/r/dimensigon/tibero
- https://github.com/dimensigon/tibero-docker/commit/78c203e3c42cc52f008685bfa67d42f827ac8785
도커 로그인 수행.
$docker login
tibero6 이미지 다운로드
$docker pull dimensigon/tibero
다운로드한 이미지 확인.
$docker images | grep tibero
dimensigon/tibero latest 59c86c1e4794 3 days ago 2.21GB
도커 서버에 볼륨(tibero6) 생성.
$docker volume create tibero6
티베로6 컨테이너 생성.
- 볼륨 처리 옵션 : -v
- 포트바인딩 처리 옵션 : -p
$docker run -idt --name tibero6 -p 8629:8629 -v tibero6:/home/tibero/tibero6/:z --restart=always dimensigon/tibero
tibero6 컨테이너 기동 확인.
$docker ps | grep tibero6
943b74b5f44f dimensigon/tibero "/bin/sh -c 'su - ..." 30 seconds ago Up 29 seconds 0.0.0.0:8629->8629/tcp, 8630-8649/tcp tibero6
컨테이너 접속.
$docker exec -it tibero6 bash
prepare.bash 실행.
- tibero 사용을 위한 패키지 다운로드, 계정 추가 등의 작업을 수행하는 스크립트 파일, 작업에 20분정도 소요됨.
bash /root/prepare.bash
티베로 환경변수 적용.
- [/home/tibero] 경로에서 .bash_profile 실행.
[/home/tibero] $. ./.bash_profile
티베로 DB 서버/클라이언트 설정 파일 실행.
- [$TB_HOME/config] 경로에서 gen_tip.sh 실행
[$TB_HOME/config] ./gen_tip.sh
Using TB_SID "tibero"
There's already /home/tibero/tibero6/config/tibero.tip!! Nothing has changed!!
Already exists /home/tibero/tibero6/config/psm_commands!! Nothing has changed
There's already /home/tibero/tibero6/client/config/tbdsn.tbr!!
Client config file already contains SID "tibero":
please check if port number equals 8629...
> #-------------------------------------------------
> # /home/tibero/tibero6/client/config/tbdsn.tbr
> # Network Configuration File.
> # Generated by gen_tip.sh at Wed Nov 3 05:59:18 UTC 2021
> tibero=(
> (INSTANCE=(HOST=localhost)
> (PORT=8629)
> (DB_NAME=tibero)
> )
> )
Running client/config/gen_esql_cfg.sh
Done.
티베로 라이선스 발급 & 적용.
1.테크넷 접속
2.라이센스 신청
3.발급 신청 제출.(host name은 container ID임.)
4.이메일로 발급받은 라이선스를 도커 서버로 이관.
5.도커 서버 경로 -> 컨테이너 내부 경로 파일 복사 명령어로 라이선스를 컨테이너 내부로 이관
노마운트로 티베로 서버 기동.
$tbboot nomount
Listener port = 8629
Tibero 6
TmaxData Corporation Copyright (c) 2008-. All rights reserved.
Tibero instance started up (NOMOUNT mode).
nomount mode로 기동된 tibero 서버에 sys 계정으로 접속.
$tbsql sys/tibero
tbSQL 6
TmaxData Corporation Copyright (c) 2008-. All rights reserved.
Connected to Tibero.
SQL>
티베로 서버에 DB(tibero) 생성.
SQL> create database "tibero"
user sys identified by tibero
maxinstances 8
maxdatafiles 100
character set MSWIN949
national character set UTF16
logfile
group 1 'log001.log' size 100M,
group 2 'log002.log' size 100M,
group 3 'log003.log' size 100M
maxloggroups 255
maxlogmembers 8
noarchivelog
datafile 'system001.dtf' size 100M autoextend on next 100M maxsize unlimited
default temporary tablespace TEMP
tempfile 'temp001.dtf' size 100M autoextend on next 100M maxsize unlimited
extent management local autoallocate
undo tablespace UNDO
datafile 'undo001.dtf' size 100M autoextend on next 100M maxsize unlimited
extent management local autoallocate;
티베로 서버 재기동.
$tbboot
Listener port = 8629
Tibero 6
TmaxData Corporation Copyright (c) 2008-. All rights reserved.
Tibero instance started up (NORMAL mode).
테이블 스페이스 생성 테스트.
SQL> CREATE TABLESPACE gomu92
DATAFILE '/home/tibero/tibero6/database/tibero/gomu92.dbf' SIZE 500M
AUTOEXTEND ON NEXT 50M;
Tablespace created.
계정 생성 테스트.
SQL> CREATE USER gomu92 IDENTIFIED BY gomu92 DEFAULT TABLESPACE gomu92;
User 'GOMU92' created.
SQL> grant connect, resource, dba to gomu92;
Granted.
외부에서 컨테이너 접속이 가능한지 확인.(포트 바인딩 확인)
1.admin tool을 활용한 접속 확인.
- sys 계정의 passwd는 "tibero"이며, 글쓴이는 tibero admin을 활용함.
2.tibero client 환경에서 tbsql을 활용한 접속 확인.
2.1.tibero client 환경의 $TB_HOME/client/config/tbdsn.tbr 설정.
tibero6=(
(INSTANCE=(HOST=xxx.xxx.xxx.xxx)
(PORT=8629)
(DB_NAME=tibero)
)
)
2.2.tibero client 환경에서 sqlplus를 사용하여 접속 확인.
$tbsql sys/tibero@tibero6
tbSQL 6
TmaxData Corporation Copyright (c) 2008-. All rights reserved.
Connected to Tibero using tibero6.
SQL>
컨테이너 볼륨 처리 확인.
1.컨테이너의 볼륨 경로 확인.
$pwd
/home/tibero/tibero6
$ls
bin client config database instance lib license nls scripts
2.도커 서버(로컬/호스트)의 볼륨 경로 확인.
$pwd
/var/lib/docker/volumes/tibero6/_data
$ls
bin client config database instance lib license nls scripts
3.도커 서버(로컬/호스트)의 볼륨 경로에서 생성한 테이블 스페이스(gomu92.dbf)가 존재하는지 확인.
$pwd
/var/lib/docker/volumes/tibero6/_data/database/tibero
$ls
c1.ctl java log002.log system001.dtf tpr_ts.dtf usr001.dtf
gomu92.dbf log001.log log003.log temp001.dtf undo001.dtf
728x90
728x90