ALTIBASE 사용자가이드 Templete

Similar documents
단계

ALTIBASE 사용자가이드 Templete

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

ALTIBASE 사용자가이드 Templete

.

Microsoft Word - src.doc

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

JDBC 소개및설치 Database Laboratory

쉽게 풀어쓴 C 프로그래밊

untitled

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

ALTIBASE 사용자가이드 Templete

[Brochure] KOR_TunA

슬라이드 1

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

ALTIBASE 사용자가이드 Templete

리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드]

Spring Boot/JDBC JdbcTemplate/CRUD 예제

Microsoft PowerPoint - 1_이우진.pptx

PowerPoint 프레젠테이션

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Tibero

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

기술자료

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

표준프레임워크 Nexus 및 CI 환경구축가이드 Version 3.8 Page 1

ALTIBASE 사용자가이드 Templete

슬라이드 1

No Slide Title

Apache2 + Tomcat 5 + JK2 를 사용한 로드밸런싱과 세션 복제 클러스터링 사이트 구축

교육2 ? 그림

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

JDK이클립스

SAS9.2_SAS_Enterprise_Miner_install_guide_single_user_v2

Splentec V-WORM Quick Installation Guide Version: 1.0 Contact Information 올리브텍 주소 : 경기도성남시분당구구미로 11 ( 포인트타운 701호 ) URL: E-M

chapter1,2.doc

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

FileMaker 15 ODBC 및 JDBC 설명서

Windows 8에서 BioStar 1 설치하기

ALTIBASE 사용자가이드 Templete

ALTIBASE 사용자가이드 Templete

슬라이드 1

슬라이드 1

FileMaker ODBC 및 JDBC 가이드

Admin Guide for dummy

Webtob( 멀티도메인 ) SSL 인증서갱신설치가이드 본문서는주식회사한국기업보안에서 SSL 보안서버인증서설치를위해작성된문서로 주식회사한국기업보안의동의없이무단으로사용하실수없습니다. [ 고객센터 ] 한국기업보안. 유서트기술팀 Copyright 201

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

CLX8380_KR.book

10.ppt

untitled

로거 자료실

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

Interstage5 SOAP서비스 설정 가이드

ALTIBASE WebLogic 연동 가이드

DBMS & SQL Server Installation Database Laboratory

untitled

단계

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

슬라이드 1

Windows Server 2012

아래 항목은 최신( ) 이미지를 모두 제대로 설치하였을 때를 가정한다

Microsoft PowerPoint - 18-DataSource.ppt

MVVM 패턴의 이해

bn2019_2

자바-11장N'1-502

rmi_박준용_final.PDF

Microsoft Word - Windows_apahce_php_CUBRID2008

