티스토리 뷰

명령 프롬프트 상태에서
<sqlplus/nolog>
-접속된 사용자 없이 단순히 SQL프롬프트만 띄우도록 한 것
SQL*Plus: Release 11.2.0.2.0 Production on 월 9월 9 10:32:30 2019
Copyright (c) 1982, 2014, Oracle.  All rights reserved.


-창 정리



-SQL을 수행하기 위해 오라클에서 제공하는 도구이다.

product\11.2.0\sever\bin
경로에 존재하는 sqlpuls.exe 이미 이 경로가 환경변수 path에 등록되어 있으므로
명령어 사용이 가능한 상태인 것이다.

<   SQL>dir   >  (X)
<   SQL>inconfig   > (X)
-일반적인 도스 명령어를 수행할 수 없다.

SQL> show user
USER is ""
- 현재 접속한 사용자 계정을 조회


SQL> show user
USER is "SYS"
- SYS계정에 연결


 < sqlplus 211.238.142.151.1500sys/java006$ as sysdba >
-관리자에 접속

 

< alter user hr account unlock; >
->사용자계정 hr 계정을 unlock한다.

   < 계정 정보 변경 (패스워드 설정 변경 ) -> sys로 접속 후 변경하기

  
   
->비밀번호 변경
eX) alter user hr identified by lion;   - hr의 정보를 lion으로 확인.(즉 정체성 확인) 

   <host명령어>
-> 도스 명령 체계로 전환하거나 라인 단위에서 도스 명령어 입력이 가능하다
   예를들어 host dir,host cls,host ipconif등 유닉스 계열에서는 host명령어 뿐 아니라 ! 도 사용이 가능하다
   하지만 윈도우 계열에서는 host 명령어만 사용이 가능하다. host상태에서 빠져나갈경우 exit명령어를 입력한다.

   ★< Administrator ( -> 윈도우 계정 ) 이 ORA_DBA(->윈도우 그룹)에 포함되어 있을 경우★ 
-> 취약한 보안 정책으로 인해 실무에서는 특별한 경우가 아니고서는 제외시키고 사용해야한다.
-> ORA_DBA 그룹에서 윈도우 관리자 계정 제거 ~! ( 내 PC 오른쪽 버튼 - 관리 - )
-> 제거 이후 sys의 계정 및 패스워드가 일치하지 않으면 오라클 서버에 접속할수 X


    < hr 사용자 계정에 sysdba 권한 부여하기  ( sys가 )  >

-> sqlplus sys/java006$ as sysdba로 접속하기 



    < GRANT SYSDBA TO hr; > 권한 부여 < REVOKE 는 권한 박탈 >



   < conn hr/lion as sysdba >
- > sys로 hr/lion에 접속하겠다


   
-> (sysdba권한을 부여받은 hr계정으로 접속한 상태 ) SELECT username,account_status from dba_users; ->정상 조회.


   < hr 사용자 계정에 부여한 sysdba권한 회수 (박탈) sys가 >
-> revoke sysdba from hr;  hr로부터 sysdba권한을 박탈한다.

   확인
  -SQL> conn hr/lion as sysdba
ERROR:
ORA-01031: insufficient privileges
Warning: You are no longer connected to ORACLE.
     -> 권한 박탈 후 hr은 as sysdba로 오라클에 접속이 불가능한 상태




    ■ 오라클 서버 구동 / 중지 (startup / shutdown(immediate) ) ■ 

    < 일반 사용자 계정 hr로 오라클 서버 중지 명령 시도 >

->  SQL> shutdown immediate
ORA-01031: insufficient privileges
-일반 사용자 계정으로는 오라클 서버를 중지시킬 수 없다.

    < sys계정으로 오라클 서버 중지 명령 시도 >
-> SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

    < sys계정으로 오라클 서버 시작 명령 시도 >
-> SQL> startup
ORACLE instance started.

Total System Global Area 1068937216 bytes
Fixed Size                  2260048 bytes
Variable Size             616563632 bytes
Database Buffers          444596224 bytes
Redo Buffers                5517312 bytes
Database mounted.
Database opened.

   ※ as sysdba  OR as sysoper(관리자도 아닌 사용자도 아닌 운영자) 로 연결했을 때만 가능하다 
   ※ 일반 사용자에게도 sysdba를 부여하고, sysdba로 접속하면 startup/shutdown immediate가 가능하다. 


    < sysoper 의 권한을 가진 hr 계정으로 오라클 서버 중지 명령 >
->conn hr/lion as sysoper;
-> show user
USER is "PUBLIC"  //sysoper가 아닌 public으로 나옴 운영자로 접속하게 될 경우

-> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.


    < sysoper 의 권한을 가진 hr 계정으로 오라클에 존재하고 있는 사용자 계정정보 상태 조회 >
-> 오류 정보를 조회하고 처리하는건 불가능 X


    <오라클 서버 연결 모드의 3가지 방법 >
1.as sysdba (최고 권한)
 -as sysdba로 연결하면 오라클 서버의 관리자로 연결되는 것이다.
 -오라클 서버 관리자로 연결되는 것이기 때문에 오라클에서 제공하는 모든 기능을 전부 활용할 수 있다.
 -오라클 서버가 startup또는 shutdown되어도 연결이 가능하다.
 ->일반적인 연결은 conn 계정/패스워드 as sysdba 형태로 연결하게 된다.

2.as syspoer (운영자 권한)
 ->as syspoer로 연결하면 오라클 서버의 운영자로 연결되는 것이다. user명은 public으로 확인된다.
 ->사용자 계정 정보 테이블에 접근하는 것은 불가능하다.
 ->오라클 서버의 구동 및 중지 명령 수행이 가능하다.
 ->오라클 서버가 startup또는 shutdown되어도 연결이 가능하다.
 ->일반적인 연결은 conn계정/패스워드 as sysoper형태로 연결하게 된다.

3. normal (일반 사용자 )
 ->오라클 서버에 존재하는 일반적인 사용자로 연결되는 것이다.
 ->오라클 서버가 구동중인 상태에서만 연결이 가능하고 오라클 서버가 구동 중지 상태일 경우 연결이 불가능하다.
 ->관리자가 부여해준 권한(또는 롤)을 통해서만 사용 가능하다.
 ->일반적인 연결은 conn 계정/패스워두 형태로 연결하게 된다.

'Database > SQL 오라클' 카테고리의 다른 글

ORACLE - DESC 테이블 구조 표시  (0) 2019.09.22
ORACLE - DUAL  (0) 2019.09.22
Oracle-테이블 스페이스 및 테이블 생성 권한부여  (0) 2019.09.12
오라클 설치 및 제거 방법  (0) 2019.09.12
SQL입문  (0) 2019.09.12