오라클 sagment 에러 (ORA-00439: feature not enabled: Deferred Segment Creation %s, ora-01950 no privileges on tablespace "system")

오라클 DB 이전으로 DB를 백업했다가 복원을 진행하였다.

복원 진행하여 테이블과 데이터를 삽입하는데 sql파일이 실행이 안되며 아래와 같은 에러가 떨어졌다.

ORA-00439: feature not enabled: Deferred Segment Creation %s

오라클의 sagment는 디스크 저장공간인데 파티션을 나누면 에러가 사라진다고 한다.

다른 방법으로는 SEGMENT CREATION DEFERRED -> SEGMENT CREATION IMMEDIATE
이렇게 변경하면 에러가 사라진다.

ex)
  CREATE TABLE "DDONI"."USER_INFO"
   ( "SERIAL_NUMBER" VARCHAR2(20 BYTE),
"USER_NAME" VARCHAR2(10 BYTE),
"USER_BIRTH" VARCHAR2(8 BYTE),
"PHONE_NUMBER" VARCHAR2(20 BYTE),
"PUSH_NUMBER" VARCHAR2(200 BYTE),
"USE_YN" CHAR(1 BYTE) DEFAULT 'Y'
   ) SEGMENT CREATION IMMEDIATE
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
  TABLESPACE "SYSTEM" ;



두번째 에러는 ORA-01950 no privileges on tablespace "system" 이였다.

권한이 불충분하다는 것.

SYSTEM계정으로 로그인 후

SQL> alter user 유저명 account unlock;

SQL> grant create session, resource to 유저명;

SQL> alter user 유저명 default tablespace users quota unlimited on 테이블스페이스명;


ex)

SQL> conn system/password
Connected.
SQL> alter user ddoni account unlock;

User altered.

SQL> grant create session to ddoni;

Grant succeeded.

SQL> grant create session, resource to ddoni;

Grant succeeded.

SQL> alter user ddoni default tablespace users quota unlimited on system;





댓글