Microsoft PowerPoint - [Practice #1] APM InstalI.ppt

ISP and CodeVisionAVR C Compiler.hwp

Chapter 1

JMF2_심빈구.PDF

VPN.hwp

4S 1차년도 평가 발표자료

개요오라클과티베로에서 JDBC 를통해접속한세션을구분할수있도록 JDBC 접속시 ConnectionProperties 를통해구분자를넣어줄수있다. 하나의 Node 에다수의 WAS 가있을경우 DB 에서 Session Kill 등의동작수행시원하는 Session 을선택할수있다.

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

Spring Boot

PowerPoint 프레젠테이션

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

PowerPoint 프레젠테이션

ALTIBASE WebLogic 연동 가이드

Sena Device Server Serial/IP TM Version

OM2M 기반의 OHP-M2M 오픈소스설치가이드 2015 년 8 월 경북대학교통신프로토콜연구실 최예찬, 강형우 요약 사물인터넷 (Internet of Things: IoT) 이이슈가되면서다양한사

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

PowerPoint 프레젠테이션

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

vRealize Automation용 VMware Remote Console - VMware

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

PowerPoint 프레젠테이션

6. 설치가시작되는동안 USB 드라이버가자동으로로드됩니다. USB 드라이버가성공적으로로드되면 Setup is starting( 설치가시작되는중 )... 화면이표시됩니다. 7. 화면지침에따라 Windows 7 설치를완료합니다. 방법 2: 수정된 Windows 7 ISO

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

PowerPoint 프레젠테이션

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

ALTIBASE 사용자가이드 Templete

Transcription:

Real Alternative DBMS ALTIBASE, Since 1999 ALTIBASE & JBOSS 연동가이드 2010. 06 Copyright c 2000~2013 ALTBASE Corporation. All Rights Reserved.

Document Control Change Record Date Author Change Reference 2010-06 Swj0701 Created Reviews Date Name (Position) Distribution Name Location ALTIBASE & JBOSS 연동가이드 2 page of 21

목차 개요... 4 JBOSS 설치... 5 설치전준비사항... 5 기본설치... 5 JBOSS 디렉토리구조... 6 JBOSS 구동... 7 바인딩 IP 주소... 8 JBOSS 종료... 9 JBOSS 구동및종료시유의사항... 9 ALTIBASE 와 JBOSS 의연동... 11 JDBC 드라이버... 11 JDBC 드라이버설정... 11 데이터소스파라미터... 11 데이터소스설정 ( 콘솔환경 )... 12 샘플예제... 17 JSP 샘플예제... 17 실행방법... 18 ALTIBASE & JBOSS 연동가이드 3 page of 21

개요 본문서는 ALTIBASE 와 JBOSS 를연동하여운영하기위한가이드문서로써 JBOSS 를설치하는방법및환경변수설정방법, ALTIBASE 와 JBOSS 를연동하는방법에대해서기술한다. 본문서는 ALTIBASE 5.3.3 과 JBOSS 5.1 버전에대해기술한문서이다. ALTIBASE & JBOSS 연동가이드 4 page of 21

JBOSS 설치 본장에서는 JBOSS 를설치하고구동하는방법, 환경변수를설정하는방법, IP 주소바인딩하는방법, 디렉토리구조등에대해서설명한다. 설치전준비사항 JBOSS 는 Java EE 5 표준인증을받은 application server 이기때문에 JBOSS 를사용하기위해서는 JDK 1.5 이상을설치해야한다. 기본설치 JBOSS 를설치하기위해서해당버전의패키지를 JBOSS 홈페이지에서다운로드받는다 (http://www.jboss.org/jbossas/downloads). 패키지를다운로드받은후, 윈도우환경에서는알집등의압축도구를이용하여압축을풀고, 유닉스환경에서는 unzip 명령어를통하여압축을푼다. # unzip jboss-5.1.0.ga.zip 생략 inflating: jboss-5.1.0.ga/server/web/deployers/jboss-jca.deployer/jboss-jca-deployer.jar inflating: jboss-5.1.0.ga/server/web/deployers/jbossweb.deployer/web.xml inflating: jboss-5.1.0.ga/server/web/deployers/metadata-deployer-jboss-beans.xml inflating: jboss-5.1.0.ga/server/web/deployers/security-deployer-jboss-beans.xml # 패키지압축을푸는것으로 JBOSS 의설치는완료되며, JDK 를설정한후에구동시키면된다. 패키지압축을풀면해당패키지와동일한이름의디렉토리가생기게되며, 디렉토리하위에는 JBOSS 구동및종료, 테스트에대한모든파일과디렉토리가있다. 본문서에는압축을풀어서생기는 jboss-5.1.0.ga 디렉토리를 JBOSS_HOME 으로명칭한다. 윈도우환경 JDK 설정 윈도우환경에서 JDK 를설정하는방법은다음과같으며, 두가지방법중한가지를선택하여설정한다. 시스템환경변수에 JAVA_HOME 변수를추가 JBOSS 구동스크립트인 JBOSS_HOME/bin/run.bat 파일에추가 <run.bat> @echo off rem ------------------------------------------------------------------------- rem JBoss Bootstrap Script for Windows ALTIBASE & JBOSS 연동가이드 5 page of 21

rem ------------------------------------------------------------------------- rem $Id: run.bat 88978 2009-05-16 18:18:45Z alex.loubyansky@jboss.com $ set JAVA_HOME=C:\Program Files\java\jdk1.5.0 JDK 경로를추가 @if not "%ECHO%" == "" echo %ECHO% @if "%OS%" == "Windows_NT" setlocal if "%OS%" == "Windows_NT" ( set "DIRNAME=%~dp0%" ) else ( set DIRNAME=.\ ) 생략 유닉스환경 JDK 설정 유닉스환경에서 JDK 를설정하는방법은다음과같으며, 네가지방법중한가지를선택하여설정한다. 시스템환경변수에 JAVA_HOME 변수를추가 JBOSS 구동스크립트인 JBOSS_HOME/bin/run.sh 파일에추가 JBOSS_HOME/bin/run.conf 구동설정파일에추가 JBOSS_HOME/server/<Configuration>/run.conf 구동설정파일에추가 <run.sh> #!/bin/sh ======================================================= ## JBoss Bootstrap Script ======================================================= ### $Id: run.sh 88978 2009-05-16 18:18:45Z alex.loubyansky@jboss.com $ ### JAVA_HOME=/usr/jdk/jdk1.5.0 JDK 경로를추가 DIRNAME=`dirname $0` PROGNAME=`basename $0` GREP="grep" 생략 JBOSS 디렉토리구조 JBOSS 를설치하면다음과같은디렉토리들이생성된다. ALTIBASE & JBOSS 연동가이드 6 page of 21

JBOSS 구동 JBOSS 를설치하고 JDK 설정을하면 JBOSS 를구동할수있다. 유닉스환경에서는 JBOSS_HOME/bin/run.sh 스크립트를실행시켜서구동할수있으며, 윈도우환경에서는 JBOSS_HOME/bin/run.bat 배치파일을실행시켜서구동할수있다. # sh run.sh 생략 13:54:55,994 INFO [TomcatDeployment] deploy, ctxpath=/ 13:54:56,032 INFO [TomcatDeployment] deploy, ctxpath=/jmx-console 13:54:56,083 INFO [Http11Protocol] Starting Coyote HTTP/1.1 on http-192.168.1.35-8180 ALTIBASE & JBOSS 연동가이드 7 page of 21

13:54:56,103 INFO [AjpProtocol] Starting Coyote AJP/1.3 on ajp-192.168.1.35-8109 13:54:56,111 INFO [ServerImpl] JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221053)] Started in 51s:458ms JBOSS 가정상적으로구동이되면가장마지막로그메시지에 Started 라는문구가출력되며, 웹콘솔로접근하여정상적으로 JBOSS 가구동되었는지확인할수있다 (http://server_ip: 포트번호 ). Administration Console 에 admin 계정 ( 패스워드 admin) 으로접속하여현재구동중인 JBOSS 에대한운영이가능하다. 바인딩 IP 주소 바인딩 IP 주소는 JBOSS 를구동하는장비의네트워크인터페이스카드에할당되어있는 IP 주소로 JBOSS 가사용하는포트를바인딩하는 IP 주소를의미한다. JBOSS 는바인딩 IP 주소를구동스크립트의옵션으로지정할수있다. 바인딩 IP 주소를사용할경우, 웹콘솔에접속할때해당바인딩 IP 를입력해야한다. # sh run.sh b 바인딩 IP 주소 http:// 바인딩 IP 주소 : 포트번호 웹콘솔접속시 ALTIBASE & JBOSS 연동가이드 8 page of 21

JBOSS 종료 JBOSS 를종료하기위해서는 JBOSS_HOME/bin/shutdown.sh 또는 shutdown.bat 스크립트를실행한다. # sh shutdown.sh S localhost 로구동한경우 Shutdown message has been posted to the server. Server shutdown may take a while - check logfiles for completion # JBOSS 구동및종료시유의사항 JBOSS 를구동하고종료할때유의사항은다음과같다. 구동시포트중복으로인한에러 JBOSS 는기본으로설정되어있는 Connection Port 가 8080 이다. 하지만이 Port 를다른프로그램에서사용하고있을경우 JBOSS 구동시에다음과같은에러가발생하기때문에 Port 변경이필요하다. DEPLOYMENTS IN ERROR: Deployment "WebServer" is in error due to the following reason(s): LifecycleException: Protocol handler initialization failed: java.net.bindexception: Address already in use /127.0.0.1:8080 JBOSS 의기본 Port 를변경하기위해서는 JBOSS_HOME/server/default/deploy/jbossweb-tomcat55.sar/server.xml 파일에서 Connector port 를수정한다. <Connector port="8080" address="${jboss.bind.address}" maxthreads="250" strategy="ms" maxhttpheadersize="8192" emptysessionpath="true" enablelookups="false" redirectport="8443" acceptcount="100" connectiontimeout="20000" disableuploadtimeout="true"/> JBOSS 종료시 IP 지정으로인한에러 JBOSS 구동시에 Localhost 로접속을한경우에는위에서언급한 shutdown 구문을사용하면되지만 IP 를바인딩해서구동한경우동일한구문으로종료하면다음과같은에러가발생한다. Exception in thread "main" javax.naming.communicationexception: Could not obtain connection to any of these urls: localhost:1099 [Root exception is javax.naming.communicationexception: Failed to connect to server localhost/127.0.0.1:1099 [Root exception is ALTIBASE & JBOSS 연동가이드 9 page of 21

javax.naming.serviceunavailableexception: Failed to connect to server localhost/127.0.0.1:1099 [Root exception is java.net.connectexception: Connection refused]]] at org.jnp.interfaces.namingcontext.checkref(namingcontext.java:1763) at org.jnp.interfaces.namingcontext.lookup(namingcontext.java:693) at org.jnp.interfaces.namingcontext.lookup(namingcontext.java:686) at javax.naming.initialcontext.lookup(initialcontext.java:351) at org.jboss.shutdown.main(shutdown.java:219) IP 를바인딩해서구동한경우종료시에해당 IP 를지정하여 shutdown 해야한다. # sh shutdown.sh s 바인딩 _IP IP 바인딩해서구동한경우 ALTIBASE & JBOSS 연동가이드 10 page of 21

