Warning: session_destroy() [function.session-destroy]: Session object destruction failed in /home/httpd/html/board/include/header.php on line 32
적수네 동네 - 1원짜리 팁? [ 게시물 삭제 ]
>> Delete No. 1168 article
No. 오라클에서 long형인 자료형 검색하기

등록 2001-04-21 12:06:00     조회 5
이름 혀니    

		오라클 815,816기준
 기본적으로 오라클을 설치하면 intermedia text 패키지들이 설치가 됩니다.
패키지가 설치 되었는지 검사 하기
#sqlplus ctxsys/ctxsys 로 접속이 되어야 합니다
즉 ctxsys라는 사용자가 있어야 설치가 된겁니다.
 intermedia text관련 라이브러리가 설치되었는지 검사
 SQL>select library_name,file_spec,dynamic,status from user_libraries;
 LIBRARY_NAME FILE_SPEC D STATUS
------------ ---------------------------------------- - -------
DR$LIBX /oracle/db/dev118/ctx/lib/libctxx8.so Y VALID
 위가 같은 내용이 검색된다면 intermedia 관려 패키지들이 설치가 된겁니다..
  [1]만약 설치가 되어 있지 않다면 아래의 순서대로 설치해주시면 됩니다..
1-1) SYS사용자로 접속을 합니다
SQL>@$ORACLE_HOME/ctx/admin/dr0csys.sql ctxsys패스워드 디폴트테이블스페이스 템프로리테이블스패이
스 (EX SQL>@$ORACLE_HOME/ctx/admin/dr0csys.sql ctxsys system temp)
 1-2) cxtsys사용자로 접속을 합니다
SQL>connect ctxsys/ctxsys
 1-3) 관련 라이브러리를 설치합니다.
SQL>@$ORACLE_HOME/ctx/admin/dr0inst.sql $ORACLE_HOME/ctx/lib/libctxx8.so
 1-4) 한글 랙서(Lexer)를 설치 합니다.
SQL>@$ORACLE_HOME/ctx/admin/defaults/drdefko.sql
 만약 기존에 설치되어 있는 intermedia text를 제거 하고자 한다면 아래 순서대로 하시면 됩니
다.. (권하고 싶은 방법이 아닙니다 이렇게 제거하고 다시 설치하려다 안돼서 오라클을 다
시 설치한 경험이 있습니다 그러나 이방법으로 제거한후 다시 설치하는것이 맞습니다 )
 2-1) ctxsys사용자로 접속해 intermedia text라이브러리를 제거 합니다.
SQL>@$ORCLE_HOME/ctx/admin/dr0drop.sql
2-2) sys 사용자로 접속해 ctxsys사용자를 제거 합니다.
SQL>@$ORACLE_HOME/ctx/admin/dr0dsys.sql
 [2] Net8 세팅하기
기본적으로 오라클 816은 intermadia text설치한다면  Net8설정이 오라클 설치시 세팅이 됩니다.
세팅이 되어 있지 않거나 아래와 내용이 다른 경우 세로 세팅을 하시면 됩니다.
 $ORACLE_HOME/network/admin/listener.ora
($ORACLE_HOME이 /home/oracle이라고 가정)
만약 intermedia text세팅이 되어 있지 않다면
LISTENER =
 (DESCRIPTION_LIST =
   (DESCRIPTION =
     (ADDRESS_LIST=
       (ADDRESS= (PROTOCOL=tcp) (HOST=xxx.xxx.co.kr) (PORT=1521))
     )
   )
 )
 SID_LIST_LISTENER =
    (SID_DESC =
      (GLOBAL_DBNAME = ORCL)
      (ORACLE_HOME = /home/oracle)
      (SID_NAME = ORCL)
    )
 )
 이렇게만 되어 있을 겁니다.
LISTENER =
 (DESCRIPTION_LIST =
   (DESCRIPTION =
     (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC) (KEY = EXTPROC))
      (ADDRESS = (PROTOCOL = TCP) (HOST = xxx.xxx.co.kr) (PORT = 1521))
     )
   )
 )
 SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /home/oracle)
      (ENVS = 'LD_LIBRARY_PATH=/home/oracle/ctx/lib')
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = ORCL)
      (ORACLE_HOME = /home/oracle)
      (SID_NAME = ORCL)
    )
 )
