Martins Blog

Trying to explain complex things in simple terms

Upgrade ASM 10.2 to 11.2 single instance

Posted by Martin Bach on February 8, 2010

This post describes how to upgrade an existing single instance ASM installation to the latest and greatest, Oracle 11.2. The most noteworthy change is that ASM is no longer installed using RDBMS installer but rather the Grid Infrastructure.

Huh-installing CRS for single instance? That at first sounded like a bit of an overkill but Oracle left us with no choice. As you can see later, it’s not as bad as it seems, I have to say I rather like the Oracle Restart feature (see my previous blog post).

So-as always-start by downloading the necessary software linux.x64_11gR2_grid.zip and unzip it somewhere convenient.

Preparation

I recommend getting some metadata from the ASM instance just in case:

SQL> select name,state from v$asm_diskgroup;

NAME			       STATE
------------------------------ -----------
DATA			       MOUNTED
FRA			       MOUNTED
LOG			       MOUNTED

SQL> select name,path from v$asm_disk;

NAME                           PATH
------------------------------ -------------------
DATA1                          ORCL:DATA1
LOG1                           ORCL:LOG1
FRA1                           ORCL:FRA1

SQL> show parameter asm

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
asm_diskgroups			     string	 DATA, FRA, LOG
asm_diskstring			     string	 ORCL:*
asm_power_limit 		     integer	 1
SQL>

Installation

Begin by shutting down all Oracle processes including ASM (databases first please :) Now start ./runInstaller and follow these steps:

  • Chose Upgrade Grid Infrastructure, continue despite the warning that ASM instances have been detected. Strage error message, as we want to upgrade ASM!
  • Select your language
  • Specify a password for the new asmsnmp user
  • Select dba for all 3 os groups or whatever is more appropriate for your environment
  • Chose an ORACLE_BASE  and ORACLE_HOME. I usually go with the defaults - ORACLE_BASE = /u01/app/oracle and ORACLE_HOME = /u01/app/oracle/product/11.2.0/grid
  • On the verification screen, make sure to have all requirements satisfied (I usually ignore unixODBC). Kernel parameters can automatically be fixed by running the fixup script-click on "fix and check again"
[root@devbox ~]# /tmp/CVU_11.2.0.1.0_oracle/runfixup.sh
Response file being used is :/tmp/CVU_11.2.0.1.0_oracle/fixup.response
Enable file being used is :/tmp/CVU_11.2.0.1.0_oracle/fixup.enable
Log file location: /tmp/CVU_11.2.0.1.0_oracle/orarun.log
Setting Kernel Parameters...
fs.file-max = 327679
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.wmem_max = 262144
net.core.wmem_max = 1048576
  • Start the installation by clicking on "Finish" after reviewing the installation options
  • When prompted, run the rootupgrade.sh script.  I have included sample output below
  • Wait for ASMCA to finish the ASM upgrade
  • Voila! You successfully completed the upgrade

Sample, commented output from the rootupgrade.sh

[root@devbox ~]# /u01/app/oracle/product/11.2.0/grid/rootupgrade.sh
Running Oracle 11g root.sh script...

The following environment variables are set as:
 ORACLE_OWNER= oracle
 ORACLE_HOME=  /u01/app/oracle/product/11.2.0/grid

Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n)  [n]:
The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)  [n]:
The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: 

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
2010-02-05 10:40:48: Checking for super user privileges
2010-02-05 10:40:48: User has super user privileges
2010-02-05 10:40:48: Parsing the host name
Using configuration parameter file: /u01/app/oracle/product/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
LOCAL ADD MODE
Creating OCR keys for user 'oracle', privgrp 'oinstall'..
Operation successful.
CSS appears healthy
Stopping CSSD.
Shutting down CSS daemon.
Shutdown request successfully issued.
Shutdown has begun. The daemons should exit soon.
CRS-4664: Node devbox successfully pinned.
Adding daemon to inittab
CRS-4123: Oracle High Availability Services has been started.
ohasd is starting

devbox     2010/02/05 10:42:11     /u01/app/oracle/product/11.2.0/grid/cdata/devbox/backup_20100205_104211.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server
Updating inventory properties for clusterware
Starting Oracle Universal Installer...

Checking swap space: must be greater than 500 MB.   Actual 7913 MB    Passed
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /u01/app/oracle/oraInventory
'UpdateNodeList' was successful.
[root@devbox ~]#

Note the line "node devbox successfully pinned". This will allow us to run pre 11.2 databases on the machine, a step you'd have to complete manually had there not been existing RDBMS installations. OHASD is the Oracle High Availability Services Daemon, the "mother of all Clusterware processes". And finally, we see the updateNodeList was successful message indicating successful completion of the script's execution.

Finishing Touches

To make full use of Oracle Restart,  register databases using the $GRID_HOME/bin/srvctl add database (the -h flag gives you the syntax if you're unsure).

Contrary to what the documentation said I didn't have to update the existing DBConsole's monitoring configuration to reflect the ASM_HOME.

About these ads

3 Responses to “Upgrade ASM 10.2 to 11.2 single instance”

  1. […] Martin Bach-Upgrade ASM 10.2 to 11.2 single instance […]

  2. Chirag said

    “Wait for ASMCA to finish the ASM upgrade” – How does it find an existing ASM instance?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
Follow

Get every new post delivered to your Inbox.

Join 2,417 other followers

%d bloggers like this: