2009-05-27 8 views

답변

22

SYS는 Oracle 데이터 사전을 소유하고 있습니다. 데이터베이스의 모든 오브젝트 (테이블, 뷰, 패키지, 프로 시저 등)에는 모두 하나의 소유자가 있습니다. 데이터베이스 사전의 경우, 많은 특수 테이블 (성능 뷰 등)은 모두 SYS 사용자가 소유합니다.

SYSTEM 사용자는 이러한 모든 개체에 대한 액세스 권한을 가진 마스터 DBA 사용자입니다. 이는 오라클의 초기 보안 설계 철학을 반영합니다. 한 사용자를 사용하여 응용 프로그램을 작성한 다음 액세스 권한 (선택, 업데이트, 삭제)을 사용하여 두 번째를 작성하지만 권한을 삭제하지는 마십시오. 이렇게하면 실수로 스키마를 파괴하지 않고도 스키마에 "수퍼 유저"액세스가 가능합니다. 수년 동안 SYS 계정에 있어야 할 수도있는 SYSTEM 계정에 문제가 추가되었습니다. 그러나 그렇게 할 필요가 없다면 SYS 계정에 대한 액세스 권한을 부여하려는 사람은 극소수입니다.

12

SYSconnect AS SYSDBASYSTEM 수 없습니다.

SYSDBA 권한은 CREATE DATABASEDROP DATABASE 같은 특정 관리 작업을 수행하고, 그들에 GRANT '에드 권한에도 불구하고 모든 테이블을 조회하는 데 필요합니다.

사실, SYSDBA으로 연결할 때마다 SYS이됩니다.

+0

방금 ​​SYSTEM "sysdba"아래의 기본 XE에 연결했습니다. 나에게 어떤 어려움이 생기는가는 SYSTEM 계정에 pw를 설정하지 않았기 때문에 SYS에 설정된 pw와 함께 사용할 수 있다는 것입니다. (Oracle에 대해서는 거의 알지 못합니다.) –