Upgrade 11.2.0.1 GI/CRS to 11.2.0.2 in Linux

11.2.0.2已经release 1年多了,相对于11.2.0.1要稳定很多。现在我们为客户部署新系统的时候一般都会推荐直接装11.2.0.2(out of place),并打到<Oracle Recommended Patches — Oracle Database>所推荐的PSU。

对于现有的系统则推荐在停机窗口允许的前提下尽可能升级到11.2.0.2上来,当然客户也可以更耐心的等待11.2.0.3版本的release。

针对11.2.0.1到11.2.0.2上的升级工程,其与10g中的升级略有区别。对于misson-critical的数据库必须进行有效的升级演练和备份操作,因为Oracle数据库软件的升级一直是一项复杂的工程,并且具有风险,不能不慎。

同时RAC数据库的升级又要较single-instance单实例的升级来的复杂,主要可以分成以下步骤:

1. 若使用Exadata Database Machine硬件,首先要检查是否需要升级Exadata Storage Software和Infiniband Switch的版本,<Database Machine and Exadata Storage Server 11g Release 2 (11.2) Supported Versions>

2. 完成rolling upgrade Grid Infrastructure的准备工作

3.滚动升级Gird Infrastructure GI软件

4.完成升级RDBMS数据库软件的准备工作

5.具体升级RDBMS数据库软件,包括升级数据字典、并编译失效对象等

这里我们重点介绍的是滚动升级GI/CRS集群软件的准备工作和具体升级步骤,因为11.2.0.2是11gR2的第一个Patchset,且又是首个out of place的大补丁集,所以绝大多数人对新的升级模式并不熟悉。

 

升级GI的准备工作

 

1.注意从11.2.0.1 GI/CRS滚动升级(rolling upgrade)到 11.2.0.2时可能出现意外错误,具体见<Pre-requsite for 11.2.0.1 to 11.2.0.2 ASM . . . → Read More: Upgrade 11.2.0.1 GI/CRS to 11.2.0.2 in Linux

11gr2 RAC安装INS-35354问题一例

今天在安装一套11.2.0.2 RAC数据库时出现了INS-35354的问题:

因为之前已经成功安装了11.2.0.2的GI,而且Cluster的一切状态都正常,出现这错误都少有点意外:

[grid@vrh1 ~]$ crsctl check crs CRS-4638: Oracle High Availability Services is online CRS-4537: Cluster Ready Services is online CRS-4529: Cluster Synchronization Services is online CRS-4533: Event Manager is online

去MOS搜了一圈,发现有可能是oraInventory中的inventory.xml更新不正确导致的:

Applies to: Oracle Server – Enterprise Edition – Version: 11.2.0.1 to 11.2.0.2 – Release: 11.2 to 11.2 Information in this document . . . → Read More: 11gr2 RAC安装INS-35354问题一例

crsctl status resource -t -init in 11.2.0.2 grid infrastructure

11.2.0.2的grid infrastructure中crsctl stat res 命令不再显示如ora.cssd、ora.ctssd、ora.diskmon等基础资源的信息,如果用户想要了解这些resource状态需要加上-init选项:

[grid@rh2 ~]$ crsctl query crs activeversion Oracle Clusterware active version on the cluster is [11.2.0.2.0] [grid@rh2 ~]$ crsctl stat res -t ——————————————————————————– NAME TARGET STATE SERVER STATE_DETAILS ——————————————————————————– Local Resources ——————————————————————————– ora.DATA.dg ONLINE ONLINE rh2 ora.LISTENER.lsnr OFFLINE OFFLINE rh2 ora.asm ONLINE ONLINE rh2 ora.gsd OFFLINE OFFLINE rh2 ora.net1.network ONLINE ONLINE . . . → Read More: crsctl status resource -t -init in 11.2.0.2 grid infrastructure

How to recover from root.sh on 11.2 Grid Infrastructure Failed

从10g的clusterware到11g Release2的Grid Infrastructure,Oracle往RAC这个框架里塞进了太多东西。虽然照着Step by Step Installation指南步步为营地去安装11.2.0.1的GI,但在实际执行root.sh脚本的时候,不免又要出现这样那样的错误。例如下面的一例:

[root@rh3 grid]# ./root.sh Running Oracle 11g root.sh script… The following environment variables are set as: ORACLE_OWNER= maclean ORACLE_HOME= /u01/app/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? . . . → Read More: How to recover from root.sh on 11.2 Grid Infrastructure Failed

