Как выполнить команды datapump как sysdba с удаленной машины

Я хотел бы знать синтаксис для вызова команд datapump (expdp/impdp), зарегистрированных как 'sys as sysdba' с удаленной машины.

Я знаю, что при входе в систему на компьютере, на котором работает база данных, я могу использовать:

expdp \"/ as sysdba\"

Тем не менее, я не могу найти, как это сделать с удаленного компьютера, например, это не работает:

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

В обоих случаях сообщение об ошибке:

LRM-00108: invalid positional parameter value [...]

2 ответа

Решение
expdp \"SYS@service AS SYSDBA\"

Это работает для меня (10.2 и 11.1), но вам нужно либо определить службу в вашем tnsnames.ora, либо использовать надлежащий SCAN. Как правило, ORACLE_SID является идентификатором, отличным от службы TNS, но для простоты им часто назначают одно и то же значение.

Я использую IMPDMP следующим образом:

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

Другие вопросы по тегам