Como executar comandos do datapump como sysdba da máquina remota

13

Eu gostaria de saber a sintaxe para chamar comandos datapump (expdp / impdp) registrados como 'sys as sysdba' de uma máquina remota.

Eu sei que quando conectado na máquina que executa o banco de dados, eu posso usar:

expdp \"/ as sysdba\"

No entanto, não consigo encontrar como fazer isso de uma máquina remota, por exemplo, isso não funciona:

expdp 'SYS@SID AS SYSDBA'
expdp "SYS AS SYSDBA"@SID

Em ambos os casos, a mensagem de erro é:

LRM-00108: invalid positional parameter value [...]
    
por Denis R. 09.03.2012 / 14:49

2 respostas

20
expdp \"SYS@service AS SYSDBA\"

Isso funciona para mim (10.2 e 11.1), mas você precisa definir o serviço em seu tnsnames.ora ou usar o SCAN adequado. Geralmente, ORACLE_SID é um identificador diferente do serviço TNS, mas para simplificar eles geralmente são administrativamente configurados para o mesmo valor.

    
por 09.03.2012 / 15:01
0

Eu uso o IMPDMP da seguinte forma:

Impdp SYS@SYSDBA/45561602 SCHEMAS=PRUEBAS DIRECTORY=DATA_PUMP_DIR DUMPFILE=PRUEBAS.dmp remap_schema=PRUEBAS:TEST TABLE_EXISTS_ACTION=replace LOGFILE=impdmp.log

    
por 24.03.2017 / 19:12