How to find error message from OMS repository

OEM或者OMS管理工具为我们提供了方便的访问数据库度量告警和错误信息的界面,那么我们是否可以通过手动查询的方式来直接查看这些信息呢?答案是肯定的,这需要我们对OMS repository有一定的了解:

SQL> desc sysman.MGMT_CURRENT_METRIC_ERRORS; Name Null? Type —————————————– ——– —————————- TARGET_GUID NOT NULL RAW(16) METRIC_GUID NOT NULL RAW(16) COLL_NAME NOT NULL VARCHAR2(64) AGENT_GUID NOT NULL RAW(16) COLLECTION_TIMESTAMP NOT NULL DATE METRIC_ERROR_MESSAGE VARCHAR2(4000) METRIC_ERROR_TYPE NUMBER(1) /* MGMT_CURRENT_METRIC_ERRORS记录了当前出现在OMS console中的度量错误记录 */ SQL> desc sysman.MGMT_METRIC_ERRORS; Name Null? Type —————————————– ——– —————————- TARGET_GUID NOT NULL RAW(16) METRIC_GUID NOT NULL . . . → Read More: How to find error message from OMS repository

在OEL5上安装配置Oracle Gird Control 10.2.0.5

早期的Grid Control问题实在太多了,以至于把10.2.0.1的Grid Control升级到10.2.0.5几乎是不可能完成的任务;此外10.2.0.5以前的gc不支持11g作为repository database仓库数据库,不仅于此10.2.0.1版本是不支持rhel5或OEL5的,如果想安装的话rhel/oel 4是仅有理想的平台。这就这为我们制造了许多局限。如果是Fresh Installation的话似乎只安装软件(software only),而不在安装10.2.0.1阶段配置oms,在升级到10.2.0.5后再进行oms的config会是一种比较理想的安装方法。不过我们仍需要应付一个复杂的配置过程,写这个文档的目的是帮助我们应付(包括已安装过的人,因为很容易忘记)这种窘况。

1.我们需要一个已经存在的Oracle数据库,当然它应当是纯净的(没有相关的em repository),其版本最好是10.2.0.5或者11.2.0.2;我们假设你的数据库已经满足了一切安装grid control的前提要求,这包括设置几个初始化参数和装有dbms_shared_pool包等等。

2.其次你需要下载对应的软件,这包括了完全版本的10.2.0.1安装介质和10.2.0.5 gc patchset,并且最好有10.2.0.5版的agent(个人经验agent不太稳定,有时候需要重配,所以有介质的话会方便些):

Linux_Grid_Control_full_102010_disk1.zip Linux_Grid_Control_full_102010_disk2.zip Linux_Grid_Control_full_102010_disk3.zip gc_x86_64_10205_part1of2.zip gc_x86_64_10205_part2of2.zip Linux_x86_64_Grid_Control_agent_download_10_2_0_5_0.zip

要下载这一大堆介质可能是我们安装过程中最麻烦的一件事情,特别是当你的网络状况欠佳的季节。 因为都是zip包,所以你只需要使用unzip命令将以上介质一一解压到合适目录就可以了。

3.配置OMS所在主机的内核参数和rpm包,下面给出了相关配置文件的示例值:

/etc/sysctl.conf: kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 # semaphores: semmsl, semmns, semopm, semmni net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 262144 net.core.rmem_max . . . → Read More: 在OEL5上安装配置Oracle Gird Control 10.2.0.5

Lowering the Costs of Database Deployments

RAC-One Node Better Virtualization for Databases New single-instance RAC configuration Delivers value of server virtualization to databases on physical servers Live migration of instances across servers Rolling patches for single instance databases Built-in cluster failover for high availability Online upgrade to RAC Standardized deployment across all Oracle databases Complements virtual and physical servers

Omotion (RAC-One) . . . → Read More: Lowering the Costs of Database Deployments

Troubleshooting 11.2 Grid Infastructure Installation Root.sh Issues [ID 1053970.1]

Applies to:

Oracle Server – Enterprise Edition – Version: 11.2.0.1 to 11.2.0.1 – Release: 11.2 to 11.2 Information in this document applies to any platform.

Purpose

This document is to provide a reference for troubleshooting root.sh issues after installing an 11.2 Grid Infrastructure home for a cluster. For versions prior to 11.2, see Note: 240001.1

. . . → Read More: Troubleshooting 11.2 Grid Infastructure Installation Root.sh Issues [ID 1053970.1]