ASM Instance not recognized by DBCA :(
DBAsupport.com Forums - Powered by vBulletin
Results 1 to 4 of 4

Thread: ASM Instance not recognized by DBCA :(

Threaded View

  1. #1
    Join Date
    Jan 2006
    Posts
    9

    ASM Instance not recognized by DBCA :(

    Well, I'm currently building an Oracle ASM solution for a developer's server. It is built on Oracle 10.2.0.1 Enterprise Edition and Red Hat Enterprise Linux 4 ES, running on a VMWare virtual machine. I am not using ASM with cluster, though; it is just a single-instance database.

    There are two Oracle homes: the home for the database is /app/oracle/oracle/product/10.2.0/db_1, while the home for ASM is /app/oracle/oracle/product/10.2.0/asm. Why did I created a separated home for the ASM? Frankly, I ain't even sure; I was just following the installation steps here. It was said that Oracle reccommend to install ASM on its own home:

    Oracle recommends that you install Automatic Storage Management in its own Oracle home, regardless of whether you plan to only have one or multiple database instances. Installing Automatic Storage Management in its own Oracle home helps ensure higher availability and manageability.

    With separate Oracle homes, you can upgrade Automatic Storage Management and databases independently, and you can remove database software without impacting the Automatic Storage Management instance. Ensure that the Automatic Storage Management version is the same or later than the Oracle Database version.

    If an Automatic Storage Management installation does not already exist and you select the Oracle Universal Installer option to install and configure Automatic Storage Management only, then Oracle Universal Installer installs Automatic Storage Management in its own Oracle home.
    Note that I have not created any database yet; my plan is to create the ASM instance first, then using the mounted ASM disks for the database that will be created later.

    I have finished creating ASM diskgroups, and restarting the Red Hat server afterward. After restarting the server, I successfully started the ASM instance as well.

    Code:
    [oracle@iceheart-rhel4es ~]$ export ORACLE_SID=+ASM
    [oracle@iceheart-rhel4es ~]$ export ORACLE_HOME=/app/oracle/oracle/product/10.2.0/asm/
    [oracle@iceheart-rhel4es ~]$ cd $ORACLE_HOME/bin
    [oracle@iceheart-rhel4es bin]$ ./sqlplus / as sysdba
    
    SQL*Plus: Release 10.2.0.1.0 - Production on Wed Nov 22 16:06:59 2006
    
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    
    Connected to an idle instance.
    
    SQL> startup
    ASM instance started
    
    Total System Global Area   83886080 bytes
    Fixed Size                  1217836 bytes
    Variable Size              57502420 bytes
    ASM Cache                  25165824 bytes
    ASM diskgroups mounted
    So you see, on the steps above, first I set the ORACLE_SID variable to the name of the ASM instance (export ORACLE_SID=+ASM). Then I also set the ORACLE_HOME variable to the ASM home (../product/10.2.0/asm/ instead of ../product/10.2.0/db_1/). After starting the ASM as shown above, I also ran the asmcmd to verify my disk groups.
    Code:
    [oracle@iceheart-rhel4es bin]$ ./asmcmd
    ASMCMD> ls
    CTL_LOG_01/
    CTL_LOG_02/
    DATA/
    INDEX/
    SYS/
    TMP/
    UNDOTBS/
    Well, I guess the result above shows that the ASM instance has already been up and running, and all the disk groups have been mounted. Am I correct?

    Then, the next step is to create a database that will use the ASM disk groups. My initial plan is to create this database on the ../product/10.2.0/db_1/ oracle home (not the ../product/10.2.0/asm home), because the documentation says that it is reccommended to put ASM in its own separate home, so I would do so.

    Thus, I executed the following:
    Code:
    [oracle@iceheart-rhel4es ~]$ export ORACLE_SID=lab
    [oracle@iceheart-rhel4es ~]$ export ORACLE_HOME=/app/oracle/oracle/product/10.2.0/db_1/
    [oracle@iceheart-rhel4es ~]$ cd $ORACLE_HOME/bin
    [oracle@iceheart-rhel4es bin]$ ./dbca &
    Note that 'lab' is the name of the database I was about to create; it's just my habit of setting the ORACLE_SID variable before creating the database of the same name.

    In the DBCA GUI interface, I chose 'Automatic Storage Management' as the database Storage Option. Of course, since the ASM instance (+ASM) has been already up and running, I expected the database will be able to use the ASM diskgroups to store its file......

    Turned out I was wrong, since the DBCA gave me this error message:
    Quote Originally Posted by Database Configuration Assistant
    DBCA could not startup the ASM instance configured on this node. To proceed with database creation using ASM you need the aSM instance to be up and running. Do you want to recreate the ASM instance on this node?
    AAARRGGGHHH!!!

    Well I chose not to recreate the ASM instance, because I'm afraid it will conflict with the existing ASM instance which, by the way, has already been up and running as shown above. So I cancelled DBCA and decided to re-try it as shown below:
    Code:
    [oracle@iceheart-rhel4es ~]$ export ORACLE_SID=+ASM
    [oracle@iceheart-rhel4es ~]$ export ORACLE_HOME=/app/oracle/oracle/product/10.2.0/asm/
    [oracle@iceheart-rhel4es ~]$ cd $ORACLE_HOME/bin
    [oracle@iceheart-rhel4es bin]$ ./dbca &
    Yes, in my second attempt, I tried to use +ASM as the current ORACLE_SID, because I suspected the reason of the error is somehow related to the ORACLE_SID variable. Furthermore, I also installed from the ASM Oracle home (../product/10.2.0/asm instead of ../product/10.2.0/bin) because I felt safer that way. Of course that would defeat the purpose of "installing ASM on its own separate home", but what's important to me is having the database up and running first, and worrying about multiple home issues later.

    Guess what, I still got the same error message in this second attempt:
    Quote Originally Posted by Database Configuration Assistant
    DBCA could not startup the ASM instance configured on this node. To proceed with database creation using ASM you need the aSM instance to be up and running. Do you want to recreate the ASM instance on this node?
    GAH!!

    Out of desperation, I did my third attempt like this:
    Code:
    [oracle@iceheart-rhel4es ~]$ unset ORACLE_SID
    [oracle@iceheart-rhel4es ~]$ unset ORACLE_HOME
    [oracle@iceheart-rhel4es ~]$ cd /app/oracle/oracle/product/10.2.0/db_1/bin
    [oracle@iceheart-rhel4es bin]$ ./dbca &
    .....and STILL got the very same error message.

    The question is why? I have started the ASM instance flawlessly. Furthermore, the execution of asmcmd has also shown that the ASM diskgroups have been mounted. Why the DBCA just keeps failing to recognize the ASM instance?

    Help. :(
    Last edited by KAN; 11-22-2006 at 12:21 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width