database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Tutorials 23527 게시물 읽기
No. 23527
SAPDB 설치 + 사용기
작성자
남녀평등(linux199)
작성일
2002-12-04 08:29
조회수
10,305

우선 설치가 편한 RPM으로 설치를 해보도록 하자

http://www.sapdb.org/7.4/sap_db_downloads.htm 에 접속을 하면 7.4beta용 RPM을 다운 받을 수 있다

우선 있는데로 다 받아보자. (각 용도는 나중에 알기로하고...)

 

ROOT계정에서 sapdb 그룹과 유저를 생성시켜준다

groupadd sapdb

useradd sapdb

 

이제 차례차례 RPM만 설치하면 된다

우선 Version과 관계없이 동작하는 sapdb-ind-7.4.3.7beta-1.i386.rpm 을 설치한다

rpm -ivh sapdb-ind-7.4.3.7beta-1.i386.rpm

 

위 RPM은 각 버젼과 상관없이 동작되어질 프로그램 및 terminfo 관련 파일등등을 설치해준다 (맞는지는 모르겠습니다. 그냥 추측만)

 

그 후 실제 서버 프로그램을 설치한다

rpm -ivh sapdb-srv74-7.4.3.7beta-1.i386.rpm

 

위 RPM은 각 버젼별 의존적인(?) 프로그램을 설치해준다. (실제 프로그램 설치)

 

일단 위의 설치가 끝나면 우선적으로는 서버는 동작시킬수 있다

 

우선 서버 구동에 필요한 것은

sapdb-ind-7.4.3.7beta-1.i386.rpm

sapdb-srv74-7.4.3.7beta-1.i386.rpm

등이다.

 

RPM 설치도중 이미 서버는 구동이 되어 있다. (이 서버프로그램은 말 그대로 서버이지 이것만으로는 DB에 접근할수는 없다)

서버 구동 및 정지는

/opt/sapdb/indep_prog/pgm/vserver

파일이 담당한다

 

/opt/sapdb/indep_prog/pgm/vserver stop

/opt/sapdb/indep_prog/pgm/vserver start

으로 서버 정지후 다시 구동시켜 보자

 

또한 /opt/sapdb/indep_prog/bin/x_server도 똑같은 역할을 한다 (둘의 차이점은 아직 모름)

 

잘 동작하는가? :-)

 

일단 서버 구동은 되도록 되어있다

이제 DB를 생성시켜 보도록 하자

DBM GUI등을 이용할 수도 있겠지만 우리는 콘솔상에서 생성을 시켜보도록 하자

/opt/sapdb/indep_prog/bin/dbmcli 프로그램이 DB를 생성하고 삭제하며 각종 파라메터도 조정하고 QUERY도 날려볼 수 있는 녀석이다

우선 편리함을 위해서 위의 디렉토리를 PATH에 추가시켜 주자 (/etc/bashrc/ 혹은 사용자의 .bashrc 등에 추가시켜주면 좋겠죠)

export PATH=$PATH:/opt/sapdb/indep_prog/bin

 

dbmcli --help를 쳐보면 일단 기본적인 접속법만이 나온다

[root@hancom misc]# dbmcli --help

usage: dbmcli [<options>] [[-c] <DBMServer-Command>]

<options>:

-u username,passwd (DBM user)

-U [userkey] (default DBMUSR)

-uUTL [username,passwd] (UTILITY session)

-uSQL [username,passwd] (SQL session)

-uSRV (Service session)

-V (show version of server)

-d dbname (set dbname)

-R dbroot (set dbroot)

-n node (name of servernode)

-i inputfile (Default stdin)

-ic inputfile (Default stdin)

-o outputfile (Default stdout)

-t protocolfile (writes subsequent protocol)

