JUST DO IT
ORA-28014, ORA-65096 오류 해결(USER생성/삭제 안됨) 본문
ORACLE 계성 생성/삭제 중 아래와 같이 오류가 있었다
ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다.
CREATE USER "HELLO" IDENTIFIED BY "null"
오류 보고 -
ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다.
65096. 00000 - "invalid common user or role name"
*Cause: An attempt was made to create a common user or role with a name that was not valid for common users or roles. In addition to the usual rules for user and role names, common user and role names must consist only of ASCII characters, and must contain the prefix specified in common_user_prefix parameter.
*Action: Specify a valid common user or role name.
ORA-28014: 관리 사용자 또는 롤을 삭제할 수 없습니다.
drop user "HELLO"
오류 보고 -
ORA-28014: 관리 사용자 또는 롤을 삭제할 수 없습니다.
28014. 00000 - "cannot drop administrative user or role"
*Cause: An attempt was made to drop an administrative user or role. An administrative user or role can be dropped only by SYS during migration mode.
*Action: Drop the administrative user or role during migration mode.
아래 SQL 명령어 실행 후 적용하면 잘되는것을 볼 수 있다.
ALTER SESSION SET "_ORACLE_SCRIPT"=true;
ORACLE 12c부터 관리 및 운영의 효율성을 위해 다중 테넌트 아키텍처가 도입되어 위와 같이 명령어로 권한을 수정한 뒤 실행하거나 "C##" 접두어를 사용하여 공통계정을 관리하여야 한다고 한다.
1. CDB (Container Database):
- CDB는 하나 이상의 PDB를 포함하는 최상위 데이터베이스입니다.
- CDB는 공통 사용자, 메타데이터, 백그라운드 프로세스를 갖습니다.
2. PDB (Pluggable Database):
- PDB는 CDB 내의 독립적인 데이터베이스입니다.
- 각 PDB는 독립적인 스키마, 객체, 연결 등을 가집니다.
- PDB는 다른 CDB로 "플러그 아웃" 및 "플러그 인"할 수 있습니다, 즉, 한 CDB에서 PDB를 분리하고 다른 CDB에 연결할 수 있습니다.
이러한 아키텍처 변화로 인해 Oracle은 공통 계정 (예: SYS, SYSTEM)에 대한 네이밍 규칙을 변경하였습니다. 12c부터 공통 계정 생성 시 앞에 "C##" 접두어를 사용해야 합니다. 예를 들어, 공통 사용자 이름을 "ADMIN"으로 설정하려면 "C##ADMIN"으로 생성해야 합니다.
이것은 Oracle에서 도입한 새로운 네이밍 규칙과 멀티 테넌트 아키텍처의 일부입니다. 이러한 변화는 데이터베이스 관리 및 운영을 더 유연하게 만들며, 자원을 효율적으로 활용하고, 서비스 제공 및 배포를 간소화하는 데 기여합니다.
'DATABASE > ORACLE' 카테고리의 다른 글
[ORACLE] 오라클 TABLE, COLUNM, COMMENTS 찾기 (0) | 2023.06.30 |
---|