반응형
오라클 접속
$sqlplus '/as sysdba'
오라클 SID 확인
SQL> select instance from v$thread;
오라클 데이터베이스 확인
SQL> select name, db_unique_name from v$database;
Tomcat + oracle DB 연동
(중요: DB서버가 아닌 웹서버에서 작업)
웹서버에서 오라클 jdbc 찾기
find / | grep ojdbc
cd /u01/app/oracle/product/11.2.0/xe/jdbc/lib && ll
주의: 웹서버에 ojbdc가 없는 경우 DB서버에 있는 ojdbc를 웹서버로 옮겨줘야한다
오라클 드라이버 복사
cp ojdbc6.jar 톰캣 경로/lib
cp ojdbc6.jar jdk 경로/lib
Tomcat + oracle DB 연동 확인 페이지 작성
cd /usr/local/lib/tomcat/webapps/ROOT
vi testcon.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test Connection</title>
</head>
<body>
<%@ page import="java.sql.*" %>
<h3> 톰캣 + Oracle 연동 중 </h3>
<%
try{
String oradriver="oracle.jdbc.driver.OracleDriver";
String dbURL="jdbc:oracle:thin:@192.168.0.40:1521:XE";
//192.168.0.40: 브릿지 모드한 DB서버 아이피 주소 1521 : listener포트, XE : SID 입력
Class.forName(oradriver); // SID 위에서 잘 찾아서 입력해야합니다.
Connection conn=DriverManager.getConnection(dbURL, "devops", "toor");
out.println("OracleDB 연동 성공"); // 오라클 계정 중 권한 준걸로 사용
conn.close();
}catch(Exception e){
out.println("OracleDB 연동 실패");
out.println(e.getMessage());
e.printStackTrace();
}
%>
</body>
</html>
(안될 시 권한 확인 및 DB서버, 웹서버 브릿지 모드 적용 확인)
tomcat 포트 변경
톰캣 설정 폴더로 이동
cd /usr/local/lib/tomcat/conf
서버 설정 파일(server.xml)에서 8080포트를 80포트로 수정
vi server.xml
웹서버 방화벽 설정
80번 포트 및 1521번 포트 방화벽 열어주기
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=1521/tcp
firewall-cmd --reload
톰캣 종료후 다시 시작
/usr/local/lib/tomcat/bin/shutdown.sh
/usr/local/lib/tomcat/bin/startup.sh
/usr/local/lib/tomcat/bin/shutdown.sh : 톰캣 정지
/usr/local/lib/tomcat/bin/startup.sh : 톰캣 시작
본인 IP/testcon.jsp 접속
번외
로컬PC 접속하기
명령 프롬프트에서 내 게이트웨이 주소 확인 및 접속
ipconfig
로그인 후 고급 설정 > NAT/라우터 관리 목록 > 포트포워트 설정에서 새규칙 추가
내부 IP주소에 CentOS 아이피 주소 입력
외부 포트 80 ~ 80
내부 포트 80 ~ 80
로컬 PC에서 접근 성공
반응형