유정잉

Oracle [ 사용자 생성, 권한 부여 ] 공통 사용자 또는 롤 이름이 부적합합니다. 오류 해결 본문

Database/Oracle

Oracle [ 사용자 생성, 권한 부여 ] 공통 사용자 또는 롤 이름이 부적합합니다. 오류 해결

유정♡ 2024. 2. 14. 15:46

1. 구글에 oracle sql reference create user 검색 ( https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/CREATE-USER.html#GUID-F0246961-558F-480B-AC0F-14B50134621C )

 

ㅁ 네모는 키워드. 그대로 사용해야하는 것 . 키워드는 반드시 대문자 사용

ㅇ 타원은 내가 바꿔야하는 내용.  첫번째 타원의 user 는 create user 생성하고 싶은 사용자아이디 적으라는 뜻. 

그후, IDENTIFIED 에서 나눠진 셋중 하나 선택해라. 맨위에껀 비밀번호 이용하는거 

 


2. window + R - > cmd 실행

  sqlplus ->  sys AS SYSDBA -> 비밀번호 입력 없이 엔터 -> CREATE USER yujung IDENTIFIED BY 비번입력  -> 

  ( 이때 오류 발생시 밑에 박스 참고 )

 exit -> syssql 다시 로그인 -> 사용자명 yujung  입력 후 비번 입력 하면 사용자명/비밀번호가 부적합, 로그인할 수

 없습니다. 라는 오류 발생 ( 권한이 없기 때문에 발생하는 오류 )

 

[ 오류 뜰 경우 해결 방법 ] 

1.
오류 뜰 경우 ALTER SESSION SET "_ORACLE_SCRIPT"=TRUE; 입력 후 엔터 -> 세션이 변경되었습니다. 멘트확인 후 다시 CREATE USER yujung IDENTIFIED BY 비번입력 
2. CREATE USER yujungIDENTIFIED BY 비번입력 했는데 사용자가 생성되었습니다. 라는 문구가 아닌 숫자 2만 뜨는 경우 마침표를 안 찍어서 발생하는 오류 CREATE USER yujung IDENTIFIED BY 비번입력 뒤에 ; 입력.

 


3. 권한 부여 방법

   window + R - > cmd 실행

   sqlplus ->  sys AS SYSDBA -> 비밀번호 입력 없이 엔터 -> GRANT DBA TO yujung ; -> exit 

   sqlplus -> yujung -> 비밀번호 -> 다음에 접속됨 문구 확인 되면 권한 부여 된 것. 사용자 생성까지 된 것.

권한을 준 명령어 GRANT DBA TO yujung 에서 DBA는 최대한의 권한을 주는 명령어임. 

( 공부용이기에 DBA 권한을 준 것 . 현실에서는 이것보다 더 보수적인 권한을 주는 것을 추천함. )

728x90