ALTIBASE 와 JBOSS 의연동 본장에서는 ALTIBASE 와 JBOSS 를연동하여사용하기위한설정방법에대해서설명한다. JDBC 드라이버 JDBC 란자바응용프로그램에서데이터베이스에연결하여여러 SQL 을실행할수있도록제공하는표준인터페이스를말한다. 이러한 JDBC 드라이버는각데이터베이스벤더사가제공하고있으며, ALTIBASE 에서는 Altibase.jar 파일로제공하고있다. 이 JDBC 드라이버는 $ALTIBASE_HOME/lib 디렉토리안에존재한다. ALTIBASE 5 버전부터는 $ALTIBASE_HOME/lib 디렉토리에 Altibase.jar 와 Altibase5.jar 파일이존재하는데, Altibase.jar 는일반 ALTIBASE JDBC 드라이버파일이며, Altibase5.jar 는 ALTIBASE 5 버전과그이하의버전을함께사용하고싶을때사용하는파일이다. 따라서하나이상의 ALTIBASE 와연동하기를원한다면일반적으로 Altibase5.jar 파일을사용한다. JDBC 드라이버설정 어플리케이션에서직접구현하여커넥션풀을사용하는경우에는어플리케이션과 JDBC 드라이버를같이패키징하면되지만 JBOSS 의 JNDI 를통해데이터소스에접근하고자한다면 JDBC 드라이버를모든 server configuration 에서접근이가능한곳에위치시켜야한다. JBOSS 에서는 JBOSS_HOME/common/lib 디렉토리에 JDBC 드라이버 (Altibase.jar) 를위치시키면모든 server configuration 에서접근이가능하다. 해당디렉토리는동적으로반영되지않기때문에 JDBC 드라이버를위치시킨후, 반드시 JBOSS 를재기동시켜야한다. 데이터소스파라미터 다음은 ALTIBASE 와 JBOSS 를연동하여사용하기위한데이터소스설정파라미터이며, 데이터소스설정시사용할수있는거의모든설정정보를포함하고있다. 나열된파라미터들의정의를확인한후, 필요로하는파라미터들을조합하여데이터소스파일에설정한다. 문서편집기를이용하여데이터소스파일을직접생성할수있으며, xx-ds.xml 의형태로 JBOSS_HOME/server/default/deploy 디렉토리에위치시킨다. 파라미터 내용 <jndi-name> 사용할데이터소스의이름을설정 어플리케이션에서 jndi-name 을 lookup ALTIBASE & JBOSS 연동가이드 11 page of 21

