2015-01-20 3 views
3

the official tutorial의 지침을 사용하여 Amazon AWS로 일부 데이터를 가져 오려고합니다. 덤프 파일을 RDS 시스템에 성공적으로 업로드했습니다.Amazon RDS Oracle : impdp REMAP_SCHEMA

마지막 단계는 impdp Oracle 유틸리티를 사용하여 실제 가져 오기를 수행하는 것입니다. 스키마를 다시 매핑하지 않으면 훌륭하게 작동합니다. 그러나 스키마를 다시 매핑해야하며 문제가 발생합니다. 나는 REMAP_SCHEMA 옵션을 impdp를 실행하면

내가 얻을 :

ORA-39122: Unprivileged users may not perform REMAP_SCHEMA remappings. 

인터넷 검색 후, 그것은이다 이것을 가능하게하는 유일한 방법은 다음과 같습니다

grant imp_full_database to MY_USER; 

그러나 RDS는 이것을 거부 :

ORA-00604: error occurred at recursive SQL level 1 
ORA-20997: "IMP_FULL_DATABASE" grants not allowed 
ORA-06512: at "RDSADMIN.RDSADMIN", line 51 
ORA-06512: at line 2 

이것은 분명히 d RDS 수준에서 의도적으로 적용됩니다.

RDS 및 impdp를 사용할 때 스키마를 다시 매핑 할 수있는 방법이 있는지 알고 있습니까?

+2

가 (http://docs.oracle.com/cd/E11882_01/server.112/e22490/dp_import.htm#SUTIL3187). 'impdp' 명령은 타겟 스키마/사용자로 연결하고 있습니까? –

+0

나는'RANTAP_SCHEMA'에'GRANT'가 필요하고 RDS가 그 기능을 비활성화했다면 다른 옵션을 보지 못하는 방법이 있다고 생각하지 않습니다. 당신이 말한 것처럼 – Annjawn

+0

@AlexPoole, 다른 사용자를 사용하고있었습니다. 이제는 괜찮습니다. 고마워 ! – olivieradam666

답변

2

Alex (내 질문에 대한 의견 참조) 맞습니다. Unprivileged users can perform schema remaps only if their schema is the target schema of the remap

그래서 내가 찍은 단계는 다음과 같습니다 다음

create user MY_USER identified by ****; 
grant create session, create table to MY_USER; 
alter user MY_USER quota unlimited on users; 
-- both read and write are needed 
grant read, write on directory data_pump_dir to MY_USER; 
grant execute on dbms_datapump to MY_USER; 

그리고 [. 자신의 스키마를 다시 매핑의 대상 스키마 인 경우에만 스키마를 수행 할 수있는 권한이없는 사용자가 다시 매핑]

impdp MY_USER/[email protected] DUMPFILE=file.dmp DIRECTORY=DATA_PUMP_DIR \ 
remap_tablespace=original_tablespace:users \ 
remap_schema=original_user:MY_USER