주: 인포믹스의 사이트에 있는 설치 지침과 IIUG사이트에 있는 Nils Myklebust의 멋진 HOWTO에는 몇가지 중복되는 부분들이 있다 ( 추가적인 리소스를 볼것). 이것은 두가지 이유 때문에 사려 깊은일이다:
아래의 예제는 다음을 가정한다:
대부분의 리눅스 배포판은 addgroup
이나 groupadd
둘 중의 하나를 갖고 있을 것이다.
이 프로그램들은 새로운 사용자 그룹을 만든다. 만일 당신의 시스템이 usercfg
같은
GUI툴을 가지고 있다면 그것을 대신 사용해도 된다. 본질적인 정보만 바뀌지 않으면 된다.
<frodo> $ groupadd -g 777 informix
또는
<frodo> $ addgroup -g 777 informix
이 예제는 GID (group ID)가 777인 informix라는 이름의 그룹을 만든다.
GID는 단지 예일 뿐이다; 당신은 아직 할당되지 않은 어떤 GID라도 사용할 수 있고
(할당된 GID를 볼려면 cat /etc/group
),
특정한 값을 지정하지 않고 다음 가용한 GID를 사용할 수도 있다.
다음 단계에서 당신이 만드는 informix 사용자만이
informix 그룹의 멤버가 되어야 한다.
만일 다른 어떤 사용자가 이 그룹의 멤버라면,
그 사용자는 어떤 데이터베이스라도 변경하고 삭제할 수 있게 될것이다 - 좋은 생각이 아니다.
대부분의 리눅스 배포판은 adduser
나 useradd
둘 중의 하나를 갖고 있다.
이 프로그램들은 새로운 사용자를 만든다. 만일 당신의 시스템이 usercfg
같은 GUI 툴을
갖고 있다면, 그것을 대신 사용해도 된다. 본질적인 정보만 바뀌지 않으면 된다.
<frodo> $ useradd -u 777 -g informix informix
또는
<frodo> $ adduser informix
첫 번째 형식은 UID(-u 777)와 초기 그룹(-g informix)을 지정할 것을 요구한다.
그것은 초기 그룹이 informix이고 UID가 777인 informix사용자를 만든다.
이 UID는 단지 예일 뿐이다; 당신은 아직 할당되지 않은 어떤 UID라도 사용할 수 있고
(할당된 UID를 보기위해서는 cat /etc/passwd
),
특정한 지정하지 않고 다음 가용한 UID를 사용할 수도 있다.
informix사용자는 일차 그룹이 informix그룹이어야한다;
가능하다면, 이 사용자가 유일한 그룹원이어야 한다.
두 번째 형식은 adduser
를 사용하는데, 대개는 (Caldera의 OpenLinux를 제외하고는
거의 항상) useradd
프로그램의 대화식 셸 스크립트 프론트엔드이다.
만일 당신이 이 스크립트를 사용한다면 초기그룹을 지정하라고 할 때 informix
를 입력한다.
전과정에 걸쳐 더 많은 제어권을 사용할 수 있는 useradd
를 사용할 것을 권장한다.
자세한 것은 man useradd
를 볼것.
Informix-SE에서는 informix사용자가 홈 디렉토리나 디폴트 셸을 가질 필요는 없다. 당신이 informix로긴할 경우는 좀처럼 없겠지만, 그렇게 한다고 해서 해가 될 것도 없다. 반면에 Informix Dynamic Server는 홈 디렉토리를 필요로 하므로, 나중에 리눅스용 IDS가 나올 때 그걸 설치할 계획이라면, 지금 홈 디렉토리를 만들어 두는 것이 그때 한 단계를 줄일 수 있을 것이다.
dba라는 이름의 사용자 계정을 <tt>informix</tt>사용자 계정 만들기의 절차에 따라 만든다. 이 계정은 당신의 데이터베이스를 만들고 관리하는데 사용될 것이다. 여기에 두가지 규칙이 적용된다:
이 사용자의 홈 디렉토리는 데이터베이스가 저장될 것이므로 그것의 위치에 조금 신경을 써야한다.
내 시스템의 경우에는, dba의 홈 디렉토리는 /dbms
이고,
그것은 물리적으로 별도의 디스크에 위치하고 부팅할 때 루트 파일시스템에 마운트된다.
이렇게하면 데이터베이스에 피해 없이 루트 파일 시스템을 잃거나 그 거꾸로 되는 것이 허용된다.
다음으로, 인포믹스를 설치할 디렉토리를 만들어야 한다.
파일시스템 계층 표준을 보면 정적이고, 공유가능한 파일(문서, 라이브러리 또는 다른
바이너리들 같은)을 /usr
이나 /opt
에 설치할 것을 권장한다.
비 시스템 파일들은 종종 /usr/local
에 설치된다.
내 시스템의 경우에는 그것들은 /opt
에 있다.
당신은 당신이 좋아하는 어디라도 설치할 수 있을 것이다(/tmp
나 /dev
은 권장되지 않음 ©).
<frodo> $ mkdir /opt/informix
<frodo> $ chown informix.informix /opt/informix
<frodo> $ chmod 755 /opt/informix
먼저 $INFORMIXDIR 환경 변수를 당신의 설치 디렉토리를 가리키도록 설정한다:
<frodo> $ export INFORMIXDIR=/opt/informix
다음으로, 패스를 설정한다. 그렇지 않으면 설치 스크립트가 제품표시 정보(branding information)를 찾지 못할 것이다:
<frodo> $ export PATH=$PATH:$INFORMIXDIR/bin
다운로드한 파일을 보관해둔 디렉토리로 가서 그것들을 unzip한다 (이 디렉토리는 설치 디렉토리와 다른 곳이어야 한다). 만일 당신이 CD-ROM을 갖고 있다면, 당신은 CD-ROM으로부터 바로 설치할 수 있다.
<frodo> $ cd /downloads
<frodo> $ unzip informix_se___esql_c_bundle_for_linux.zip
당신은 각각 ESQLC.TAR, SE.TAR와 ICONNECT.TAR가 들어있는
ESQLC, SE, ICONNECT 세 개의 디렉토리를 보게될 것이다.
당신의 설치디렉토리로 가서(이 예에서는 /opt/informix
),
tar파일들은 ESQLC, SE, ICONNECT 순서로 풀어야 한다.
[역자주: 현재 인포믹스는 기존의 ICONNECT, CLI등의 여러가지 클라이언트 연결 제품군을 하나로 묵어 Client SDK라는 형태로 공급하고 있다. 자세한 내용은 http://www.informix.com를 참조 할 것.]
ESQL.TAR 풀기:
<frodo> $ tar xvf /downloads/ESQLC/ESQL.TAR
ESQL/C를 설치하고 라이센스를 적용한다 (Intraware로 부터 받은 일련 번호와 라이센스 키를 요구할 것이다):
<frodo> $ ./installesql
SE.TAR 풀기:
<frodo> $ tar xvf /downloads/SE/SE.TAR
SE를 설치하고 라이센스를 적용한다 (Intraware로 부터 받은 일련 번호와 라이센스 키를 요구할 것이다):
<frodo> $ ./installse
주: 이 단계는 선택적이다. Informix-SE는 Informix-CONNECT를 설치하지 않아도 잘 동작한다. SE와 ESQL/C는 둘다 필요한 연결방법(connectivity)을 내장하고 있다. IConnect는 당신이 SE와 ESQL/C가 설치되어 있지 않은 시스템에 설치된 ESQL/C 바이너리와 엔진을 연결할 수 있도록 하기 위한 것일 뿐이다.
ICONNECT.TAR 풀기:
<frodo> $ tar xvf /downloads/ICONNECT/ICONNECT.TAR
ICONNECT를 설치하고 라이센스를 적용한다 (Intraware로 부터 받은 일련 번호와 라이센스 키를 요구할 것이다):
<frodo> $ ./installconn
설치후 작업은 거의 없다. 인포믹스에게 어떻게 실행되어야 하고, (선택적으로) 당신의 TCP/IP 설정을 조정하는 것이 전부다.
sqlhosts
파일 설정우선, $INFORMIXDIR/etc/sqlhosts
의 보관용 사본을 만들어 둘것.
당신이 완전히 anal이라면, 당신은 cp -p
또는 cp -a
를 사용하여 원래
파일의 시간과 날짜까지도 유지할 수 있다.
sqlhosts
의 사본을 만든 다음, 원래 파일을 수정한다.
당신의 아래처럼 보이는 줄을 삭제하거나 주석처리(# 을 사용하여) 할 수 있다.
demo_on onipcshm on_hostname on_servername
이 줄은 Informix Dynamic Server를 위한 것이므로, 리눅스에서는 아직까지 불가능하다.
호스트이름은 uname -n
의 출력과 정확히 일치해야 하며, 그렇지 않으면
-25591 에러를 얻게 될것이다. 별명을 사용하는 것은 동작하지 않는다.
그 항목은 이렇게 보일 것이다
demo_se seipcpip frodo.hobbit.com sqlexec
sqlexec
).seipcpip프로토콜은 무명 파이프를 사용하고, 로컬 연결 프로토콜로만 사용될 수 있다. 나는 seipcpip를 사용하지 않으려고 억지를 부리는 이유를 정말 모르겠다. 특히 개발 환경에서는(그런데, 그것은 Informix-SE의 이번 릴리즈에 뒤쳐진 억측이다). 그래서, 내는 그 점에 대해 단언한다: 만일 그렇게 하지 않을 특정한 이유가 없다면, Informix-SE로 어떤 일을 하기 위해서는 seipcpip nettype을 사용하라.
[역자주: 이 부분은 번역이 아무래도 이상하군요. 정말 그 이유가 궁금하신 분은 원문을 보시기 바랍니다.]
이제 당신은 괴상한 준비물을 가지고 있고, 당신의 설치를 확인할 준비를 되었다. 만일 당신이 경험있는 인포믹스 사용자가 아니라면, 정규 사용자 계정을 사용하는 것이 가장 좋다.
dbtest
같은 테스트 데이터베이스를 보관할 디렉토리를 만들고, 그 디렉토리로 cd
한다.
$INFORMIXDIR 환경 변수를 인포믹스가 설치된 디렉토리를 가리키도록 설정하고;
비슷하게, $INFORMIXSERVER 환경 변수를 당신이 sqlhosts
파일에 지정한 서버
이름으로 설정한다. 마지막으로 $INFORMIXDIR/bin 를 당신의 $PATH 에 추가한다:
<frodo> $ export INFORMIXDIR=/opt/informix
<frodo> $ export INFORMIXSERVER=demo_se
<frodo> $ export PATH=$PATH:$INFORMIXDIR/bin
dbaccessdemo7
명령은 현재 디렉토리에 stores7 견본 데이터베이스를
생성하고 몇가지 예제 쿼리들도 그 디렉토리에 복사할 것이다.
<frodo> $ dbaccessdemo7
dbaccess
명령은 엔진을 위해 쓸만한 화면 기반 인터페이스를 시작하고,
그것으로 데이터베이스와 작업할 수 있다.
<frodo> $ dbaccess
메뉴에서 Query-language를 선택한 다음(간단히 Q를 입력한다)
Choose (C)를 선택한다.
이것은 견본 데이터베이스내에 가용한 쿼리들의 목록을 보여줄 것이다.
커서 키를 사용하여 sel_
로 시작하는 쿼리들 중 하나를 선택하고,
엔터를 두 번 누르면, 어떤 결과를 보게될 것이다.
이 모든 일들이 작동하면, 당신은 당신의 기계에서 실행되는 Informix-SE를 얻은 것이다.
축하한다!