시켜서사용 <connection-url> <driver-class> <user-name> <password> <new-connection-sql> <check-valid-connection-sql> <valid-connection-checker-class-name> <exception-sorter-class-name> <track-statements> <prepared-statement-cache-size> <shared-prepared-statements> <query-timeout> <background-validation> <idle-timeout-minutes> 접속할 DBMS 의 url 을설정 DBMS 와연동시사용할 JDBC 드라이버를설정 사용자설정 패스워드설정 커넥션생성시호출할 SQL 지정 커넥션풀에서커넥션을얻었을때호출할 SQL 지정 커넥션풀에서커넥션을호출하기전에유효한커넥션인지확인함 에러발생시 DBMS 의에러코드와메시지를확인 Statement 와 Resultset 이 unclosed 되는경우추적하는모니터링옵션 커넥션당캐싱할 preparestatement 의수로써다음호출때재사용함 Preparestatement 캐싱여부를지정하는것으로동일트랜잭션에서여러번호출하는경우 statement 를반환함. 기본값은 false. SQL 의 Timeout 값을설정 커넥션이유효한지검사하는과정의오버헤드를줄이기위해서사용하는옵션. 기본값은 false. 커넥션이닫히기전까지 idle 상태의최대시간. 기본값은 15 분 <background-validation-minutes> Connectionvalidator 가실행하는주기. 기본값은 10 분. <min-pool-size> <max-pool-size> <transaction-isolation> <metadata> 커넥션풀의최소개수 커넥션풀의최대개수 Transaction Isolation Level 을지정하지않으면 DBMS 의기본값을사용함 Standardjbosscmp-jdbc.xml 파일에정의되어있는 type-mapping 데이터소스설정 ALTIBASE 와 JBOSS 를연동하여사용하기위해데이터소스를설정하는방법에대하여기술한다. ALTIBASE & JBOSS 연동가이드 12 page of 21

