1. JDBC드라이버 다운
    - 다운 : 오라클 홈페이지
http://www.oracle.com 에서 다운로드 메뉴 JDBC Drivers
    - 버젼 : 오라클 버젼에 따라 다른 버젼을 다운 받아야 함. 
    - ojdbc5.jar(jdk 1.5 이상), ojdbc6.jar(jdk 1.6 이상) 이지만 크게 상관은 없음.
※ 반드시 오라클 버전과 맞는 ojdbc를 받아야 한다. 맞지 않을 경우 요상한 에러들로 곤욕을 치루게 될것이다.
※ 오라클을 로컬에 깔은 경우 - 오라클설치폴더\product\11.2.0\dbhome_1\jdbc\lib\에 모여있음

2. 이클립스 JDBC 설정
    - 이클립스 자바프로젝트일 경우
       프로젝트 우측 클릭 - properties - Java Build Path - Libraries - Add External JARs.. 클릭
       오라클 버전에 맞는 ojdbc 파일을 찾아서 로드 시켜준다.
    
    - 이클립스 웹프로젝트일 경우
       프로젝트 폴더 중 WebContent -> WEB-INF -> lib 밑에 ojdbc 파일을 붙여넣기만 해주면 된다.

3. jdbc 연결 체크 포인트
    - 네트워크 확인. ip/port가 맞는지 확인해본다. (ping, telnet, tnsping 이용)
    - 오라클 DB가 정상 작동하고 있는지 확인.
         제어판 - 서비스 항목 중 OracleServiceORCL, OracleOraDb11g_home1TNSListener 가 정상적으로 시작 되어 있는지 확인.
         (리스너 설정을 바꿀경우 리스너 서비스를 정지시킨 상태에서 하는 것이 좋다.)
         콘솔창에서 sqlplus로 접속하여 정상적으로 로그인되는지 확인.
    - 리스너파일이 정삭적으로 세팅되어 있는지 확인 (이전 포스트 참고)
    - 서버,클라이언트 양쪽 다 방화벽 설정을 살펴본다.
    - sqlGate등의 프로그램으로 db 연결테스트를 해본다.

※ jsp 페이지로  jdbc연결 확인해보기
    - 웹프로젝트에서 jsp페이지를 만든다.
    - java.sql.*,java.sql.DriverManager.* 를 import
    - jdbc 드라이버를 로딩.
      Class.forName("oracle.jdbc.driver.OracleDriver");
    - 소켓연결을 맺어준다.
       Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@www.sab.co.kr:1521:ORCL","user00","user00");
       변경될수도 있는 값 - 1521(포트) / ORCL(DB이름) / www.sab.co.kr (DB가 깔리 pc ip, 접속하는 pc에 깔려있으면 localhost) /
                                       user00(id) / user00(pw)
    - <body> 에서 conn변수를 out.print 로 찍어본다.
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ page language ="java" import="java.sql.*,java.sql.DriverManager.*" %>
<%
 
 Class.forName("oracle.jdbc.driver.OracleDriver");
 Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@www.sab.co.kr:1521:ORCL","user00","user00");
 
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
 
<%
 out.print(conn);
%>
</body>
</html>

  

1. 오라클 다운 / 설치
   
http://www.oracle.com/ 에서 다운로드 메뉴
   
    버젼 :
Database 11g Enterprise/Standard Editions
             운영체제에 알맞은 것을 골라 다운로드

    file1과 file2를 다운 받고 같은 폴더에 압축을 풀어준다.
    압축을 푼 폴더에서 setup 클릭하여 설치 진행.
    설치진행중 나오는 패스워드 입력란은 반드시 입력하고 잊어먹지 않도록 한다.
    긍정적인 대답...대답.....  설치완료!
     
 설치확인법.
  
cmd창에서 sqlplus 명령어로 접속되는지 확인.
   사용자 : system
   비밀번호 : 설치시 입력 했던거
   
   관리도구-서비스 실행
   OracleService(ORCL) [괄호친부분은 db이름이다. 설치시 입력했던 값으로 나오게된다. 기본값은 ORCL]
   OracleOraDb11g_home1TNSListener [소켓통신]
   위 2개외에 몇개 더 있지만 위의 2개가 보이면 설치에 성공한것으로 봐도 무방할듯 싶다.
 ※ 위의 서비스는 메모리를 많이 잡아먹으므로 테스트용으로 로컬에 설치했을 경우 서비스를 수동으로 해놓고 필요할때만 써먹으면 컴퓨터 버벅거리거나 윈도부팅후 딜레이 되는 현상등이 없어진다.

2. 연결확인

    2-1. 네트워크 연결 확인 (소켓연결확인)

     xp일경우는 cmd창에서 telnet localhost 1521 실행

     windows7은 telnet명령어가 없으므로..
     자바코드 작성 후 실행해본다.

import java.net.Socket;

public class Test {
    public static void main(String[] args) throws Exception{
        String url = "localhost";
        int port = 1521;
        Socket socket = new Socket(url, port);
        System.out.println(socket);
    }
}

결과값

Socket[addr=localhost/127.0.0.1,port=1521,localport=52919]

위와같이 잘나오면 url,포트연결은 일단 문제가 없는것이다.



    가상호스트
  주소값 localhost 는 windows\system32\drivers\etc\hosts 파일 수정하여 바꿀수 있다.
  파일을 열어보면

  # localhost name resolution is handled within DNS itself.
  # 127.0.0.1 localhost
  # ::1 localhost
  # 192.168.123.158
www.sab.co.kr 임으로 추가한 내용

  임의로 추가한 도멘인으로도 접속이 가능해진다.

   2-2. 리스너세팅
    ※ 작업전 리스너 서비스 정지 권장.

    C:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN
    오라클 설치폴더\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora 파일 수정.

SID_LIST_LISTENER =
   (SID_LIST =

      (SID_DESC =
         (SID_NAME = CLRExtProc)
         (ORACLE_HOME = C:\oracle\product\11.2.0\dbhome_1)
         (PROGRAM = extproc)
         (ENVS = "EXTPROC_DLLS=ONLY:C:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
      )

      (SID_DESC =
         (SID_NAME = ORCL)
         (ORACLE_HOME = C:\oracle\product\11.2.0\dbhome_1)
         (PROGRAM = extproc)
         (ENVS = "EXTPROC_DLLS=ONLY:C:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
      )

   )

LISTENER =
   (DESCRIPTION_LIST =
      (DESCRIPTION =
         (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
         (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
         (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.123.161)(PORT = 1521))
//추가
      )
   )





     2-3. 방화벽 해제
       
 
  
 «이전 1  다음»