2014-04-28 2 views
0

내 클라이언트 중 하나의 데이터베이스가 포함 된 Oracle 10g로 작성된 .dmp 파일이 있습니다. 나는 내 인생을 위해 그것을 내 12c 설치와 함께 설정할 수 없습니다. 내 데이터베이스에 연결할 수 있습니다 https://localhost:5500/em오라클 10g .dmp 파일을 오라클 데이터베이스에 복원하는 중 오류가 발생했습니다. 12c

나는 원하는 PDB에서 사용자 'BOB'를 생성하고 가져 오기, 읽기 및 쓰기 권한을 부여 받았습니다.

impdp BOB/[email protected]//localhost:1521/pdbname full=y directory=dpdump_dir dumpfile=BOB.dmp

그러나이 나에게 다음과 같은 오류를 제공합니다 : 다음 나는 다음과 같은 명령을 사용하여 가져 오려고

UDI-12541 : 작업이 ORACLE 오류를 생성 12541

ORA-12541 : TNS : 리스너는 현재 연결 설명자에서 요청 된 서비스를 알지 못합니다.

listener.ora 및 tnsnames.ora에는 EZCONNECTOR와 포트 1521이 있습니다.이 기능을 작동시키는 방법을 아는 사람이 있습니까? 사전에

많은 감사, 밥

+0

작업에 도움이되는 dba를 받으십시오. –

+0

@ik_zelf 좀 더 자세히 살펴 보았습니다.이 문제는 직접 해결할 수 있습니까, 아니면 여전히 dba에 문의해야합니까? – user3292873

+0

나는 impdb 명령에 서버와 포트를 추가 할 필요가 없다고 생각합니다. SID 만 필요합니다. 시도 impdp BOB/암호 @ pdbname 전체 = y를 디렉토리 = dpdump_dir dumpfile = BOB.dmp – tilley31

답변

0

먼저 연결 dB 보장하기 위해 pdbname에 대한 tnsping 할 수 있도록 : - $ 당신이 tnsping으로 연결 문자열의 세부 사항을 얻을 경우, 당신은 다음과 같이 명령을 시도 할 수 있습니다 bdbname 에게 tnsping 형식 : impdp bob/[email protected] : 1521/pdbname directory = dpdump_dir dumpfile = BOB.dmp

전체 데이터베이스를 복원하지 않으면 "full = y"가 제거되었으므로 특히 imp/exp 유틸리티로 적용하십시오.

예에서 pdbname이 dbname/service_name으로 지정된다는 것을 기억해야합니다. 다음 명령을 사용하여 service_name을 확인할 수 있습니다. $ lsnrctl services;/* 서비스 이름을 가져와 impdp 명령에 넣을 수 있습니다. 모두의 $ impdp 밥/비밀번호 디렉토리 = dpdump_dir 덤프 = BOB.dmp

0

먼저 당신은 : 당신이 로컬 호스트 자체에서 작업하는 것처럼 */

또한, IP, 포트 및 DBNAME을 지정하지 않고 시도 할 수 있습니다 당신이 연결할 수없는 경우, 다음 명령을 사용하여 SYSDBA 로/SYS로 연결하십시오

1521/pdbname : 연결을
SQLPLUS> BOB/패스워드 @ localhost를 확인해야
SQL> 변경 세션 세트 컨테이너 = pdbname
SQL> 변경 pluggab le 데이터베이스 pdbname 열기

그런 다음 종료하고 명령을 다시 시도하십시오. :)

관련 문제