Chinaunix首页 | 论坛 | 博客
  • 博客访问: 220729
  • 博文数量: 49
  • 博客积分: 1785
  • 博客等级: 上尉
  • 技术积分: 565
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-01 10:30
文章分类

全部博文(49)

文章存档

2013年(2)

2012年(7)

2011年(11)

2010年(6)

2009年(23)

我的朋友

分类: Oracle

2011-10-17 21:33:29

一.Oracle 11g  Grid Infrastructure and Database安装

1.1.  检查操作系统的版本, 补丁, JDK版本是否符合要求,修改内核参数.

vmo -p -o minperm%=3

vmo -p -o maxperm%=90

vmo -p -o maxclient%=90

vmo -p -o lru_file_repage=0

vmo -p -o strict_maxclient=1

vmo -p -o strict_maxperm=0

chdev -l sys0 -a maxuproc=10000

chdev -l sys0 -a ncargs='128'

no -r -o ipqmaxlen=512

no -p -o rfc1323=1

no -p -o sb_max=41943040

no -p -o tcp_recvspace=1048576

no -p -o tcp_sendspace=1048576

no -p -o udp_recvspace=10485760

no -p -o udp_sendspace=1048576

1.2.  检查安装ORACLE产品的用户及组:

创建grid用户,并修改oraprod用户的相关属性

/usr/bin/chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oraprod

/usr/bin/chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid

 

1.3.  设置grid用户的环境变量

umask 022

export ORACLE_BASE=/app/grid/grid_base

export ORACLE_HOME=/app/grid/11.2.0

export ORACLE_SID=+ASM1

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"

export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch

export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin

export ORACLE_PATH=${PATH}:$ORACLE_BASE/common/oracle/sql:.:$ORACLE_HOME/rdbms/admin

export ORACLE_TERM=xterm

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORA_NLS10=$ORACLE_HOME/nls/data

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib

export CLASSPATH=$ORACLE_HOME/JRE

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib

export THREADS_FLAG=native

export TEMP=/tmp

export TMPDIR=/tmp

export PS1=`hostname`:'$PWD'"$"

 

1.4.  配置grid用户在两节点的等效性

1.5.  Grid Infrastructure安装

使用grid用户进行安装,安装目录/app/grid/11.2.0

./runInstaller

安装过程略,请参考安装手册

1.6.  Database安装 

使用oraprod用户进行安装。使用11gprofile文件。安装目录/app/oracle/11.2.0

./runInstaller

安装过程略,请参考安装手册

1.7.  安装PSU UPDATE3补丁

分别对GRID_HOMEORACLE_HOMEPSU补丁

二.9i数据库升级前准备

2.1.执行pre-upgrade脚本utlu112i.sql

以下部分需要在参数文件中修改:

WARNING: --> "compatible" must be set to at least 10.1.0                                           

.                                                                                                  

**********************************************************************                             

Renamed Parameters: [Update Oracle Database 11.2 init.ora or spfile]                               

**********************************************************************                             

-- No renamed parameters found. No changes are required.                                           

.                                                                                                  

**********************************************************************                             

Obsolete/Deprecated Parameters: [Update Oracle Database 11.2 init.ora or spfile]                   

**********************************************************************                             

--> optimizer_max_permutations   10.1       OBSOLETE                                               

--> row_locking                  10.1       OBSOLETE                                               

--> undo_suppress_errors         10.1       OBSOLETE                                               

--> max_enabled_roles            10.1       DEPRECATED                                             

--> enqueue_resources            10.2       OBSOLETE                                                

--> sql_trace                    10.2       DEPRECATED                                             

--> background_dump_dest         11.1       DEPRECATED   replaced by  "diagnostic_dest"            

--> user_dump_dest               11.1       DEPRECATED   replaced by  "diagnostic_dest"                                                                                                       

2.2.  确认数据库中没有无效对象

2.3.  检查具有connect角色的用户

由于升级后,connect角色只具有create session权限,因此要单独给这些用户附权限。

