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
운영게시판
최근게시물
Oracle Q&A 7609 게시물 읽기
No. 7609
질문) 오라클에서 long형인 자료형 검색하기
작성자
김종화(man3998)
작성일
2001-09-26 13:59
조회수
3,611

-- 혀니 님이 쓰신 글:

>> 오라클 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를 쉘상에서 기동시켜주어야 합니다..

>> #ctxsrv -user ctxsys/ctxsys -logfile ctxsrv.log &

>>

>> 그럼 행운을 빕니다..

>>

>> PS)

>> 질문은 http://dr.moira.co.kr의 QandA에서 받겠습니다..

>> 제가 아는 만큼만 알려 드리겠습니다.

님이 하라는 대로 하구요. lsnrctl status,tnsping테스트도 이상없이 나오거든요. 근데 인덱스만 생성시킬려면 이런에러가 나요.

 

명령 :

create index test_idx_text on test(text) indextype is CTXSYS.CONTEXT

 

에러 :

*

1행에 오류:

ORA-29855: ODCIINDEXCREATE 루틴을 수행하는데 오류가 발생했습니다

ORA-20000: interMedia Text 오류:

DRG-10700: 환경설저이 존재하지 않습니다: CTXSYS.DEFAULT_LEXER

ORA-06512: "CTXSYS.DRUE", 줄 126에서

ORA-06512: "CTXSYS.TEXTINDEXMETHODS", 줄 78에서

ORA-06512: 줄 1에서

 

 

참고로 전 win2000서버를 쓰고 있구요, oracle817ee를 사용하고 있습니다.

도와주세요........

[Top]
No.
제목
작성자
작성일
조회
3781자동시작이 안됩니다 (8.1.7).
권선훈
2001-04-21
2860
3791┕>Re: 자동시작이 안됩니다 (8.1.7).
최성준
2001-04-23 13:35:05
2928
3808 ┕>Re: Re: 자동시작이 안됩니다 (8.1.7).
권선훈
2001-04-23 20:05:10
3203
3837  ┕>Re: Re: Re: 자동시작이 안됩니다 (8.1.7).
최성준
2001-04-30 10:56:03
3537
3911   ┕>Re: Re: Re: Re: 자동시작이 안됩니다 (8.1.7).
권선훈
2001-04-28 19:54:53
2955
3780.swp 는 무슨 화일인가요?
초보
2001-04-21
2727
3806┕>Re: .swp 는 무슨 화일인가요?
윤동만
2001-04-23 18:35:19
2965
3778에러가 발생 했습니다. (ora-1115....)
김종훈
2001-04-19
2157
3779┕>Re: 에러가 발생 했습니다. (ora-1115....)
firebird
2001-04-21 13:48:12
2432
3777오라클에서 long형인 자료형 검색하기
혀니
2001-04-24
3139
3788┕>Re: 오라클에서 long형인 자료형 검색하기
우성곤
2001-04-23 12:04:36
3227
3816┕>Re: 오라클에서 long형인 자료형 검색하기
blue
2001-04-24 09:27:30
3800
3817 ┕>Re: Re: 오라클에서 long형인 자료형 검색하기
혀니
2001-04-24 09:59:12
3636
7609┕>질문) 오라클에서 long형인 자료형 검색하기
김종화
2001-09-26 13:59:17
3611
3776open_cursors에대하여
알고파
2001-04-21
1943
3795┕>Re: open_cursors에대하여
최성준
2001-04-23 14:09:39
3252
3771카트리지
신호
2001-04-21
2218
3769init.ora file 하고 config.ora file 과 무엇이 다른가요?(같은건가..)
chobo
2001-04-20
2099
3792┕>Re: init.ora file 하고 config.ora file
최성준
2001-05-07 11:27:21
2856
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.028초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다