Listener won’t register database

July 19th, 2011

 

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.

 

 

 


Uncategorized

  1. Trackbacks

  2. No trackbacks yet.
  1. Comments

  2. Pjordan
    July 21st, 2011 at 13:16 | #1

    Would “ALTER SYSTEM REGISTER; ” also work in this instance?

  3. July 21st, 2011 at 14:42 | #2

    nope, as stated above “alter system register” didn’t work.
    – Kyle

  4. Satheesh
    December 12th, 2011 at 21:51 | #3

    Thakns a lot dude….it worked for me too….when alter system register did not register, this alter system set local_listener worked

  5. Ganesh
    August 20th, 2012 at 10:45 | #4

    can I register one listener to multiple database within one server?If yes how can I process?

  6. September 27th, 2012 at 21:56 | #5

    Didn’t work for me:

    SQL> alter system set local_listener='(ADDRESS = (PROTOCOL=TCP)(HOST=renonaodb20)(PORT=1521)’;
    alter system set local_listener='(ADDRESS = (PROTOCOL=TCP)(HOST=renonaodb20)(PORT=1521)’
    *
    ERROR at line 1:
    ORA-02097: parameter cannot be modified because specified value is invalid
    ORA-00119: invalid specification for system parameter LOCAL_LISTENER
    ORA-00132: syntax error or unresolved network name ‘(ADDRESS =
    (PROTOCOL=TCP)(HOST=renonaodb20)(PORT=1521)’

  7. September 28th, 2012 at 02:21 | #6

    @Michael:
    there error says “syntax error or unresolved network name”
    can you ping renonaodb20?
    have you tried an IP instead of the host name?

  8. matt watson
    November 3rd, 2012 at 01:12 | #7

    Hi,

    I have had the same issue, which your solution did fix. However I was also able to fix it by ensuring the service_names where listed in /etc/hosts against 127.0.0.1

  9. balaji
    November 21st, 2012 at 22:51 | #8

    thanks a lot!
    Worked:-)

  10. Igor Gorbatovsky
    January 24th, 2013 at 09:32 | #9

    Thank you! It worked for me too.
    Can’t find the reason why conventional ‘alter system register’ doesn’t work. I made a test env of my production db, everything is completely the same but this.

  11. Igor Gorbatovsky
    January 24th, 2013 at 10:09 | #10

    @Igor Gorbatovsky
    still I was able to make it work with ‘alter system register’. Once I added entry of this db to tnsnames-file, ‘alter system register’ started to work as it should.

  12. Sima
    January 25th, 2013 at 17:37 | #11

    If you are going for best contents like myself, simply go to see this web site every day as it offers feature contents, thanks

  13. Ariel
    March 15th, 2013 at 16:36 | #12

    Thanks for this info – it helped.

    Let me share my observations on why I think this works.

    I have two machines where the db service/pmon binding to the default listener did not work; machine A(port=1523) and machine B (port=15210)…in both machines, the default listener is not using the Oracle default port of 1521.

    Whereas in my third machine C, pmon binding to the listener works because the listener use the default port of 1521 <- It would seem that pmon automatic bind to the listener only works when the default LISTENER also use the default PORT=1521

    So, if the default listener does not use default PORT 1521, then one has to set the DB local_listener parameter as originally shared by Kyle above (which I had to for my A and B machines). I read somewhere for 11gR2 *This parameter value (local_listener) is actually meant if you want to have the db service/pmon to use a different port other than the default (1521).

  14. Byron
    May 27th, 2013 at 04:25 | #13

    This happened to me when we had problems with our network interfaces (interconnect), it worked with local_listener but we hope this will be solved when the problem is corrected.

  15. Todd
    June 13th, 2013 at 19:16 | #14

    @Michael Fontana

    Sorry I know this is a response to an old post, but yours likely didn’t work because you are missing the last parenthesis.


nine − 1 =