위와 같이 바꾸어 줍니다.
즉
LISTENER에서
(ADDRESS = (PROTOCOL = IPC) (KEY = EXTPROC))를 추가하고
 SID_LIST_LISTENER 에서
SID_DESC =
 (SID_NAME = PLSExtProc)
 (ORACLE_HOME = /home/oracle)
 (ENVS = LD_LIBRARY_PATH = /home/oracle/ctx/lib)
 (PROGRAM = extproc)
추가 하는 겁니다..
  $ORACLE_HOME/network/admin/tnsnames.ora
intermedia text가 세팅되어 있지 않았다면
DBCON =
  (DESCRIPTION =
    (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.co.kr)(PORT = 1521)))
     (CONNECT_DATA = (SERVICE_NAME = ORCL))
  )
이렇게만 되어 있을 겁니다.
 DBCON =
  (DESCRIPTION =
    (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.co.kr)(PORT = 1521)))
    (CONNECT_DATA = (SERVICE_NAME = ORCL))
  )
EXTPROC_CONNECTION_DATA.XXX.CO.KR =
  (DESCRIPTION =
    (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)))
    (CONNECT_DATA = (SID = PLSExtProc)(PRESENTATION = RO))
  )
위와 같이 EXTPROC_CONNECTION_DATA.XXX.CO.KR 의 내용을 추가 합니다..
EXTPROC_CONNECTION_DATA는 반드시 적어주어야 합니다.
XXX.CO.KR은 $ORACLE_HOME/network/admin/sqlnet.ora 파일에 있는 NAMES.DEFAULT_DOMAIN = XXX.CO.KR의
XXX.CO.KR을 적어주셔야 합니다.
만약 sqlnet.ora파일에 NAMES.DEFAULT_DOMAIN 없다면 반드시 세팅해 주셔야 합니다
 Net8세팅이 다되었다면 리스너를 재실행 합니다.
lsnrctl stop -> lsnctl start
 다음 intermedia text서비스가 시작 되었는지 체크합니다
 #lsnrctl status
 LSNRCTL for Linux: Version 8.1.5.0.0 - Production on 21-APR-01 11:02:01
 (c) Copyright 1998 Oracle Corporation.  All rights reserved.
 Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 8.1.5.0.0 - Production
Start Date                21-APR-01 09:13:14
Uptime                    0 days 1 hr. 48 min. 46 sec
Trace Level               off
Security                  OFF
SNMP                      OFF
Listener Parameter File   /home/oracle/network/admin/listener.ora
Listener Log File         /home/oracle/network/log/listener.log
Services Summary...
  PLSExtProc            has 1 service handler(s)
  ORCL          has 1 service handler(s)
The command completed successfully
 위의 내용과 같이
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))
PLSExtProc            has 1 service handler(s)
이런 이런내용들이 확이 되어야 합니다..
 tnsping으로도 확인 해봅니다..
#tnsping EXTPROC_CONNECTION_DATA.XXX.CO.KR
TNS Ping Utility for Linux: Version 8.1.5.0.0 - Production on 21-APR-01 11:05:58
 (c) Copyright 1997 Oracle Corporation.  All rights reserved.
 Attempting to contact (ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))
OK (0 msec)
OK가 되었다면 Net8세팅이 정상적으로 되었다고 보시면 됩니다..
 새로운 사용자를 만들고 테스트를 해보겠습니다
SQL>Create user ctxtest identified by ctxtest;
SQL>Grant connect, resource, ctxapp to ctxtest;
ctxtest라는 사용자에게 ctxapp라는 권한이 반드시 있어야 합니다
 SQL>connect ctxtest/ctxtest
SQL>Create table test(num number primary key, text long);
 SQL>Insert into test values (1,'테스트');
SQL>Insert into test values (2,'InterMedia text 입력테스트');
 SQL>Create index test_idx_text on test(text) indextype is ctxsys.context;
 SQL>Select num,text from test where contains (text,'%입력%') > 0;
NUM TEXT
--- ----------------------------------------------
2 InterMedia text 입력테스트
 CONTEXT INDEX의 경우 입력될때마다 자동으로 인덱스 생성이 되지 않기 때문에..
ctxsrv를 쉘상에서 기동시켜주어야 합니다..
#ctxstv -user ctxsys/ctxsys -logfile ctxsrv.log &
 그럼 행운을 빕니다..--참을수 없는 배살에 두려움.
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved