Search code examples
tnsnamesoracleclienttnsping

`tnsping` missing for Oracle Instant Client for macOS (ARM64)


Installed the following packages on device M3 chip from Oracle Instant Client(ARM64):

  • Basic Package (DMG): instantclient-basic-macos.arm64-23.3.0.23.09-1.dmg
  • SQL*Plus Package (DMG): instantclient-sqlplus-macos.arm64-23.3.0.23.09.dmg

The installation went smoothly, and the tnsnames.ora file is correctly configured at /usr/local/instantclient_23_3/network/admin/tnsnames.ora with database description.

However, when I try to run the tnsping MYDB command to test the connection, received an error stating that tnsping is missing. It seems like the tnsping utility isn't included in the packages I installed.

Is there a way to resolve this issue?

$ sqlplus
SQL\*Plus: Release 23.0.0.0.0 - Production on 
Version 23.3.0.23.09

$ echo $ORACLE_HOME
/opt/oracle/instantclient_23_3

$ echo $TNS_ADMIN
/opt/oracle/instantclient_23_3/network/admin

$ tnsping MYDB
zsh: command not found: tnsping

Solution

  • With SQL*Plus 23 you can use the new "-p" option to do the same, see Powering on with SQL*Plus for Oracle Database 23ai.

    $ sqlplus -p localhost/orclpdb1
    Attempting to contact: (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=orclpdb1))(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
    Ok (36.858 msec)
    

    The actual tnsping utility has never been part of any Instant Client.