오라클 리스너 등록하는 법 찾다가 아래 트랙백 주소의 블로그에서 잘 정리 해 놓았길래 퍼 왔습니다.
그쪽 블로그에 글이 남겨지지 않아서 말을 못했군요. 문제시 내리겠습니다.



1. listener.ora 파일 설정
[oracle@orcl admin]$ cat listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl.ocmkorea.com)(PORT = 1521))
)
)

2. tnsnames.ora 파일 설정
[oracle@orcl admin]$ cat tnsnames.ora
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl.ocmkorea.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

3. sqlnet.ora 파일 설정
[oracle@orcl admin]$ cat sqlnet.ora
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

4. 리스너 시작
[oracle@orcl admin]$ lsnrctl start

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 17-APR-2011 22:40:05

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Starting /u01/app/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 10.2.0.1.0 - Production
System parameter file is /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=orcl.ocmkorea.com)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl.ocmkorea.com)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date 17-APR-2011 22:40:05
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=orcl.ocmkorea.com)(PORT=1521)))
The listener supports no services
The command completed successfully

5. 리스너 서비스 상태 확인하기
[oracle@orcl admin]$ lsnrctl serv

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 17-APR-2011 22:43:10

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl.ocmkorea.com)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
Service "+ASM_XPT" has 1 instance(s).
Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
Service "orcl" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
Service "orcl_XPT" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
The command completed successfully

'Programming > Oracle' 카테고리의 다른 글

Mysql 계정 생성 및 외부 접속 설정  (0) 2012.04.23
Oracle 랭킹 구하기 (Ranking 함수)  (0) 2011.04.29
SQL 기본 문법  (0) 2011.04.20
 프로그래밍을 하면서 DB의 값들을 특정 점수에 대해 랭킹을 주고싶을 때가 있다. 이럴때마다 받아온 DB를 배열에 넣고 프로그래밍 상에서 랭킹을 구해 새로운 배열에 넣기도했는데, DB를 직접 수정할 수 있다면 아래의 방법을 사용하는것이 더 좋겠다.



먼저 공동1등이 2명이면 다음등수는 3등으로 나오게하는경우
select
rank() over (order by 필드명 desc) rank
from 테이블명 

아래는 공동1등이 2명이라도 다음 등수는 2등이되는경우
select
    dense_rank() over (order by 필드명 desc)  rank
from  테이블명

'Programming > Oracle' 카테고리의 다른 글

Mysql 계정 생성 및 외부 접속 설정  (0) 2012.04.23
Oracle listener.ora 등록 방법  (0) 2011.08.22
SQL 기본 문법  (0) 2011.04.20
1. SQL 문장의 표준 문법
 1). 특별히 대소문자를 구별하지 않지만,
 2). SQL 명령어는 절마다 구별하다.
   SELECT *
   FROM table name
   WHERE 조건
 
 3). 들여쓰기와 탭을 적절히 사용하자 (가독성을 위해)
 4). ;(세미콜론)으로 문장을 종결하거나,  /(슬러시), RUN(런)
 5). 주석처리는 -- (2대쉬) 또는  /*  ~~~~~*/ 사용
 6) 조건의 데이터 타입이 CHARACTER 이거나 DATE형일경우 홑따움표('')를 사용하고, 숫자형이며 홑따옴표 없이 사용한다.
 7) 조건에서 문자열검색은 대소문자를 구별한다.
 8) DATE형일 경우에는 현제 세션의 NLS_SESSION_DATE_FORMAT에 종속된다. (이것을 바꾸어서 사용가능)
   - alter session set nls_date_format = 'YY/MM/DD';
 
 
3. 기본 적인 연산자
 1)IN(): and 와 같이 여러개를 동시에 검색하기위해 사용
 2) NOT IN() : IN()연산자의 반대. 선택된 것만 제외.
 3) 연산자 우선순위
  - 1. 단항연산자 (+,-);
  - 2. 이항연산자 (+,-,*,/);
  - ||
  - 4. 관계 연산자 (<,>,<=,>=,<>,=)
  - 5. SQL 관계연산자 (IN, NOT IN, BETWEEN ~ AND, ANY, ALL, LIKE)
  - 6. 논리연산자 (NOT, AND, OR)

'Programming > Oracle' 카테고리의 다른 글

Mysql 계정 생성 및 외부 접속 설정  (0) 2012.04.23
Oracle listener.ora 등록 방법  (0) 2011.08.22
Oracle 랭킹 구하기 (Ranking 함수)  (0) 2011.04.29

