Search code examples
oraclecommand-linetnsnamesdatapump

How to use Data Pump utilities without a tnsnames.ora file


I want to be able to run expdp and impdp by directly specifying the connection parameters instead of a TNS name that resides in tnsnames.ora. Is this possible?


Solution

  • You may be able to specify it all on the command line with a Connection String instead of a TNSName. Remove the whitespace from your TNS entry you would have used to connect, here is an example that works with SQLPLUS...

    Here is how to connect to a local OracleXE install on Windows:

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

    On *Nix you may need to quote the entry so the parens aren't interpreted incorrectly:

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