Password file을 설정하면 되는데, 아래의 예를 보시죠,,,
SVRMGR> create user jclee identified by jclee default tablespace users temporary
tablespace temp;
명령문이 처리되었습니다
SVRMGR> grant connect, resource to jclee;
명령문이 처리되었습니다
SVRMGR> grant sysdba, sysoper to jclee;
명령문이 처리되었습니다
SVRMGR> connect jclee/jclee
연결되었습니다
SVRMGR> shutdown
ORA-01031: 권한이 불충분합니다
SVRMGR> connect jclee/jclee as sysdba
연결되었습니다
SVRMGR> shutdown
데이터베이스가 닫혔습니다
데이터베이스가 분리되었습니다
ORACLE 인스턴스가 종료되었습니다
SVRMGR>
부가적으로 설명을 드리자면
SVRMGR> connect jclee/jclee as sysdba 이렇게 접속을
함으로서 DB를 shutdown 시킬수 있게 되었는데,
그이유는 다음과 같습니다.
우선 sysdba나,sysoper에 대해 먼저 설명을 드리자면
SYSOPER : STARTUP
SHUTDOWN
ALTER DATABASE OPEN | MOUNT
ALTER DATABAE BACKUP CONTROLFILE
ALTER TABLESPACE BEGIN/END BACKUP
RECOVER DATABASE
ALTER DATABASE ARCHIVELOG
RESTRICTED SESSION
SYSDBA : SYSOPER의 권한을 모두 갖고,
CREATE DATABASE
RECOVER DATABASE ~ 을 할 수 있다.
일반 사용자도 sysoper나 sysdba 권한을 가진다면 Oracle Instance를
내렸다 올렸다 할수 있습니다.
위와 같이 일반 User등에게 sysdba, sysoper등의 권한을 주기위해서는
password File을 설정해야 하는데, 다음과 같은 방법으로 하면 됩니다.
1) password file을 만든다.
$ orapwd file=$ORACLE_HOME/dbs/PawwWordFile이름 password=oracle
entries=5
(password : INTERNAL 과 SYS의 암호를 설정하는 매개변수
암호 변경을 위해 ALTER USER명령어를 실행한다면 데이터 딕셔너리와
암호 파일에 저장된 암호는 모두 갱신
entries : SYSDBA나 SYSOPER로 데이터베이스에 접속할 수 있는 최대 사용자 수
와 일치)
2) $ORACLE_HOME/dbs/initSID.ora 파일을 수정한다.
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
REMOTE_LOGIN_PASSWORDFILE의 설정값
▶ NONE
·REMOTE_LOGIN_PASSWORDFILE의 기본값
·Oracle7은 암호 파일이 없는 것처럼 작동
▶ EXCLUSIVE
·EXCLUSIVE암호 파일은 하나의 데이터베이스에만 사용가능.
·하나의 EXCLUSIVE파일만이 SYS나 INTERNAL이 아닌 다른 사용자명을
가질 수 있음.
·관리자가 EXCLUSIVE암호 파일을 사용하면 개별 사용자에게 SYSOPER과
SYSDBA시스템 권한을 부여하여 그 사용자가 자신의 사용자명으로
데이터베이스에 접속하도록 함.
▶ SHARED
·SHARED암호 파일은 여러 데이터베이스에서 사용 가능.
·SHARED암호 파일에 의해 인식되는 사용자는 SYS와 INTERNAL뿐임.
·사용자를 추가할 수 없음.
·SYSDBA나 SYSOPER 시스템 권한이 필요한 모든 사용자는
동일한 이름(SYS)과 암호로 접속해야 함.
·단일 DBA가 여러 데이터베이스를 관리할 때 유용.
3) 사용자에게 sysoper, sysdba 권한을 준다.
SVRMGR> grant sysdba, sysoper to jclee;
4) V$PWFILE_USERS 로 password file의 member들을 확인 할 수 있다.
SVRMGR> select * from v$pwfile_users;
USERNAME SYSDB SYSOP
------------------------------ ----- -----
INTERNAL TRUE TRUE
SYS TRUE TRUE
JCLEE TRUE TRUE
3 행이 선택되었습니다
5) 접속하는 방법.
SVRMGR> connect jclee/jclee as sysdba
password file을 설정하게 되면 sys와 internal인 경우에는
기본적으로 sysoper,sysdba 값이 true로 되어 있습니다.
connect sys/change_on_install as sysdba 라고 접속한후
DB를 내리거나, 올릴수 있다는 애기죠.
** 일반사용자명과 암호를 사용하여 SYSDBA나 SYSOPER권한으로 접속하
면 접속한 사용자명과 연관된 스키마가 아닌 SYS의 기본 스키마로 접속됨.
|