1. JDBC 사용 기본 문법


 1) 가장 기본적인 문법.

 import java.sql.*;  //1. 임포트하자. 

public class JDBCTest {

public static void main(String[] args) {

//2. JDBC 드라이버 설치 (JAVA 설치되 경로의 ext 폴더에 넣어준다)

String driver = "oracle.jdbc.driver.OracleDriver";

String url = "jdbc:oracle:thin:@localhost:1521:XE";  //jdbc의 버전과 드라이버정보를 표기한 후 접속할 IP와 Port번호와 SID를 입력.

try{

Class.forName(driver);

}catch(ClassNotFoundException ex){

System.out.println("Class Not Found");

}

//3. Oracle DB에 Connection 하자.

//4. Statement  객체 생성하자.

//5. SQL 실행

// String sql = "SELECT SYSDATE FROM dual";

String sql = "Select zipcode, sido, gugun,dong,bunji From zipcode Where dong like '%야탑동%' Order by zipcode";

Connection conn = null;

Statement stmt = null;

ResultSet rs = null;

try{

conn = DriverManager.getConnection(url,"scott","tiger");

stmt = conn.createStatement();

rs = stmt.executeQuery(sql);

rs.next(); // rs값의 첫번째 값을 읽는다!

java.util.Date now = rs.getDate(1);

System.out.println(now);

}catch(SQLException ex){

System.out.println(ex);

}

//6. Close 하자

finally{

try{

if(conn !=null) conn.close();

if(conn !=null) stmt.close();

}catch(SQLException ex){

System.out.println(ex);

}

}

}

}


 2) DriverManager를 이용해 Driver를 등록하는 방법

 import java.sql.DriverManager;

import java.sql.SQLException;

public class JDBCTest {

public static void main(String[] args) {

//DriverManager를 이용한 Driver Loading

try{

DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); 

//deregisterDriver로 해제 가능

System.out.println("성공");

}catch(SQLException ex){}

}

}



 3) properties를 이용한 DB 정보 입력

 public DBBean(){//Constructor

info = new Properties();

try{

info.load(new FileInputStream("D:\\OracleRoom\\dbinfo.properties"));

}catch(IOException ex){

System.out.println(ex.toString());

}

}







2. Java 에서 DB의 접근 속도를 줄이는법.

 1) Prepared Statement

   - 처음 문장을 선언할 때 문법 검사를 하지않고 마지막 값을 넣을 때 문법 검사를 하기때문에 속도가 더 빠르다.

 Connection conn = bean.getConnection();

int[] deptnoArray = {50,60,70,80,90};

String[] dnameArray = {"전산실","영업부","관리부","자재부","총무부"};

String[] locArray = {"서울","부산","대전","광주","대구"};

String sql = "Insert into dept(deptno, dname, loc) Values (?,?,?)"; //값을 넣지 않고 지나간다.

PreparedStatement pstmt = conn.prepareStatement(sql);

for (int i = 0; i < 5; i++) {

pstmt.setInt(1, deptnoArray[i]);

pstmt.setString(2, dnameArray[i]);

pstmt.setString(3, locArray[i]);

int row = pstmt.executeUpdate();

System.out.println(row +"개의 행이 반영됨");

}

bean.connClose();


 2) Batch 파일 형태로 쿼리를 한번에 모와서 실행하는 방법

 Connection conn = bean.getConnection();

int[] deptnoArray = {50,60,70,80,90};

String[] dnameArray = {"전산실","영업부","관리부","자재부","총무부"};

String[] locArray = {"서울","부산","대전","광주","대구"};

Statement stmt = conn.createStatement();

for (int i = 0; i < 5; i++) {

String sql = "Insert into dept values("+deptnoArray[i]+",'"+dnameArray[i]+"','" +locArray[i]+"')";

stmt.addBatch(sql);   // 쿼리문 저장,

}

int [] row = stmt.executeBatch();  //한번에 실행

System.out.println(row.length+"개의 행이 반영되었습니다");

bean.connClose();


'Programming > JAVA' 카테고리의 다른 글

Using openCSV in JAVA  (0) 2013.11.20
이클립스 JSP plug in / 환경설정  (3) 2011.03.24
JDBC 설정  (2) 2011.03.24
JAVA IO  (1) 2011.03.24
JAVA Threads  (2) 2011.03.24

+ Recent posts