본문으로 바로가기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.


Oracle11g 설치, 유저생성, 권한부여, 접속(1)

Oracle을 설치하고 사용하려면 새로운 계정을 생성하고 접소 권한을 부여해야 합니다.

오라클을 설치했다면 Sql Plus를 실행해 봅니다.



1) system -> sysdba 접속



SQL Plus에 접속하여 system으로 로그인을 합니다. 로그인 패스워드는 설치시 입력했던 비밀번호가 됩니다.

System에서 로그인한 다음 sysdba로 접속합니다.

SQL> conn sys as sysdba


2) 유저 생성

system, sysdba는 데이터베이스의 모든 권한을 가지고 있는 계정으로 유출시 큰 위험이 있어, 새로 사용할 수있는 계정을 만들겠습니다.

저는 ktko/ktko1234 라는 계정명과 패스워드를 만들어 설정하겠습니다.

SQL> create user ktko identified by ktko1234

   2   default tablespace users

   3   temporary tablespace temp;



계정을 생성하고 Sql Developer로 접속시도를 해보았으나.!



ORA-01045: user KTKO lacks CREATE SESSION privilege; logon denied 에러가 발생하였습니다.

대충 영어를 해석해보면 ktko 유저에 세션을 생성하는 것이 잠겨있어 로그인이 되지 않는다 라는 의미인 것같습니다.

그렇다면 ktko유저에 대하여 권한을 부여하겠습니다.


3) 권한 부여

ktko 유저를 접속하여 사용하기 위해선 권한을 부여해줘야 합니다.

권한을 주기 위해서는 grant 명령어로 권한을 부여합니다.

SQL>grant connect, resource, alter session to ktko;



이렇게 하면 ktko유저에 권한을 부여하였습니다. 이제 Sql Developer로 접속할 수 있습니다.



4) 자바 오라클 접속

자바에서 설치한 오라클 11g에 접속하기 위한 간단한 테스트 코드입니다.

설명은 http://ktko.tistory.com/110 에 해놓았고 테스트 예제와 샘플 코드, 필요한 라이브러리를 첨부하였습니다.


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        connectionDB();
    }
    
    public static void connectionDB() {
        Connection con = null;
        
        String user = "ktko";
        String password = "ktko1234";
        String url = "jdbc:oracle:thin:@localhost:1521:orcl";
        
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            con = DriverManager.getConnection(url, user, password);
            
            System.out.println("database connection Success.!!");
        } catch (ClassNotFoundException e) {
            e.printStackTrace(); //database driver class Not load
        } catch (SQLException e) {
            e.printStackTrace(); //database connection failed
        } catch (Exception e) {
            e.printStackTrace(); //unknown Exception..
        } finally {
            try {
                if(con != null) con.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

}


깔끔하게 성공~!