로컬트랜잭션 분산트랜잭션을지원하지않고로컬트랜잭션만사용하는경우다음과같이데이터소스를설정할수있다. ALTIBASE 와 JBOSS 를연동하기위한최소한의데이터소스설정이므로추가적인항목이필요한경우위에서언급한항목을적절하게사용하도록한다. 파일명은 xx-ds.xml 의형태로저장하며, JBOSS 를재구동하지않아도자동으로데이터소스파일을감지하여바인딩한다. #altibase-ds.xml <datasources> <local-tx-datasource> <jndi-name>altitest</jndi-name> <connection-url>jdbc:altibase://127.0.0.1:20300/mydb</connection-url> <driver-class>altibase.jdbc.driver.altibasedriver</driver-class> <user-name>sys</user-name> <password>manager</password> <min-pool-size>10</min-pool-size> <max-pool-size>100</max-pool-size> <blocking-timeout-millis>5000</blocking-timeout-millis> <idle-timeout-minutes>15</idle-timeout-minutes> <metadata> <type-mapping>altibase</type-mapping> </metadata> </local-tx-datasource> </datasources> 분산트랜잭션 다음은분산트랜잭션을사용하는경우의데이터소스파일의설정예이다. JBOSS_HOME/docs/jca 디렉토리에는 DBMS 별로로컬 / 분산트랜잭션에대한데이터소스설정예제파일이있으므로참고하여설정하도록한다. 파일은 xx-xa-ds.xml 의형태로저장한다. #altibase-xa-ds.xml <datasource> ALTIBASE & JBOSS 연동가이드 13 page of 21

