참고
sec_case_sensitive_logon
파라미터는 비밀번호의 대소문자 구분 여부를 알 수 있습니다.SQL> show parameter sec_case_sensitive_logon -- TRUE(default)이면 패스워드 입력 시 대소문자를 구분한다는 의미입니다. NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ sec_case_sensitive_logon boolean TRUE
1) username과 password만 주고 user 생성
-- default tablespace를 모를 때
create user <username>
identified by "<password>";
또는
-- User 생성하면서 동시에 profile 부여 방법
create user <username>
identified by "<password>"
profile <profile_name>;
2) user 생성 후 기본 role 부여
grant resource, connect to <username>;
3) 접속 테스트
conn <username>/<password>;
(해당 비밀번호에 @
와 같은 특수문자가 들어간다면 "<password>"
로 감싸주어야 합니다)
conn <username>/"<password>";
(마찬가지로 sqlplus
로 접속하는 경우 비밀번호에 @
와 같은 특수문자가 들어간다면 "
또는 \"
로 감싸주어야 합니다)
$ sqlplus <username>/"<password>"
$ sqlplus <username>/\"<password>\"
select username, default_tablespace, profile
from dba_users;
alter user <username> quota unlimited on <tablespace_name>;
(예시) 특정 스키마에 대한 오브젝트 조회 권한 부여
set lines 300 pages 400
set heading off
set feedback off
spool grant_select.sql
select 'grant select on ' || owner || '.' || table_name || ' to <username>;'
from dba_tables
where owner in ('<username1>','<username2>', ...);
spool off
set feedback on
spool result.out
@grant_select.sql
spool off
$ cat grant_select.sql | grep grant | wc -l
1380
$ cat result.out | grep succeed | wc -l
1380