닭발개발

[TIBERO] docker tibero 본문

DB

[TIBERO] docker tibero

D269 2024. 4. 9. 11:31
728x90

 

 

tibero는 docker가 따로 없고

ubuntu  이미지 다운 받은 다음에 그 안에 tibero를 설치해줘야 함.

 

1. os 이미지 다운

root@dream:~# docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
bccd10f490ab: Already exists
Digest: sha256:77906da86b60585ce12215807090eb327e7386c8fafb5402369e421f44eff17e
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

 

 

 

2. 컨테이너 배포

root@dream:~# docker run -i -t -p 8629:8629 --name ubuntu-container --hostname localhost ubuntu /bin/bash
root@localhost:/# exit
exit

 

 

3. 컨테이너 실행

root@dream:~# docker start ubuntu-container
ubuntu-container

 

 

4. 컨테이너 접속

root@dream:~# docker exec --user="root" -it ubuntu-container /bin/bash
root@localhost:/#

 

 

https://technet.tmax.co.kr/ko/front/main/main.do

 

Technet

효율적인 시스템 관리를 위한 기술 전문 포탈, 테크넷서비스

technet.tmax.co.kr

 

이 사이트에 가입해야함.

 

 

가입해서 중간에 보라색 데모라이선스 신청 누르고 자기가 원하는 tibero 선택

hostname은 리눅스에서 hostname 검색해서 하기.

그러고 다운 받으면 메일로 라이선스.xml 파일이 옴

 

두번째로 tibero tar파일 받아주기.

나는 tibero6 받음

 

 

 

노랑색 버튼 클릭해서 받으면 됨.

알아서 자기 버전으로.

구글링 ㄱㄱ

 

 

 

root@dream:/home/dream# docker cp ./license.xml ubuntu-container:/usr/local/
Successfully copied 2.05kB to ubuntu-container:/usr/local/

그러면 그 라이센스 파일하고 받은 tar파일을 띄운 우분투 도커 안으로 넣어줘야 하니까 docker cp 명령어를 사용해서 넣어줌

 

일단 /usr/local에 넣어주고 나중에 설정해야함.

 

root@dream:/home/dream# docker cp ./tibero6-bin-FS07_CS_2005-linux64-186930-opt-tested.tar.gz ubuntu-container:/usr/local/
Successfully copied 492MB to ubuntu-container:/usr/local/

 

이런식으로 두개 다 넣어줌

 

다시 위에 4번 컨테이너 접속 명령어로 우분투 컨테이너 접속해서 들어가서 보면 cp 되있을거임.

그러면 /usr/local에 있는 라이선스랑 tar를 적절한 경로에 넣어줘야함

그리고 java도 필요함 꼭 이건지는 모르겠는데 나는 1.7.08 써줌

 

root@localhost:/usr/local# ls
bin  etc  games  include  jdk1.7.0_80  lib  man  sbin  share  src  tibero6  tibero6-bin-FS07_PS01-linux64_3.10-269987-20240327170532.tar.gz

이렇게 /usr/local 경로에 다 넣어줌

라이선스 없는 이유는 이미 경로 정리해줘서 그럼

 

tar -xvzf 명령어로 tar파일 풀어주고 생긴 tibero6 폴더 /license 하위에 license.xml 폴더 넣어줌

root@localhost:/usr/local# cd tibero6/license
root@localhost:/usr/local/tibero6/license# ls
license.xml  oss_licenses

 

이렇게.

 

root@localhost:/usr/local/tibero6/bin# cd ../config
root@localhost:/usr/local/tibero6/config# ls
cm.template  gen_psm_cmd.sh  gen_tip.sh  gen_tip_for_tac.sh  ilog.map.example  psm_commands  tac.template  tibero.tip  tip.template  variant

 

그리고 tibero6/config 가서 ./gen_tip.sh 해주셈.

그러면 tibero.tip이 생김 -> 이게 있어야 tbboot 할 수 있음

 

 

 

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "${PS1-}" ]; then
  if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "$(id -u)" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi

export TB_HOME=/usr/local/tibero6
export TB_SID=tibero
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib
export PATH=$PATH:$TB_HOME/bin:$TB_HOME/client/bin
export JAVA_HOME=/usr/local/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin

 

vim /etc/profile 해서 

맨 아래에

 

export TB_HOME=/usr/local/tibero6
export TB_SID=tibero
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib
export PATH=$PATH:$TB_HOME/bin:$TB_HOME/client/bin
export JAVA_HOME=/usr/local/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin

이거 넣어줌

 

 

근데 여기서 vim이 없을 수가 있음

그러면  

apt-get update

apt-get install vim

하면 설치됨.

 

/etc/profile에 적용했으면

# source /etc/profile 

해서 적용 

 

 

root@localhost:/# tbsql sys/tibero

tbSQL 6

TmaxTibero Corporation Copyright (c) 2008-. All rights reserved.

Connected to Tibero.

SQL>

 

그럼 이렇게 연결되고..

연결됐다고 끝이 아님.

연결되어도 tibero가 booting 안될 수도 있단 말임.

 

SQL> connect sys/tibero@localhost:8629/tibero;
Connected to Tibero.

 

이런식으로 자기 db 연결됐는지 확인해서 연결 확인되어야 진짜 연결된거임.

만약에 연결 안되고 커넥팅 어쩌구 뜨면 tibero6/bin 가서 tbboot 하면 됨.

 

 

 

진짜 끝....

삽질로 알아낸 거 다 기록한다.

 

 

 

 


++++++++  추가 ++++++++++

나중에 tibero 다시 들어가면 (docker exec --user="root" -it ubuntu-container /bin/bash)

 

/etc/profile 안먹혀있는 경우도 있음

그럴땐 vi /etc/profile 해서 잘 써있는지 확인하고

source /etc/profile 해주고

 

 

root@localhost:/# echo $TB_HOME
/usr/local/tibero6

 

 

root@localhost:/# cd $TB_HOME
root@localhost:/usr/local/tibero6# cd bin
root@localhost:/usr/local/tibero6/bin# ls
alterdd.sh   cm_res_exec.sh   internal_svr_env.sh  libtbom.dll       psmjavac                 sm_sysmon_network_state.sh  sysalloc_summary.sh  tbcm     tbdown     tblistener  tbsvr
asboot       cmrctl           libtbOCI_info.exe    libtbom.lib       sm_sysmon_disk_io.sh     sm_sysmon_ps.sh             tb_cert_manager      tbcmbin  tbinfo     tbnetbench  tbupdater
asdown       crfconf          libtboci.dll         libtbom_lite.dll  sm_sysmon_disk_state.sh  svr_env.sh                  tb_create_db.sh      tbcmobs  tbiobench  tbprobe     tbwallet_gen
base_env.sh  dbctl_for_cm.sh  libtboci.lib         libtbom_lite.lib  sm_sysmon_network_io.sh  svr_rename.sh               tbboot               tbctl    tbiv       tbprof      update
root@localhost:/usr/local/tibero6/bin# tbboot
***********************************************************
*                     BOOT FAILED.
* tbsvr process (11240) is alive.
* Check if there are any tbsvr instances running.
***********************************************************
root@localhost:/usr/local/tibero6/bin# tbdown

Tibero instance terminated (NORMAL mode).

root@localhost:/usr/local/tibero6/bin# ^C
root@localhost:/usr/local/tibero6/bin# tbboot
Listener port = 8629

Tibero 6

TmaxTibero Corporation Copyright (c) 2008-. All rights reserved.
Tibero instance started up (NORMAL mode).

 

 

 

 

 

 

 

 

728x90
반응형