7

我希望能够通过直接指定连接参数expdpimpdp不是驻留在tnsnames.ora. 这可能吗?

4

2 回答 2

10

您可以在命令行上使用连接字符串而不是 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 上,您可能需要引用该条目,以便不会错误地解释括号:

sqlplus 'scott/tiger@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SID=xe)))'
于 2010-05-05T14:18:12.070 回答
3

您可以尝试使用EZCONNECT 字符串

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

您将需要在客户端包含 EZCONNECT 的 sqlnet.ora 参数,例如:

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
于 2010-05-05T16:18:40.443 回答