<xa-datasource> <jndi-name>altibaseds</jndi-name> <track-connection-by-tx /> <issamerm-override-value>false</issamerm-override-value> <xa-datasourceclass>altibase.jdbc.driver.abxadatasource</xadatasource-class> <xa-datasource-property name="servername">127.0.0.1</xadatasource-property> <xa-datasource-property name="portnumber">20300</xadatasource-property> <xa-datasource-property name="user">sys</xa-datasourceproperty> <xa-datasource-property name="password">manager</xadatasource-property> <metadata> <type-mapping>altibase</type-mapping> </metadata> <!--pooling parameters--> <min-pool-size>5</min-pool-size> <max-pool-size>250</max-pool-size> <blocking-timeout-millis>5000</blocking-timeout-millis> <idle-timeout-minutes>5</idle-timeout-minutes> <check-valid-connection-sql>select * from system_.sys_database_</check-valid-connection-sql> </xa-datasource> </datasources> Failover Failover 는 DBMS 의장애로인해서비스가중단되는것을방지하기위해사용중인 DBMS 의장애시에이를감지하고다른 DBMS 로절체하여계속적인서비스를제공하기위한기능이다. Failover 기능은 JBOSS 에서제공하는구문을이용하는방법과 ALTIBASE 에서제공하는구문을이용하는방법이있다. ALTIBASE 에서는 5.3.3 이상버전에서만 Failover 기능을제공하기때문에하위버전을사용시 JBOSS 의구문을이용해야한다. 다음은 ALTIBASE 에서제공하는구문을통한 Failover 이다. 데이터소스파일을수정한다음첫번째 url 의 DBMS 를종료시키고테스트해보면두번째 url 의 DBMS 로 Failover 가되는것을확인할수있다. ALTIBASE 에서제공하는구문을사용하면 CTF(Connection Time Failover) 와 STF(Session Time Failover) 가가능하다. #altibase-ds.xml <datasources> <local-tx-datasource> <jndi-name>altitest</jndi-name> ALTIBASE & JBOSS 연동가이드 14 page of 21

<connection-url>jdbc:altibase://127.0.0.1:20911/mydb? AlternateServers=(192.168.1.76:20911)& ConnectionRetryCount=3& ConnectionRetryDelay=3&LoadBalance=off& SessionFailOver=on </connection-url> <driver-class>altibase.jdbc.driver.altibasedriver</driver-class> <user-name>sys</user-name> <password>manager</password> <min-pool-size>10</min-pool-size> <max-pool-size>100</max-pool-size> <blocking-timeout-millis>5000</blocking-timeout-millis> <idle-timeout-minutes>15</idle-timeout-minutes> <metadata> <type-mapping>altibase</type-mapping> </metadata> </local-tx-datasource> </datasources> 다음은 JBOSS 에서제공하는 Failover 구문이다. Failover 할 DBMS 의 connectionurl 을추가해주고, 두 url 을구분하는구분자를 <url-delimiter> 로지정해준다. JBOSS 에서제공하는구문을사용하면 CTF(Connection Time Failover) 만가능하다. 테스트하는방법은위의내용과동일하다. <datasources> <local-tx-datasource> <jndi-name>altitest</jndi-name> <connection-url> jdbc:altibase://127.0.0.1:20911/mydb, jdbc:altibase://192.168.1.76:20911/mydb</connection-url> <url-delimiter>,</url-delimiter> <driver-class>altibase.jdbc.driver.altibasedriver</driver-class> <user-name>sys</user-name> <password>manager</password> <min-pool-size>10</min-pool-size> ALTIBASE & JBOSS 연동가이드 15 page of 21

<max-pool-size>100</max-pool-size> <blocking-timeout-millis>5000</blocking-timeout-millis> <idle-timeout-minutes>15</idle-timeout-minutes> <metadata> <type-mapping>altibase</type-mapping> </metadata> </local-tx-datasource> </datasources> ALTIBASE & JBOSS 연동가이드 16 page of 21

