티베로7 설치 feat. 도커
서버 날려 버리는 바람에 티베로를 새로 설치해야 한다.
이미 한번해 봤으니 잘할 수 있을꺼다.... 아마....
이미지로 묶을려고 했는데 시스템 구조도 잘 모르고 해서 설정만하고 그 뒤에는 개별적으로 셋팅해야한다.
도커로 서버까지만 올려주는 방법이다. 실행은 세마포어 스페이스가 부족하다고 한는데 잘 모르겠다.
도커 허브에서 티베로 이미지를 찾아서 여러번 날먹을 시도했지만 날먹 적발되었다.
(아마 지금 가진 지식으로 할 수 있을것 같은데 이미 시간을 너무 써버려 패스한다..)
그래서 우분투 이미지를 받아서 이것(?) 저것(?)을 하고 거기에 티베로 압축풀고 데이터 베이스 만들꺼다.
우선 준비물은 티멕스 개발 라이센스, tibero7.tar.gz 파일을 아래 사이트가서 받아둔다.
https://technet.tmax.co.kr/
technet.tmax.co.kr
서버에 잘 옮겨 두고 실행하면 역시나 한번에 안된다.
오류메세지 찾아 삼만리 끝에 아래 처리 방안을 보고 여기저기 참고했다.
[E] Tibero 기동 오류 : semget failed.: No space left on device / A shared memory segment with the same key already exists.
서버에 Tibero를 설치한 뒤 데이터베이스를 생성하고 재기동하니 다음과 같은 에러가 발생하였다. $ tbboot semget failed.: No space left on device *************************************************************************** *
idox.tistory.com
컨테이너가 올라오는 시점 때 start-tibero.sh
테이블 스페이스도 만들고 데이터베이스도 만들어야 하는데 저 no space때문에 안된다.
그래서 컨테이너 실행 직후 올라간 컨테이너로 접속해서 아래 명력어를 실행하면
root@localhost:/tibero7/bin# sysctl -p
root@localhost:/tibero7/bin# tbboot
(다음에 컨테이너를 내리고 다시올리면 윗 부분 두개를 또 해서 실행 한다.)
nomount 상태로 티베로가 실행되면서 인스턴스에 접근할 수 있다.
접근 성공 하면 아래명령어를 실행해서 기동시 실패 했던 준비를 다시한다.
tbsql sys/tibero @'/usr/local/initial.sql'
quit 로 콘솔에서 나온뒤
다시 tboot를 실행하면 마운트 된 상태(normal mode)로 디비를 서비스 할 수 있다.
그 뒤 권한이랑 기본 테이블들을 생성해준다.
root@localhost:/tibero7/scripts# ./system.sh -p1 tibero -p2 syscat -a1 y -a2 y -a3 y -a4 y
티베로 셋팅 참고
[tibero] tibero6 설치 & 실행 가이드.
필자의 리눅스 서버 정보. $ hostnamectl ... Operating System: CentOS Linux 8 Kernel: Linux 4.18.0-348.7.1.el8_5.x86_64 Architecture: x86-64 ... 티베로6 설치 바이너리 다운로드 후 리눅스 서버로 이관. 1.테크넷 접속.(https:/
gomu92.tistory.com
여기까지 이미지로 구워서 올려놨다.
docker commit -m "dev tibero7 init" tibero pm2makeq/dev-tibero7:v1
docker push pm2makeq/dev-tibero7:v1
sys로 디비가 접속 됨을 확인하고 테이블 스페이스와 유저를 생성한다.
1.테이블 스페이스 생성 -> " " 안은 알맞게 입력한다.
CREATE TABLESPACE "테이블스페이스명" DATAFILE
'/tibero/database/"구분자"/"구분자"01.dtf' SIZE "6G" AUTOEXTEND ON NEXT "5M";
2. 해당 테이블 스페이스를 사용자와 매핑
CREATE USER "아이디" IDENTIFIED BY "패스워드" DEFAULT TABLESPACE "테이블스페이스명";
셋팅하면서 사용했던 파일들이다.