728x90
반응형

TOMCAT 과 연동을 하는데 계속 톰캣이 죽어서 왜 그러나 했습니다. 이에 대한 질문이 게시판에도 있는데 답변은 없더군요. 알고보니 오라클 9i에서 XDB를 설치하면 리스너를 띄울때 8080 http, 2100 ftp 포트를 사용합니다. 그러니 당연히 충돌을 하지요. XDB를 사용할 일이 없다면 처음 DB생성시 XDB를 만들지 않으면 될 것 같습니다. 리스너 status 를 보거나 리스너 로그를 보면 알 수 있을 것입니다.

 

이에 대한 해결방법

 

dbca로 db를 만드는경우 기본 XDB가 들어갑니다. 여기서 XDB를 아예 설치하지 않거나 아니면 설치하더라도 위의 두 포트를 활성화하지 않도록 설정할 수 있습니다.

 

그런데 이미 XDB가 설치된 경우에는 몇가지 방법이 있습니다.

 

1. 두 포트를 disable 하기

이에 대한 방법은 아직 모르겠습니다.

 

 

2. XDB 테이블을 없애기

한국 otn 의 기술지원게시판에 해당 내용이 있습니다. xdb로 검색해보시면 됩니다.

dbca에서 xdb 관련하여 /home/oracle/ora920/rdbms/admin/catqm.sql, /home/oracle/ora920/rdbms/admin/catxdbj.sql 을 실행하는데 아래에서 보니 catnoqm.sql만 실행하면 되네요.

 

http://211.106.111.2:8880/bulletin/list.jsp

 

No. 20221

 

XML DATABASE (XDB) INSTALL 및 DEINSTALL 방법

=========================================

PURPOSE

-------

 

xdb.dbf file이 os상에서 삭제된 경우와 같이 경우에 따라 XDB를 deinstall하고,

다시 install해야 하는 경우가 발생할 수 있다.

이 문서에서는 그에 관한 방법을 기술하며, Oracle 9.2.0.1 환경에서 test되었다.

 

Explanation & Example

----------------------

 

1. XDB 삭제 방법

 

(1) database를 restart시킨다.

 

(2) sysdba로 접속하여 catnoqm.sql script를 수행한다.

 

cd $ORACLE_HOME/rdbms/admin

 

SQL> connect / as sysdba

SQL> set echo on

SQL> spool xdb_removal.log

SQL> @catnoqm.sql

 

2. XDB install방법

 

(1) XDB schema 생성을 위해 다음 두 parameter를 최소한 아래 정도 크기 이상으로

설정한다.

 

shared_pool_size =150MB

java_pool_size =150MB

 

(2) XDB tablespace가 지워진 경우 재 생성하고 이때, auto extend option은 on시킨다.

 

(3) db를 restartup한다.

 

(4) sysdba로 접속하고 catqm.sql을 수행한다.

이때 xdb user password xdb의 default tablespace, temporary tablespace이름을

argument로 지정하여야 한다.

즉, 다음과 같이 하면 된다.

 

cd $ORACLE_HOME/rdbms/admin

SQL> spool xdb_install.log

SQL> @catqm.sql

SQL> @catqm.sql XDB XDB TEMP

 

(5) invalid된것 없이 정상적으로 설치되었는지 확인한다.

 

SQL> select count(*) from dba_objects

where owner='XDB' and status='INVALID';

 

COUNT(*)

----------

0

 

(6) Check DBA_REGISTRY for XDB status:

 

SQL> select comp_name, status, version from DBA_REGISTRY

where comp_name= 'Oracle XML Database'

 

 

COMP_NAME

--------------------------------------------------------------

STATUS VERSION

----------- ------------------------------

Oracle XML Database

VALID 9.2.0.1.0

 

 

Reference Documents

------------------------

 

 

 

 

 

3. 포트를 바꾸기

이에 대해서는 다른 분이 보내주신 자료를 이용하여 바꾸었습니다. 자료출처는 정확히 모르겠네요?

아래 내용은 sys 사용자로 진행해야합니다.

 