샘플예제 위에서 ALTIBASE 와 JBOSS 의연동방법에대해서알아봤다면, 본장에서는위의설정을이용하여 ALTIBASE 에접속및쿼리를수행함으로써 ALTIBASE 와 JBOSS 의연동을확인해본다. JSP 샘플예제 <%@ page import="javax.naming.*" %> <%@ page import="java.sql.*" %> <%@ page import="javax.sql.*" %> <% Connection con=null; Statement ResultSet st=null; rs=null; try { InitialContext ctx = new InitialContext(); DataSource ds = (DataSource)ctx.lookup("java:/AltiTest"); con=ds.getconnection(); st=con.createstatement(); rs=st.executequery("select * from dual"); while(rs.next()) { out.println("result :" + rs.getstring(1)+"<br>"); } } catch(exception e) { out.println("error:" + e.getmessage()); e.printstacktrace(); } finally { if(rs!=null)rs.close(); if(st!=null)st.close(); if(con!=null)con.close(); ALTIBASE & JBOSS 연동가이드 17 page of 21

} %> 실행방법 ALTIBASE 와 JBOSS 의연동테스트를하기위해두가지방법을사용할수있다. 기존에배포되어있는 WAR 에테스트하고자하는 JSP 파일을생성하는방법과 WAR 를직접생성하고 JBOSS 에디플로이한후테스트하는방법이있다. 기존 WAR 이용 JBOSS_HOME/server/default/deploy 디렉토리에는 JBOSS 에서기본적으로제공하는 WAR 가있다. 제공되는 WAR 에 JSP 예제파일을생성한후, 테스트해본다. 본문서에서테스트할때는 jmx-console.war 에 JSP 파일을생성하여사용했다. JSP 파일을생성한후에는주소창에 JBOSS 가구동중인서버 IP 와포트번호, JSP 파일이생성된 WAR 이름, JSP 파일이름을차례대로입력한다. http://server_ip: 포트번호 /WAR 이름 /jsp 파일이름 예 ) http://192.168.1.35:8180/jmx-console/test.jsp WAR 생성 JBOSS 웹콘솔을사용하여 JSP 파일을디플로이한후에테스트하는방법에대해서설명한다. 디플로이는어플리케이션의서비스들을시작하기위해서 JBOSS 에모듈파일을올리고제어하는모든동작을일컫는작업을의미한다. 샘플테스트에서는위에서제공한샘플예제를이용하여 WAR 를작성하고, JBOSS 서버에디플로이하여실행시키는방법에대하여설명한다. 샘플테스트에서사용하는 WAR 는이클립스를사용하여생성하였다. ALTIBASE & JBOSS 연동가이드 18 page of 21

1. 이클립스를실행시켜서 [File] [New] [Project] 를선택한후에다음의 Wizard 에서 [Web] Dynamic Web Project 를선택하여프로젝트이름을설정한다. 2. 다음과같이프로젝트가생성이되면, 위의샘플예제를 JSP 파일로생성하여 WebContent 디렉토리밑에추가해준다. Lib 폴더에는 Altibase.jar 파일을추가해준다. 3. JSP 파일과 Altibase.jar 파일을추가했으면, [File] [Export] 를선택하고, [Web] War file 를선택하여생성할경로를지정해주면 WAR 가생성된다. 4. WAR 가생성되면, JBOSS 웹콘솔에서 Web Application Add a new resource 를클릭하여 WAR 를업로드한다. ALTIBASE & JBOSS 연동가이드 19 page of 21

클릭 Web Application 선택 5. 생성한 WAR 를업로드하면자동적으로디플로이가되며, 디플로이가성공했다는메시지가출력된다. 디플로이된 WAR 도리스트에서확인할수있다. 6. 디플로이가완료되면인터넷창을띄워서다음과같은 URL 을입력하여실행시키면된다. http://server_ip: 포트번호 /WAR 이름 /jsp 파일이름예 ) http://192.168.1.35:8180/altitest/test.jsp ALTIBASE & JBOSS 연동가이드 20 page of 21

알티베이스 서울특별시구로구구로 3 동 182-13 대륭포스트 2 차 1008 호 02-2082-1000 http://www.altibase.com 대전사무소대전광역시서구둔산동 921 주은리더스텔 901 호 042-489-0330 기술지원본부서울특별시구로구구로 3 동 182-13 대륭포스트 2 차 908 호 02-2082-1000 기술지원센터 02-2082-1114 http://support.altibase.com Copyright c 2000~2013 ALTIBASE Corporation. All Rights Reserved. 이문서는정보제공을목적으로제공되며, 사전에예고없이변경될수있습니다. 이문서는오류가있을수있으며, 상업적또는특정목적에부합하는명시적, 묵시적인책임이일체없습니다. 이문서에포함된 ALTIBASE 제품의특징이나기능의개발, 발표등의시기는 ALTIBASE 재량입니다. ALTIBASE 는이문서에대하여관련된특허권, 상표권, 저작권또는기타지적재산권을보유할수있습니다. ALTIBASE & JBOSS 연동가이드 21 page of 21