This discussion is archived
11 Replies Latest reply: Aug 1, 2013 9:23 AM by user130038 RSS

Why the instance is "idle"?

user130038 Pro
Currently Being Moderated

Hi there,

 

env: oracle 10gR2 (10.2.0.5)

platform: RHEL 5.8 64-bit

 

I installed ASM Home, then DB Home. Patched both to 10.2.0.5.

Started CSS daemon (from ASM Home) and configured listener from ASM home (listener name = LISTENER_VM1).

I have created ASM instance using DBCA - create two Diskgroups - DATA and FRA. All goo so far.

 

I thought to check the ASM instance before creating the Database using ASM.

 

$ ps -ef | grep oracle

...

oracle    6554  4960  0 09:01 pts/1    00:00:00 ps -ef

oracle    6555  4960  0 09:01 pts/1    00:00:00 grep oracle

oracle    9784  9504  0 Jul31 ?        00:00:00 /app/oracle/product/10.2.0/asm/bin/ocssd.bin

oracle   12417     1  0 Jul31 ?        00:00:00 asm_pmon_+ASM

oracle   12419     1  0 Jul31 ?        00:00:00 asm_psp0_+ASM

oracle   12421     1  0 Jul31 ?        00:00:00 asm_mman_+ASM

oracle   12423     1  0 Jul31 ?        00:00:00 asm_dbw0_+ASM

oracle   12425     1  0 Jul31 ?        00:00:00 asm_lgwr_+ASM

oracle   12427     1  0 Jul31 ?        00:00:00 asm_ckpt_+ASM

oracle   12429     1  0 Jul31 ?        00:00:00 asm_smon_+ASM

oracle   12431     1  0 Jul31 ?        00:00:00 asm_rbal_+ASM

oracle   12433     1  0 Jul31 ?        00:00:09 asm_gmon_+ASM

$ export ORACLE_SID=+ASM

$ echo $ORACLE_HOME

/app/oracle/product/10.2.0/asm

$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Thu Aug 1 09:01:44 2013

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.

Connected to an idle instance.

SQL>

 

Few questions here:

  1. Why am I getting "idle instance"? I can see all the required background process for +ASM instance.
  2. If I choose non-default listener name (for example, LISTENER_VM1 instead of LISTENER), is there something special that I need to set in the env to tell Oracle the name of the listener?
  3. Is there anything wrong is I use the default listener name (LISTENER) instead of giving it some custom name?

 

Please advise!

 

Best regards

 