-s (local mode, don't use with -n)

<DBMServer-Command>:

Everything after the options will be sent to DBMServer.

For more information about the DBMServer-Commands use

the DBMServer-Command help.

 

요것으로는 많이 부족하지 않은가

 

일단 dbmcli -u dbm,dbm 로 실행을 한번 해보자 (dbm, dba 등의 유저는 미리 등록되어 있다)

[root@hancom misc]# dbmcli -u dbm,dbm

Error! Connection failed to node (local) for database (no dbname): ERR_SYSLOGON: logon to system failed

 

위와 같은 에러가 날 것이다 말그대로 DATABASE에 접속할 수 없다는 말이다

dbmcli 의 옵션으로

db_create

db_drop

db_online (db_start)

db_offline

등을 줘서 DB를 생성시키고 구동시키고 정지시키고 삭제시킬 수 있다

그러나 db_create이후에도 인자값등 조절할 것이 많으니 쉬운일이 아니다

그럼 어찌할 것인가

나같은 사람들 위해 프로그램에서 demo_db를 생성할 수 있는 스크립트를 제공한다

cd /opt/sapdb/depend74/misc

로 이동해 보자

그곳의 create_demo_db.sh 가 보이는가?

그 스크립트가 demo DB를 생성해주는 스크립트이다

이제 실행해보자

 

[root@hancom misc]# ./create_demo_db.sh

dont start script as root

 

말 그대로 root 로는 안된다 sapdb가 되어보자

 

su sapdb -

 

이제 다시 실행시켜보자

 

[sapdb@hancom misc]$ ./create_demo_db.sh

create database TST...

create TST failed: Error! Missing name of installation root!

 

위와 비스므리한 에러가 날 것이다

 

문제는 Independent 프로그램들의 PATH와 dependent 프로그램들의 PATH를 인식하지 못해서이다

아래와 같이 다시 실행해보자

[sapdb@hancom misc]$ DEP=/opt/sapdb/depend74/ IND=/opt/sapdb/indep_prog ./create_demo_db.sh

ERR 11641 XSERVER XSERVER is already running!

create database TST...

set parameters for TST...

start TST...

initialize TST...

load system tables...

create database demo user...

set backup parameters...

 

위와 같은 메세지가 나오면서 생성이 잘 될 것이다 :-)

[sapdb@hancom misc]$ ls ~

Desktop TST

해보면 위의 TST 라는 디렉토리가 보일 것이다

그 디렉토리 안에 DB에 필요한 스페이스(?) 등이 들어있다

create_demo_db.sh 를 조금만 살펴보면 dbmcli의 사용법 및 DB 생성 방법 그리고 파라메터값 설정이라든지 스페이스(?)의 추가 방법 등을 알 수 있을 것이다

 

 

그럼 이제 dbmcli로 직접 QUERY를 날려서 테이블을 하나 만들어보자

 

[sapdb@hancom misc]$ dbmcli -u dba,dba -d TST

dbmcli on TST>

 

우선 위와같이 해서 DB에 접속을 해보자

이곳에서 help를 쳐보면 아주 많은 명령어 들을 볼 수 있다.

각각의 사용법은 메뉴얼을 참조하기로 하고

우선 우리는 테이블을 만들어보기로 하자

sql 명령을 주기 위해서는 우선 sql_connect 명령으로 세션을 하나 생성해야 한다

 

dbmcli on TST>sql_connect test,test

OK

 

---

 

위와 같이 명령을 주고 OK라는 메세지가 나오면 제대로 된 것이다

test라는 사용자는 create_demo_db.sh 중간에 사용자로 추가시켜 둔 것이다

자 그럼 이제 실제 query를 줘보도록 하자

 

dbmcli on TST>sql_execute create table test_tb (t_id int, t_name varchar(40))

OK

 

---

 

OK 메세지가 나오면 제대로 생성이 된 것이다

 

dbmcli on TST>sql_execute select * from test_tb

ERR

-24988,ERR_SQL: sql error

100,Row not found

 

---

 

위와 같이 바로 쿼리를 줬을때 에러가 나온다.

그러나 잘 살펴보면 에러가 아니가 입력되어진 데이터가 하나도 없어서 Row not found가 나온것이다

그럼 데이터를 하나 넣어보자

 

dbmcli on TST>sql_execute insert into test_tb values (1, '테스트')

OK

 

---

 

자 그럼 다시 select 문을 줘보자

 

dbmcli on TST>sql_execute select * from test_tb

OK

END

1;'테스트'

 

---

 

데이터가 잘 나온다

 

이제 세션을 끊도록 하자

 

dbmcli on TST>sql_release

OK

 

---

 

그리고 종료한다

 

dbmcli on TST>quit

 

---

 

 

쉽지 않은가?

그럼 이제 잘 쓰기만 하면 된다 :-)

[Top]
No.
제목
작성자
작성일
조회
23530SAPDB PYTHON Interface 사용기
남녀평등
2002-12-04
10550
23529SAPDB ODBC 사용기
남녀평등
2002-12-04
11922
23528SAPDB Precompiler 사용기
남녀평등
2002-12-04
9493
23527SAPDB 설치 + 사용기
남녀평등
2002-12-04
10305
23526SAPDB (Debian) Linux Quickstart Howto
정재익
2002-10-11
9211
23525Sapdb standby HA Howto
정재익
2002-10-11
9870
23524Installing and Upgrading the Database Server: SAP DB 7.3
정재익
2002-08-08
9045
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.051초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다