In Multi tier architecture, the monitored database server must be able to communicate with the middle tier server, and vice versa.
i.e. bidirectional communication: monitored database server <--> middle-tier server
1. For multi tier installations validate that the middle tier host can connect to the monitored instance using the supplied details.
a. Verify that the middle tier host can communicate the monitored host.
On the middle tier host, perform ping hostname using the machine name (non-FQDN), see that acknowledgement is made. If there is no acknowledgement, consider ping on <host IP address>,
should this returns an acknowledgement, use the IP address for the installation instead.
b. If the requirement is to use hostname, verify that the Oracle user has read permission to /etc/hosts file. This is because the SQL*Net does not resolve hostname. If ping usnig monitored machine name (non-FQDN) fails, try updating the /etc/hosts file on the middleware to allow successful ping from middleware to monitored server with machine name and try the install again.
Refer to Metalink document 12101.1 for further troubleshooting tips on TNS-12545
2. Verify that the TNS Listener is running on the Oracle server host.
a. This can be done by tnsping <sid>, and see that it is listening on <port> port.
b. On the Oracle server, perform login to SQL*Plus session:
sqlplus <user>@<sid>
3. For multi tier installations, verify that the ORACLE_HOME supplied for the middle tier host is correct.
4. For active/passive cluster installations, verify that the supplied virtual cluster name is correct.
Additional information:
If this error happens after supplying the middleware's Oracle Home, then it means that the middleware is unable to establish a SQL*Net connection to the monitored instance.
This is necessary because the middleware connects to monitored instance every 6 hours to perform run-time object recognition.