기존에 오라클 11g 를 이용하다 19c로 바꾸고 user를 만드는 작업을 했다
이때 ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다. 라는 에러를 만났다
이는 오라클 12c 부터 공통계정앞에 c##을 붙이도록 네이밍 규칙이 변경되어 생긴 오류다
12c 버전부터 등장한 CDB, PDB 개념 때문이다
1) CDB : 여러개의 DB를 담을 수 있는 컨테이너
- PDB와 동일한 인스턴스 공유한다
2) PDB : local user 입장에서 독립적인 DB로 보이는 CDB에서 자유롭게
땟다 붙혔다 가능한 DB이다
- PDB 끼리는 서로 독립적이다, 서로 데이터 공유를 하지 않는다
- 쉽게 복사가 가능하다
- CDB 내에서 동일한 local 유저, 스키마명, 오브젝트명을 PDB마다 만들 수 있다

문제를 해결하기 위해서는 user 이름 앞에 c##을 붙여주면 된다
권한을 줄때나 sql 개발툴로 접속할때 코드에 유저네임을 적을때도
c##을 붙여줘야 한다
생성

권한부여

코드

'DataBase' 카테고리의 다른 글
[DataBase] Class.forName() 동작원리 및 사용이유 (0) | 2023.06.02 |
---|---|
[DataBase] CDC (Change Data Capture) 용어 정리 및 흐름 파악 (0) | 2023.05.31 |
[DataBase] ojdbc.jar 다운받고 프로젝트 적용해 보기 (0) | 2023.05.26 |
[DataBase] Oracle version & JDK version 에 따른 ojdbc version 선택 (0) | 2023.05.26 |
[DataBase] Oracle 19c 설치 및 오류 해결 (0) | 2023.05.26 |