I recently needed to replace some physical hardware on my 2-node RAC standby cluster. Both nodes were being replaced by new servers. I went through the process of adding one of the new servers as a third node in the cluster and then I was going to drop one of the old nodes. Adding the new server to the cluster went well and I moved my instances from the old node to the new node without any problems. But when I was checking one of the databases in DGMGRL, I hit the ORA-12541 error:
DGMGRL> show database stndbyABut since, stress can get into the system swift and easy, you are apt to experience Erectile Dysfunction (ED) such as excessive intake of alcohol, the huge masturbation, the side effect of some medicine, aging and similar other reasons that can make ED. viagra no prescription uk Sex is a normal physiological reaction, maintaining a good habit of sexual life can bring joyful mood and experience to human, and it’s beneficial for the body and health. however, the excessive sexual life can make long-term congestion to the reproductive organs, thus, it can cause the decrease of sexual function as they think this condition is brand viagra from canada quite normal. Spasm of the sphincter of Oddi cheapest generic cialis increases pressure inside the bile ducts. Some experts point out that all men inspect their india cheap cialis gonads month to month after adolescence.
Database – stndbyARole: PHYSICAL STANDBYDGMGRL> show database stndbyA
Database – stndbyA
Role: PHYSICAL STANDBY…
Database Status:
DGM-17016: failed to retrieve status for database “stndbyA”
ORA-12541: TNS:no listener
ORA-16625: cannot reach database “stndbyA“
What the heck?!?! My big confusion is that the 2-node RAC cluster holds three standby databases. Two of the standby databases do not have this issue. But one of the does. Since two of them are working fine, the Listener on the new node must be set up correctly. But the most obvious cause of the TNS-12541 error is that the Listener is not running or configured correctly. I verified that the Listener was running, and was configured correctly for all three standby databases.
So the next most common reason is that my entry in TNSNAMES.ORA on the primary side is set up incorrectly. I checked my TNS alias and it was valid. I could tnsping the alias without any problems.
After scratching my head over this for awhile, my thought was..ok the TNS alias I use to connect to the standby works correctly, but is that the TNS alias that the DG Broker is using? What is the DG Broker using? To answer that question, I had to turn query a specific property:
DGMGRL> show database stndbyA DGConnectIdentifier
DGConnectIdentifier = ‘(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=node01.naucom.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME= stndbyA.naucom.com)(SERVER=DEDICATED)))’
And there it became obvious. When someone set up this standby database, they did not use a TNS alias when adding the standby database to the DG Broker configuration. Instead, they used the ADDRESS form. And this address was pointing to the node I took down. I need to change this property to use the TNS alias instead.
The next problem was that when I tried to change the property, the EDIT DATABASE command would hang. This was solved by firing up Grid Infrastructure on the old node, making the change, and then shutting down GI on the old node. The command to change the property is:
edit database stndbyA set property DGConnectIdentifier=’stndbyA’;