SQL> SELECT grantee FROM dba_role_privs

  2  WHERE granted_role = 'CONNECT' and

  3  grantee NOT IN (

  4  'SYS', 'OUTLN', 'SYSTEM', 'CTXSYS', 'DBSNMP',

  5  'LOGSTDBY_ADMINISTRATOR', 'ORDSYS',

  6  'ORDPLUGINS', 'OEM_MONITOR', 'WKSYS', 'WKPROXY',

  7  'WK_TEST', 'WKUSER', 'MDSYS', 'LBACSYS', 'DMSYS',

  8  'WMSYS', 'EXFSYS', 'SYSMAN', 'MDDATA',

  9  'SI_INFORMTN_SCHEMA', 'XDB', 'ODM');

 

GRANTEE

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

OLAPSYS

OLAP_USER

 

2.4.  检查db_link

9i数据库中的db_link在升级后会失效,记录一下现有的db_link,升级后需要重建

升级后需要重建的db_link

SQL> l

  1  SELECT 'CREATE '||DECODE(U.NAME,'PUBLIC','public ')||'DATABASE LINK '||CHR(10)

  2  ||DECODE(U.NAME,'PUBLIC',Null, 'SYS','',U.NAME||'.')|| L.NAME||chr(10)

  3  ||'CONNECT TO ' || L.USERID || ' IDENTIFIED BY "'||L.PASSWORD||'" USING

  4  '''||L.HOST||''''

  5  ||chr(10)||';' TEXT

  6  FROM SYS.LINK$ L, SYS.USER$ U

  7* WHERE L.OWNER# = U.USER#

SQL> /

 

TEXT

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

2.5.  确认没有需要恢复或正在备份的数据文件

SELECT * FROM v$recover_file;

 

SELECT * FROM v$backup WHERE status != 'NOT ACTIVE';

 

2.6.  关闭9i数据库

如果可能最好做一个冷备,包括ORACLE_HOME,所有数据文件,控制文件和参数文件。

三.升级

3.1. 准备新的profile文件

umask 022

export ORACLE_BASE=/app/oracle

export ORACLE_HOME=$ORACLE_BASE/11.2.0

export ORACLE_SID=prod

export NLS_LANG=American_America.ZHS16GBK

export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"

export PATH=${PATH}:$HOME/bin:$ORACLE_HOME/bin:/app/grid/11.2.0/bin/:$ORACLE_HOME/OPatch

export ORACLE_TERM=xterm

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORA_NLS10=$ORACLE_HOME/nls/data

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib

export CLASSPATH=$ORACLE_HOME/JRE

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib

export THREADS_FLAG=native

export TEMP=/tmp

export TMPDIR=/tmp

export PS1=`hostname`:'$PWD'"$"

 

3.2. 修改initprod.ora文件

      注意需要保留_kghdsidx_count=1参数,否则upgrade的时候会出错

3.3. startup UPGRADE方式启动数据库

3.4. 创建sysaux表空间

CREATE TABLESPACE SYSAUX

DATAFILE '/oracle/proddata/sysaux01.dbf'

SIZE 2048M REUSE

EXTENT MANAGEMENT LOCAL

SEGMENT SPACE MANAGEMENT AUTO

ONLINE;

3.5. 执行catupgrd.sql脚本

3.6. 执行utlu112s.sql脚本

      确认数据库中的所有组件都升级有效

3.7. 执行catuppst.sql脚本完成升级

3.8. 执行utlrp.sql脚本编译无效对象

 

四.单实例转换为RAC

采用oracle自带的rconfig工具进行转换,配置文件rconfig.xml内容如下:

           xmlns:xsi=""

           xsi:schemaLocation=" rconfig.xsd">

      

       

              /app/oracle/11.2.0

              /app/oracle/11.2.0

              prod">

               

                  sys

                  oracle

                  sysdba

               

             

                     

                gldb1"/>

                gldb2"/>

             

             

              prod

             

                +DATAORA

               

             

       

   

注意修改红色标注的部分,使符合本系统转换需要,需要实例在OPEN状态。

执行下面的命令开始转换

#rconfig rconfig.xml 

根据数据文件大小,IO性能的不同,该操作时间也不确定。

阅读(2783) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~