Unable to find RAC connection information for INST_ID
A developer tried to run a procedure with debug mode in Toad for Oracle, a database tool used to connect to Oracle database, and he got the error message.
As Quest Software said in Debugger error: Unable to find RAC connection information. (37576).
Toad accomplishes debugging as follows:
- Queries the data dictionary to find the current instance name
- Searches the TNSNames.ora file for the first entry that matches SERVICE_NAME or INSTANCE_NAME.
- Uses the secondary TNSNames entry when creating the background debugger sessions.
Apparently, the software tried to use a second connection to facilitate debugging.
Solution
So the solution is simple, it looks for matched INSTANCE_NAME and SERVICE_NAME, we should modify tnsnames.ora and make sure the connect descriptor has them both. The question is, where is tnsnames.ora?
In this case, we add INSTANCE_NAME in CONNECT_DATA.
ORCLPDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.13)(PORT = 1521))
)
(CONNECT_DATA =
(INSTANCE_NAME = ORCLCDB1)
(SERVICE_NAME = ORCLPDB)
(SERVER = DEDICATED)
)
)
In the above, I added INSTANCE_NAME to solve the problem.
Another key point is that, don't use SCAN IP, instead, use specific instance to connect to, if you do like to use the debugging in Toad. In this case, I use the first node of the RAC system.