0-2. 개발환경구축

2024. 4. 3. 08:26데이터베이스

개발 환경 구축 순서

1. 오라클 홈페이지(www.oracle.com) 접속

2. Downloads – Oracle Database 11g Express Edition 다운로드

3. 설치 및 관리자 계정 암호 설정     =>   관리자: sys as sysdba   /    암호: oracle(대소문자 구분함)

    * cmd 에서

       - Enter user-name: system 쓰면 password는 oracle
         sys as sysdba 로 쓰면 password 아무거나 사용 가능(최고 권한 계정이라서)
          => 비번 까먹으면 최고 권한으로 들어가서 비번 바꾸는거 가능

     * 내부접속 프로그램(sqlplus) : oracle 설치할때 같이 딸려와서 설치됨) 에서만 이렇게 가능

       외부 접속 프로그램(Jdbc, sqldeveloper) 통해 접근:
          sys as sysdba 라고 하면 
password는 반드시 oracle 이라고 써야함

4. DB 접속 확인 및 SQLPlus 실행

5. 관리자 계정 로그인

    Port for ‘Oracle Database Listener’: 1521

      -> 1521 로 client 접속을 기다림(꺼지면 접속 X)

    Port for ‘Oracle HTTP Listener’: 8080
    *Listener -> event를 기다리는데 접속을 기다리는 Listener

     ss = new ServerSocket(8888);

     ss.accept(); => Listener 역할(client 접속 기다림)

      => 접속되면 Socket 만들어짐 

 

 

 

SQL Developer 설치 순서

1. 오라클 홈페이지(www.oracle.com) 접속

2. Download - SQL Developer 다운로드

3. 압축 해제 후 바로 실행

  * 환경변수에 JAVA_HOME  안떠있으면 sqldeveloper 안뜸

 

 

SQL 접속 설정

도구 - 환경설정 - 환경 - 인코딩: UTF-8로 바꾸기(- 없는 애도 있는데 그냥 있는 걸로)
                          - 코드 편집기 - 행 여백 - 행 번호 표시 체크

                          - 글꼴 - 고정 너비 글꼴만 표시(D)

*질의 결과(SQL 화면 밑에 출력창): PreparedStatement -> executeQuery() -> ResultSet 

 


새로운 계정 만들기

alter session set "_ORACLE_SCRIPT" = true;
create user kh identified by khpwd;

grant CREATE SESSION to kh;
revoke CREATE SESSION from kh;
--ORA-01045: 사용자 KH는 CREATE SESSION 권한을 가지고있지 않음; 로그온이 거절되었습니다
--01045. 00000 -  "user %s lacks CREATE SESSION privilege; logon denied"
--*Cause:    A connect was attempted to a userid which does not have
--           create session privilege.
--*Action:   Grant the user CREATE SESSION privilege.

create user kh2 identified by khpwd;

grant connect, resource, unlimited tablespace to kh, kh2;
--여러 가지 기능을 여러명에게 줄 수 있음

--create user 유저명 indentified by 비밀번호;   -- => 계정 만들기
--grant 권한명, role 명, ..  to user명, user명2, role명;
--revoke 뺏고싶은권한명, role명,... from user명, role명...;
--connect : 접속관련권한들로 만들어진 role명
--resource: table(객체)관련 권한들로 만들어진 role 명

    - CREATE(정의 - definition) USER(객체명)  계정이름(대소문자 구분 안함)

       IDENTIFIED BY(예약어) 비밀번호(대소문자 구분함);

    - GRANT(제어 - control) RESOURCE(권한명 = role 명), CONNECT(권한명) unlimited TO(예약어) 계정이름 ;

*CONNECT - CREATE SESSION(권한 이름) 포함

RESOURCE: 명령어 여러개 묶어서 resource 라는 이름 지어줌
  : create, alter, drop,insert… 등 다 묶어서 표현

*grant …. to : 권한 부여한다
  revoke… from: 권한을 뺏는다

 

create user 유저명 identified by 비밀번호;   => definition

=> 계정 만들기

grant 권한명, role 명, ..  to user명, user명2, role명;  => control 명령어

revoke 권한명, role 명  => control 명령어

connect : 접속관련권한들로 만들어진 role명

resource: table(객체)관련 권한들로 만들어진 role 명

 

'데이터베이스' 카테고리의 다른 글

14. PROCEDURE & FUNCTION  (0) 2024.04.03
13. PL/SQL  (1) 2024.04.03
0-1. 데이터베이스 개요  (0) 2024.04.02
10. ORACLE OBJECT SEQUENCE  (0) 2024.04.02
11. ORACLE OBJECT INDEX  (0) 2024.04.01