I must admit, I’m a sqlnet hack. I never really sat down to figure it out. If I have problems getting a database to register with a currently listener then I generally just add a separate listener. Well, today I was stuck on a system where I couldn’t add a second listener. Everything seems fine. There was a default listener running on 1521 with a database instance already registered. The first and second database were in the same ORACLE_HOME but I just couldn’t get the listener to pick up the second databases. I bounced and reloaded the listener and registered the second database
lsnrctl start
lsnrctl stop
lsnrctl start
alter system register
No dice. Then I tried
alter system set local_listener='(ADDRESS = (PROTOCOL=TCP)(HOST =myhost)(PORT=1521))’
and bang, it registered.
Of course, I guess I should track down why it wouldn’t register in the first place but getting it working for now was enough.
Comments