본문 바로가기

DataBase/Oracle

[ Oracle ] 오라클 사용자 계정 생성 ORA-65056 오류

반응형

안녕하세요 코띵입니다 :D

오라클 계정을 생성하는 도중 에러를 만나게 되어서

포스팅을 하려고 합니다 하핫

 

사용자 계정 생성 문법은 다음과 같습니다.

SQL> create user 사용자명 identified by 비밀번호;

 

예를 들면, 다음과 같습니다.

SQL> create user imcodding identified by 1234;

 

하지만 이럴 경우 다음과 같은 오류가 발생합니다.

1행에 오류: *
ORA_65096: 공통 사용자 또는 롤 이름이 부적합합니다.

 

이는 오라클 12c부터는 공통계정 앞에 c## 키워드를 붙이도록 네이밍 규칙이 바뀌었기 때문입니다.
c## 이 붙어야 하는 이유는 CDB(Container DB)와 PDC(Pluggable DB)의 개념이 등장해서라고 합니다.
자세한 개념은 찾아보시는 걸 추천드립니다.

 

따라서, 다음과 같이 계정을 생성하면 정상적으로 실행됩니다.

SQL> create user c##imcodding identified by 1234;
사용자가 생성되었습니다.

 

이렇게 계정이 생성될 경우, 사용자명이 c##imcodding 전체가 되는 것입니다.
그래서 다른 툴에서 접속할 때에도 위와 같이 써주셔야 합니다.

 

만약, c##을 제거하고 싶다면 다음과 같이 입력하시고 생성하시면 됩니다.

SQL> ALTER SESSION SET "_ORACLE_SCRIPT"=TRUE;

 

이렇게 하면 c##을 붙이지 않고도 사용자 계정을 생성할 수 있습니다.

생성 후 계정에 권한을 주는 것도 잊지마세요!

 

# 사용자에게 모든 권한 부여

SQL> GRANT ALL PRIVILEGES TO 사용자명;

 

# 사용자 계정 확인

SQL> SELECT * FROM all_users ORDER BY username;

 

이상입니다. 도움이 돼셨다면 로그인 없이

좋아요 눌러주세요 ♡

반응형