Message was edited by: user130038

  • 1. Re: Why the instance is "idle"?
    FreddieEssex Pro
    Currently Being Moderated

    1) Check your PATH variable.  Is ORACLE_HOME/bin the first thing in your PATH variable?

     

    export PATH=$ORACLE_HOME/bin:$PATH

     

    If /etc/oratab is populated then you can use the oraenv utility which will set up your environment for you.

     

    2) Why choose a non-default listener name?  The default listener name should suffice.  Saying that you can use whatever name you want.

     

    Have a look at the following blog which tells you how you can register your database with the listener.

     

    Exploring the LOCAL_LISTENER parameter | Ed Stevens, DBA

  • 2. Re: Why the instance is "idle"?
    user130038 Pro
    Currently Being Moderated

    Thank you for quick response.

     

    Here is path variable:

     

    export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin

     

    Another question: When I change the value of ORACLE_HOME env variable to point to ASM Home, the $ORACLE_HOME value of $PATH variable does not change - it still shows me following:

     

    $ echo $PATH

    /app/oracle/product/10.2.0/dbee/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:/app/oracle/bin

     

    How can I automatically repopulate the $PATH variable to have correct/current value of $ORACLE_HOME?

     

     

    One more question please: If I delete the listener I cerated with non-default name and create a new one with default name, could this potentially cause any problems/issues? I hope not but just want to make sure.

     

    Yet one more thing:

     

    Why " Instance "+ASM", status BLOCKED, has 1 handler(s) for this service..." is BLOCKED? How to fix this?

     

    $ lsnrctl status

     

    LSNRCTL for Linux: Version 10.2.0.5.0 - Production on 01-AUG-2013 09:32:09

     

    Copyright (c) 1991, 2010, Oracle.  All rights reserved.

     

    Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

    STATUS of the LISTENER

    ------------------------

    Alias                     LISTENER_VM1

    Version                   TNSLSNR for Linux: Version 10.2.0.5.0 - Production

    Start Date                01-AUG-2013 08:59:53

    Uptime                    0 days 0 hr. 32 min. 16 sec

    Trace Level               off

    Security                  ON: Local OS Authentication

    SNMP                      OFF

    Listener Parameter File   /app/oracle/product/10.2.0/dbee/network/admin/listener.ora

    Listener Log File         /app/oracle/product/10.2.0/asm/network/log/listener_vm1.log

    Listening Endpoints Summary...

      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ypgldcora01)(PORT=1521)))

    Services Summary...

    Service "+ASM" has 1 instance(s).

    Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...

    Service "+ASM_XPT" has 1 instance(s).

      Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...

    Service "PLSExtProc" has 1 instance(s).

      Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...

    The command completed successfully

    $


    Thank you so much once again!

     

    Message was edited by: user130038

  • 3. Re: Why the instance is "idle"?
    FreddieEssex Pro
    Currently Being Moderated

    Hi,

    Another question: When I change the value of ORACLE_HOME env variable to point to ASM Home, the $ORACLE_HOME value of $PATH variable does not change - it still shows me following:

    Changing the ORACLE_HOME won't change the PATH variable.  You will need to set the PATH variable as well by using export PATH=$ORACLE_HOME/bin:$PATH.  If you want this to happen automatically then create an /etc/oratab file or append to it if it exists in the following format:

    +ASM:/app/oracle/product/10.2.0/asm:N

    Run the oraenv utility as shown below which will set your ORACLE_SID, ORACLE_HOME and PATH variable correctly.

     

    /export/home/oracle: #> . oraenv
    ORACLE_SID = [oracle] ? +ASM
    The Oracle base remains unchanged with value /u01/app/oracle
    /export/home/oracle:+ASM #> echo $ORACLE_HOME
    /u01/app/oracle/product/11.2.0.3/ASM_HOME
    /export/home/oracle:+ASM #> echo $ORACLE_SID
    +ASM
    /export/home/oracle:+ASM #> echo $PATH
    /u01/app/oracle/product/11.2.0.3/ASM_HOME/bin:/bin:/u01/app/oracle/product/11.2.0/OPatch:/usr/ccs/bin/:.:/usr/bin:/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/local/bin

     

     

    One more question please: If I delete the listener I cerated with non-default name and create a new one with default name, could this potentially cause any problems/issues? I hope not but just want to make sure.

     

    If any end users are connecting to the database then they won't be able to connect once you delete your listener.

     

    Other than that, this won't create a problem, check your local_listener parameter if it's set and change it to the name of the new listener if required.  As per the blog posted previously you can use dynamic or static registration.  However if you use the default port of 1521 then the database automatically registers itself with the database.

  • 4. Re: Why the instance is "idle"?
    FreddieEssex Pro
    Currently Being Moderated

    Regarding the BLOCKED status I don't think this is anything to worry about:

     

    I haven't got any 10g databases with ASM but my 11g ASM show the status as READY.  Perhaps in 10g the default was for it to be blocked.

     

    DBA Tips Archive for Oracle

     

    ORACLE-BASE - ASM using ASMLib and Raw Devices

  • 5. Re: Why the instance is "idle"?
    EdStevens Guru
    Currently Being Moderated

    FreddieEssex wrote:

     

    Hi,

    Another question: When I change the value of ORACLE_HOME env variable to point to ASM Home, the $ORACLE_HOME value of $PATH variable does not change - it still shows me following:

    Changing the ORACLE_HOME won't change the PATH variable.  You will need to set the PATH variable as well by using export PATH=$ORACLE_HOME/bin:$PATH.  If you want this to happen automatically then create an /etc/oratab file or append to it if it exists in the following format:

    +ASM:/app/oracle/product/10.2.0/asm:N

    Run the oraenv utility as shown below which will set your ORACLE_SID, ORACLE_HOME and PATH variable correctly.

     

    1. /export/home/oracle: #> . oraenv 
    2. ORACLE_SID = [oracle] ? +ASM 
    3. The Oracle base remains unchanged with value /u01/app/oracle 
    4. /export/home/oracle:+ASM #> echo $ORACLE_HOME 
    5. /u01/app/oracle/product/11.2.0.3/ASM_HOME 
    6. /export/home/oracle:+ASM #> echo $ORACLE_SID 
    7. +ASM 
    8. /export/home/oracle:+ASM #> echo $PATH 
    9. /u01/app/oracle/product/11.2.0.3/ASM_HOME/bin:/bin:/u01/app/oracle/product/11.2.0/OPatch:/usr/ccs/bin/:.:/usr/bin:/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/local/bin 

     

     

    One more question please: If I delete the listener I cerated with non-default name and create a new one with default name, could this potentially cause any problems/issues? I hope not but just want to make sure.

     

    If any end users are connecting to the database then they won't be able to connect once you delete your listener.

     

    Other than that, this won't create a problem, check your local_listener parameter if it's set and change it to the name of the new listener if required.  As per the blog posted previously you can use dynamic or static registration.  However if you use the default port of 1521 then the database automatically registers itself with the database.

     

     

    "If any end users are connecting to the database then they won't be able to connect once you delete your listener."

     

    I maybe misreading your intent, but just to clarify, any users that are already connected will be unaffected.  And as long as the connection endpoint specified for the listener (host/ip address and port) are the same, any new clients -- including automatic instance registration) will be unaffected.  The only "outage" will be for the couple of seconds it takes to bounce the listener to pick up the new configuration.

     

     

    "check your local_listener parameter if it's set and change it to the name of the new listener if required"


    LOCAL_LISTENER actually references a tnsnames entry, not the listener name.  In this respect, the database instance is acting just like any other client request to the listener.  It is sending a message to an ip address and port.  It uses tnsnames to resolve an alias to that ip address and port.   Apart from the lsncrctl utility, I've never discovered any process that cares about the listener name.

  • 6. Re: Why the instance is "idle"?
    user130038 Pro
    Currently Being Moderated

    OK Thank you so much! I am using default port 1521.

     

    Please guide me on this issue.

     

    In the oratab file, I see the oracle home for ASM to be "/app/oracle/product/10.2.0/dbee" instead of "/app/oracle/product/10.2.0/asm" (not sure why this happened).

     

    If I simply update this to "/app/oracle/product/10.2.0/asm", shutdown ASM instance, move the ASM Init file to "/app/oracle/product/10.2.0/asm/dbs" and start the ASM instance, do you any issue with this?

     

    Please advise!

  • 7. Re: Why the instance is "idle"?
    FreddieEssex Pro
    Currently Being Moderated

    No I don't see no issues with your approach.

     

    Once you change /etc/oratab you will need to run the oraenv utility to set you new ORACLE_HOME, PATH.

  • 8. Re: Why the instance is "idle"?
    FreddieEssex Pro
    Currently Being Moderated

    Correct...any existing user won't be affected.  I was thinking more if the port was to be changed then new connections would fail.

     

    Regarding LOCAL_LISTENER.  Thanks for clarifying.

  • 9. Re: Why the instance is "idle"?
    user130038 Pro
    Currently Being Moderated

    OK Great!

     

    Just completed all the steps and now ASM is up and running from its own home, I have created a new listener with default name from ASM home and it is also running. I have updated the oratab file as well. Hope all is good and now I am going to create databases.

     

    Thank you so much once again!

  • 10. Re: Why the instance is "idle"?
    jgarry Guru
    Currently Being Moderated

    The "blocked" status means the instance isn't accepting connections.  This could be because it is not online or connection limit reached.  Configuring and Administering Oracle Net Listener

     

    ASM is not an online database, so it doesn't accept connections.  Of course, if you want to remotely administer it you need to be connected.  So see MOS

     

    Kind of odd how Oracle recommends ASM and didn't seem to think about that.

  • 11. Re: Why the instance is "idle"?
    user130038 Pro
    Currently Being Moderated

    Thank you so much!!

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points