Bookmark Fixed font Go to End

 

Doc ID: Note:209564.1

Subject: XDB: Utility package to change the HTTP and FTP ports used by XML DB.

Type: BULLETIN

Status: REVIEW_READY

 

Content Type: TEXT/PLAIN

Creation Date: 04-SEP-2002

Last Revision Date: 16-DEC-2002

 

*************************************************************

 

This article is being delivered in Draft form and may contain

 

errors. Please use the MetaLink "Feedback" button to advise

 

Oracle of any issues related to this article.

 

*************************************************************

 

PURPOSE

 

-------

 

To provide the ability to alter the ports which an XML DB uses for HTTP and FTP.

 

SCOPE & APPLICATION

 

-------------------

 

By default the XML Database (XDB) comes preconfigured with

 

the http port set to 8080 and the ftp port set to 2100.

 

If this conflicts with other applications on your server, or you want to run

 

2 database instances then you need to be able to alter the ports which xdb uses.

 

The recommended way of doing this is via the XML Database Parameters window of

 

the Oracle Enterprise Manager (OEM) console, however if you have not installed

 

this, or do not have access to it, ! this package provides the ability to change

 

the ports via SQL.

 

This script must be run as sys.

 

Once it is installed you can change the port using the commands:

 

call xdb_utility.set_http_port(n)

 

and

 

call xdb_utility.set_ftp_port(m)

 

To verify that this has worked, drop to the operating system prompt and issue

 

lsnrctl status

 

And look for the entries under

 

Listening Endpoints Sumary...

 

e.g.

 

before:

 

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhost)(PORT=2100))(Presentation=FTP)(Session=RAW))

 

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhost)(PORT=8080))(Presentation=HTTP)(Session=RAW))

 

after:

 

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhost)(PORT=2105))(Presentation=FTP)(Session=RAW))

 

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myhost)(PORT=8081))(Presentation=HTTP)(Session=RAW))

 

Note that it not necessary to restart either the database or the listener for these values to change.

 

Utility package to change the HTTP and FTP ports used by XML DB.

 

-----------------------------------------------------------------

 

CREATE OR REPLACE PACKAGE XDB_UTILITY

 

as

 

procedure SET_HTTP_PORT (PORT_NUMBER number);

 

procedure SET_FTP_PORT (PORT_NUMBER number);

 

end XDB_UTILITY;

 

/

 

show errors

 

--

 

create or replace package body XDB_UTILITY as

 

--

 

FTP_XPATH varchar2(256) := '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port';

 

HTTP_XPATH varchar2(256) := '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port';

 

--

 

procedure SET_XDB_PORT(PORT_XPATH varchar2, PORT_NUMBER number)

 

as

 

config XMLType;

 

begin

 

config := dbms_xdb.cfg_get();

 

select updateXML(config, PORT_XPATH, PORT_NUMBER)

 

into config

 

from dual;

 

dbms_xdb.cfg_update(config);

 

commit;

 

dbms_xdb.cfg_refresh();

 

end;

 

----

 

-- Create the SET_HTTP_PORT and SET_FTP_PORT functions

 

--

 

procedure SET_HTTP_PORT(PORT_NUMBER number)

 

as

 

begin

 

SET_XDB_PORT(HTTP_XPATH || '/text()', PORT_NUMBER);

 

end;

 

--

 

procedure SET_FTP_PORT(PORT_NUMBER number)

 

as

 

begin

 

SET_XDB_PORT(FTP_XPATH || '/text()', PORT_NUMBER);

 

end;

 

--

 

end XDB_UTILITY;

 

/

 

show errors

 

--

 

create or replace public synonym XDB_UTILITY for XDB_UTILITY

 

/

 

grant execute on XDB_UTILITY to XDBADMIN

 

/

 

Keywords:

 

---------

 

XMLDB

 

XDB

 

PORT

 

8080

 

2100

 

.

Copyright (c) 1995,2000 Oracle Corporation. All Rights Reserved. Legal Notices and Terms of Use

 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,