如何在没有tnsnames.ora文件的情况下使用Data Pump实用程序

时间:2010-05-05 13:44:20

标签: oracle command-line tnsnames datapump

我希望能够通过直接指定连接参数而不是expdp中的TNS名称来运行impdptnsnames.ora。这可能吗?

2 个答案:

答案 0 :(得分:7)

您可以使用连接字符串而不是TNSName在命令行上指定所有内容。从您用来连接的TNS条目中删除空格,这是一个与SQLPLUS一起使用的示例......

以下是如何连接到Windows上的本地OracleXE安装:

sqlplus scott/tiger@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SID=xe)))

在* Nix上,您可能需要引用条目,以便不会错误地解释parens:

sqlplus 'scott/tiger@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SID=xe)))'

答案 1 :(得分:3)

您可以尝试EZCONNECT string

expdp userid=user/pw@//host:port/service-name

客户端需要一个包含EZCONNECT的sqlnet.ora参数,例如:

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)