Oracle

오라클 설치 후 계정에 대한 고찰

Figo Kim 2012. 11. 23. 00:42
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

자,,, 앞서 오라클 11g R2를 윈도우에 설치하셨죠?

관련해서 아래 링크를 참고해주세요..


2012/11/22 - [Study/Oracle] - 윈도우7 64bit 버전에 오라클 11g R2를 설치했습니다.


그런데, 사실 저도 궁금했던건데,

오라클을 설치하면 총4개의 계정에 대한 비밀번호를 설정합니다.


SYS, SYSTEM, SYSDBA, SYSOPER


바로 요 네개의 계정이죠..

그런데, 요넘들을 생각해보면 참 비슷해보이고, 헥갈립니다.~~

그쵸?



자 그럼 함 알아봅시다..

저넘들이 뭔지를...


일단 위 4개의 계정은 실제적인 스키마인가 아니면 Privilege에 해당되는가로 구분됩니다.


SYS와 SYSTEM은 실제적인 DB스키마에 해당되며, SYSDBA와 SYSOPER는 일종의 role/privilege에 해당됩니다.




그러다면 SYS와 SYSTEM은 어떤 차이가 있을까여?


  • SYS
    일단 Oracle 데이터베이스가 설치되면서 자동으로 생성되면서 동시에 DBA role 및 SYSDBA previlege를 가지게 됩니다.
    Data dictionary의 owner에 해당됩니다. Data dictionary는 음...쉽게 말하면 데이터베이스에 대한 모든 메타정보를 보관하고 있는 곳이라고 보시면 됩니다.

    언급했듯이 schema 자체가 데이터베이스가 생성되면서 함께 생성되는 스키마로서 Database에 의해서만 수정 및 업데이트가 됩니다.
    sysdba로서 접속했을 때 사용되는 기본 스키마에 해당됩니다.

  • SYSTEM
    마찬가지로 Oracle 데이터베이스가 설치되면서 생성되는 계정이며 DBA role를 가지고 있습니다.
    administration에 필요한 테이블 및 view에 대한 생성을 위해서 사용되며 오라클 데이터베이스의 옵션 또는 각종 도구에서 사용되는 내부 테이블이나 뷰를 만들기 위해서 사용됩니다.
    마찬가지로 시스템 관리 차원에서 사용되는 스키마죠..

제 생각으로 봤을 때에는 SYS는 코어에 해당되는 듯 싶어 보입니다.


자~ 그렇다면 SYSDBA와 SYSOPER와의 차이는 뭘까여??

  • SYSDBA
    쉽게 말해서 Linux 나 윈도우의 root 나 administrator에 해당되는 역할입니다. 모든지 다 볼 수 있죠.
    그래서 "{user_name} as sysdba"와 같은 형태로 사용된다는거죠...
    위에서 말했지만 sysdba로서 연결을 하면 sys 스키마에 접근이 가능한거죠..
    권한 목록을 나열해보면,,
    - 데이터베이스 인스턴스의 시작 및 정지
    - 데이터베이스에 대한 수정 (Open, mount,backup, 언어셑 변경..등등)
    - 데이터베이스 생성/삭제
    - 데이터베이스 archive log 수정 및 데이터베이스 복구
    - Restrictd session privilege 포함..


  • SYSOPER
    언뜻 보기에는 SYSDBA와 아주 유사한 역할을 합니다만, 권한 측면에서 봤을 때에는 운영에 필요한
    권한만을 소유하고 있습니다.

    - 데이터베이스 인스턴스의 시작 및 정지
    - 데이터베이스에 대한 수정 (Open, mount,backup)
    - SPfile 생성
    - 데이터베이스 archive log 수정 및 데이터베이스 복구
       (전체복구 기능만 가능.., 나머지 기타 복구 기능은 제한적입니다.)
    - Restrictd session privilege 포함..

    앞서 언급했듯이 기본적인 운영에 필요한 권한이 있는 것으로, user들의 data에는 접근할 수 없습니다. 그래서인지 SYSOPER의 기본 스키마는 sysdba와는 다르게 PUBLIC입니다.


쩝..오늘도 12시를 넘기는 군요..

언능 씻고 자야것어요~ 추천 버튼 한방 눌러주시면 감사하겠습니다.