魔兽怎么快速升级宠物:Oracle 10g r2 rac for aix 6.1

来源:百度文库 编辑:九乡新闻网 时间:2024/04/29 07:58:10

一.安装前准备

 1.1检查硬件是否满足需求

 1.2检查系统包和补丁是否满足需求

 1.3建立oracle用户/组/目录

 1.4调试内核和系统参数

 1.5建立节点信任关系

 1.6配置NTP时间同步

 1.7磁盘配置

 1.8用户环境变量配置

二.Oracle安装

 2.1 crs安装

 2.2 crs升级

 2.3数据库软件安装

 2.4数据库软件升级

 2.5建立监听

 2.6建立ASM实例和磁盘组

 2.7建立数据库

三.数据库安装后续设置

 3.1本地LISTENER配置

 3.2 RAC下修改归档模式

四.删除CRS和数据库软件

 


一.安装前准备

1.1检查硬件

 

查看系统是否满足需求:

#uname

查看版本

#oslevel –s                    #两个节点版本号需完全一致

 

查看硬盘大小

#lscfg –vp|grep hdisk         #这个只能看本地盘大小,不能看到存储划过来的盘的大小

#bootinfo -s diskn            #可以看到所有盘(包括存储盘)的大小

 

查看内存大小

# /usr/sbin/lsattr -E -l sys0 -a realmem

 

查看交换分区

# /usr/sbin/lsps –a

修改交换分区

一般来说系统安装好后交换分区默认是512M,而小机一般实际内存为16G或者32G,或者更多,可根据实际情况确定交换分区的大小,并做修改

修改方法如下:

查询磁盘PP值:

#lsvg rootvg

算出增加交换空间的值A

(总交换空间大小-当前交换空间大小)/PP=A

#smitty chpsà回车à选择:number of additional logical partitionsà输入值:Aà回车à显示成功后退出

 

再次查看交接空间,确认修改成功:

#/usr/sbin/lsps -a

 

 

查看TMP目录大小,不能小于400M

df -g /tmp

 

查看系统架构,oracle 10g rac要求为64位,如果不是64位,需要修改为64位

# /usr/bin/getconf HARDWARE_BITMODE

 

rootvg下的lv:操作系统安装时默认的系统lv很小,可根据实际情况来扩rootvg下的lv

#chfs -a size=xxG /xxx

例如:原来/tmp空间为1G,现在扩为4G

#chfs –a size=4G /tmp

 

查看lv信息

#df –g

如果要单独划挂载ORACLE目录来存放oracle软件,需新增加lv或者文件系统(建议),如果oracle软件存放在系统默认的目录下,比如/opt目录下,这一步可以不做

例子:挂一个空间为30G的文件系统,挂载点为:/oracle

#smittyàsystem storage managementàfile systemàadd/change/show/delete file systemàenhanced journaled file systemàadd enhanced journaled file systemàrootvgà输入单位数量:62914560,输入挂载点:/oracle,将光标移到:mount automatically at system restartàF4选择:yesà回车à回车

注:aix默认单位数量为512 byte,这里30G算出来的单位为:62914560

确认新建成功:

#df –g

 

 

1.2检查软件补丁包

 

 

系统文件包:

JDK 1.4.2 (64-bit)

#lslpp -l bos.adt.base bos.adt.lib bos.adt.libm bos.perf.perfstat \

 bos.perf.libperfstat bos.perf.proctools xlC.rte xlC.aix61.rte rsct.basic.rte \

rsct.compat.clients.rte

如果有的包没安装,需要安装盘,将没安装的包重新安装上

 

查看oracle所需AIX要打补丁集是否已经打上:

#/usr/sbin/instfix -ik "IZ10223 "

 

如果补丁没打,需打上

 

1.3建oracle用户和组

需要建的组:oinstall,dba

需要建的用户:oracle

查看用户和组:

#lsgroup -a id oinstall,dba

#lsuser -a id oracle

 

建oinstall组

# smit securityàgroupà添加组à设置组名和组ID:oinstall,301à回车à确认成功退出

或者:

#mkgroup -A "id=301" oinstall

 

建dba组

# smit securityàgroupà添加组à设置组名和组ID:dba,302à回车à确认成功退出

或者:

#mkgroup -A "id=302" dba

 

建ORACLE用户

# smit securityàuserà添加组à设置用户名和用户ID,用户主组,用户附属组以及用户home目录:username:oracle,userid:301,primary group:oinstall,group set:dba,home directory:/home/oracleà回车à确认成功退出

或者:

#useradd -u 301 -g oinstall -G dba -d '/oracle' oracle

修改oracle用户密码:

#passwd oracle

(注:确保两个节点的gid,uid必须相同)

 

查看用户信息:

#id oracle

#id nobody

(注:如果nobody不存在,必须创建)

 

确定root和oracle用户拥有以下能力,如果没有需添加:

CAP_PROPAGATE,CAP_BYPASS_RAC_VMM,CAP_NUMA_ATTACH

查看:

#lsuser oracle

#lsuser root

为用户添加以下能力:

#/usr/bin/chuser capabilities=CAP_PROPAGATE,CAP_BYPASS_RAC_VMM,CAP_NUMA_ATTACH oracle

#/usr/bin/chuser capabilities=CAP_PROPAGATE,CAP_BYPASS_RAC_VMM,CAP_NUMA_ATTACH root

 

建ORACLE目录

mkdir -p /oracle/product/10.2.0/db_1

mkdir -p /oracle/product/10.2.0/crs

chown -R oracle:oinstall /oracle

chmod -R 755 /oracle

 

 

1.4内核参数调试

查看用户限制

#ulimit –a

#cat /etc/security/limits

 

修改用户限制:

#chuser fsize=-1 oracle  

#chuser stack=-1 oracle  

#chuser rss=-1 oracle    

#chuser core=-1 oracle   

#chuser data=-1 oracle   

#chuser nofiles=-1 oracle

#chuser fsize=-1 root    

#chuser stack=-1 root    

#chuser rss=-1 root      

#chuser core=-1 root     

#chuser data=-1 root     

#chuser nofiles=-1 oracle

 

修改系统配置参数:maxuproc

#chdev -l sys0 -a maxuproc='16384'   注:oracle官方给出参考值为:2048

 

修改内核参数脚本(修改后需重启系统才能生效):

#vmo -p -o maxperm%=90;                    

#vmo -p -o minperm%=3 need nextboot        

#vmo -p -o maxclient%=90                   

#vmo -p -o strict_maxperm=0                

#vmo -p -o strict_maxclient=1              

#vmo -p -o lru_file_repage=0 need nextboot 

#vmo -r -o page_steal_method=1 need nextboot                

(need to reboot to take into effect)

 

网络参数配置

#no -a|more  查看

 

查看系统是否运行在兼容模式下:

#/usr/sbin/lsattr -El sys0 -a pre520tune

如果系统运行在兼容模式下,使用下面命令修改:

# /usr/sbin/no -o parameter_name=value

For example:

# /usr/sbin/no -o udp_recvspace=655360

 

如果系统运行在非兼容模式下,使用下面命令修改:

/usr/sbin/no -r -o ipqmaxlen=512

Other parameter:

/usr/sbin/no -p -o parameter=value

参数修改脚本:

/usr/sbin/no -r -o ipqmaxlen=512

/usr/sbin/no -p -o rfc1323=1

/usr/sbin/no -p -o sb_max=1310720

/usr/sbin/no -p -o tcp_sendspace=65536

/usr/sbin/no -p -o tcp_recvspace=65536

/usr/sbin/no -p -o udp_sendspace=65536

/usr/sbin/no -p -o udp_recvspace=655360

 

检查网络设置

 

# cat /etc/netsvc.conf | grep hosts

查看主机名

#hostname

查看域名

# domainname

查看hosts配置

#cat /etc/hosts

192.168.100.41   node1

192.168.100.42   node2

192.168.100.43   node1-vip

192.168.100.44   node2-vip

192.168.1.1       node1-priv

192.168.1.2       node2-priv

1.5配置节点信任关系

配置节点信任有两种方式,可以任选一种

一种用.rhosts

一种用ssh

Rhosts配置:

root和oracle用户的主目录下修改或者新建.rhosts文件,内容如下:

root用户:

node1         root

node2         root

node1-vip    root

node2-vip    root

node1-priv   root

node2-priv   root

 

oracle用户:

node1         oracle

node2         oracle

node1-vip    oracle

node2-vip    oracle

node1-priv   oracle

node2-priv   oracle

 

完成后使用rlogin,rsh进行测试

#rlogin node2

#rsh node2 date

…….

 

配置SSH等效

用oracle用户登录

mkdir ~/.ssh

chmod 700 ~/.ssh

/usr/bin/ssh-keygen -t rsa

/usr/bin/ssh-keygen -t dsa

touch ~/.ssh/authorized_keys

cd ~/.ssh

ls

cat /oracle/.ssh/id_rsa.pub >> authorized_keys

 

cat id_dsa.pub >>authorized_keys

cat id_rsa.pub >>authorized_keys

 

#scp oracle@node2:/home/oracle/.ssh/authorized_keys /home/oracle/.ssh/authorized_keys2

scp oracle@node1:/home/oracle/.ssh/authorized_keys /home/oracle/.ssh/authorized_keys1

 

cat authorized_keys1 >>authorized_keys

cat authorized_keys2 >>authorized_keys

 

$ chmod 600 ~/.ssh/authorized_keys

 

打开ssh等效性

exec /usr/bin/ssh-agent $SHELL

/usr/bin/ssh-add

 

设置DISPLAY

$ export DISPLAY=hostname(ip):0.0

 

验证ssh等效性

$ ssh nodename1 date

$ ssh nodename2 date

 

 

1.6配置ntp

#vi /etc/ntp.conf

server 192.168.100.7

 

1.7配置磁盘

配置磁盘

使用ASM

 

EMC多路径需修改:

reserver_lock值修改为no

/usr/sbin/chdev -l hdiskpowern -a reserve_lock=no

 

 

ESS, HDS, CLARiiON, and MPIO-capable devices:

需修改下列存储参数:

reserve_policy值修改为no_reserve

 

/usr/sbin/chdev -l hdisk2 -a reserve_policy=no_reserve   #ocr

/usr/sbin/chdev -l hdisk3 -a reserve_policy=no_reserve   #voting disk盘

 

/usr/sbin/chdev -l hdisk4 -a reserve_policy=no_reserve

/usr/sbin/chdev -l hdisk5 -a reserve_policy=no_reserve

/usr/sbin/chdev -l hdisk6 -a reserve_policy=no_reserve

/usr/sbin/chdev -l hdisk7 -a reserve_policy=no_reserve

……

 

设置存储磁盘权限

# /usr/sbin/lsdev -Cc disk

使用祼盘做CRS盘:

chown root:dba /dev/rhdisk2(ocr disk)

chown oracle:dba /dev/rhdisk3(ocr disk)

 

chown oracle:dba /dev/rhdisk4

chown oracle:dba /dev/rhdisk5

chown oracle:dba /dev/rhdisk6

chown oracle:dba /dev/rhdisk7

……

 

chmod 640 /dev/rhdisk2 (ocr disk)

chmod 660 /dev/rhdisk3 (voting disk)

chmod 660 /dev/rhdisk4

chmod 660 /dev/rhdisk5

chmod 660 /dev/rhdisk6

chmod 660 /dev/rhdisk7

……

 

 

使用祼设备做CRS盘:

ls -alF /dev/*hdisk2

ls -alF /dev/*hdisk3

 

#mknod /dev/ora_ocr_raw c 24 7 #24为磁盘路径的主号,7为磁盘路径的从号

# chown root:oinstall /dev/ora_ocr_raw

# chmod 640 /dev/ora_ocr_raw

 

#mknod /dev/ora_vote_raw c 24 11

# chown oracle:dba /dev/ora_vote_raw

# chmod 660 /dev/ora_vote_raw

 

1.8用户环境变量设置:

cat .profile

 

export ORACLE_BASE=/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export CRS_HOME=$ORACLE_BASE/product/10.2.0/crs

export ORACLE_SID=db1

export TEMP=/tmp

export TMP=/tmp

export TMPDIR=/tmp

export PATH=$PATH:$ORACLE_HOME/bin:$CRS_HOME/bin

export AIXTHREAD_SCOPE=S

umask 022

export DISPLAY=192.168.100.95:0.0

export LIBPATH=$ORACLE_HOME/lib:$CRS_HOME/install/prepatch10204/lib32/

 

if [ -t 0 ]; then

stty intr ^C

fi

注:以上所有操作都必须在两个节点上执行

 

二.ORACLE安装

2.1CRS安装

1.以root用户在两个节点上运行rootpre.sh,在安装前必须运行这个脚本

注:补丁p6718715需在metalink上下载

su - root

unzip p6718715_10203_AIX64-5L.zip

# chmod 755 *

# ./rootpre.sh

 

2.在一个节点上执行安装:

登录到节点1,切换到oracle用户,安装之前运行下面命令检查系统当前是否满足数据库安装,也可手动一步一步查看:

#su – oracle

#cd Disk1/cluvfy

$./runcluvfy.sh stage -pre crsinst -n node1,node2 -r 10gR2

 

3.切换到oracle用户,如果上面命令运行成功(会报VIP错误,这里可以忽略),执行下面命令开始安装数据库:

#su – oracle

进入安装目录:

$./runInstaller –ignoreSysPreReqs

在这里会提示你是否运行过rootpre.sh,如果已经运行选择Y,如果没运行,请选N退出后以root用户运行,然后再次安装

 

3.1.选择Oracle目录清单存放目录

3.2.选择CRS存目录

3.3.安装程序的需求检测,这里都是操作系统版本产生的警告,可以点下一步忽略

3.4.集群节点配置,这里默认只有节点1,第二个节点需点ADD添加,格式按节点1配置,点下一步,设置PUBLIC

3.5.设置ocr盘,路径为:/dev/rhdisk2

3.6.设置voting disk盘,路径为:/dev/rhdisk3

3.7.点击install开始安装

3.8.安装结束前,以root用户依次在节点1和节点2上运行第一个脚本orainstRoot.sh,然后依次在节点1和节点2上运行第二个脚本root.sh

3.9.如果在第二个节点运行root.sh报vip错:

在第二个节点以root用户登录,运行$CRS_HOME/bin/vipca

#$CRS_HOME/bin/vipca

3.10.运行成功后,回到节点1点下一步,然后弹出安装成功

 

 

2.2将cluster从10.2.0.1升级到10.2.0.5

1.先将CRS停掉:

在一个节点以oracle执行

先查看:

$crs_stat –t

停止crs资源:

$c rs_stop –all

然后在每个节点上以root用户执行下列命令,停掉crs进程:

/etc/init.crs stop

使用:crs_stat –t,ps –ef|grep crs等命令确认crs已经停掉

 

2.将升级补丁包上传到服务器,解压

$unzip p8202632_10205_AIX64-5L_1of2.zip

$unzip p8202632_10205_AIX64-5L_1of2.zip

将这两个包解压到同一个目录下

 

3.在运行升级程序前需要以root用户在每个节点执行下面命令:

#/usr/sbin/slibclean

 

4.然后切换到oracle用户运行升级安装程序:

进入升级程序目录,然后运行:

./runInstaller –ignoreSysPreReqs

提示是否以root用户运行过:/usr/sbin/slibclean命令时,选择Y,开始升级安装

 

5.选择crs_home目录,然后点下一步,开始升级安装

 

6.安装完结束前提示要以root用户停止crs,然后运行root102.sh脚本

在第一个节点和第二个节点依次执行下面步骤,第一个节点执行完了后再在第二个节点上执行,两个节点都执行完以后再回到第一个节点点退出。

 

root用户登录,然后停止crs:

#su – root

#/oracle/product/10.2.0/crs/bin/crsctl stop crs

#/oracle/product/10.2.0/crs/install/root102.sh

 

7.在两个节点上脚本运行完成后,使用以下命令查看升级是否成功:

$crsctl query crs softwareversion

查看结果显示,如果版本为10.2.0.5则表示升级成功。

 

 

 

 

 

 

 

 

 

 

2.3 Oracle database安装

1.将oracle database安装包上传到服务器,解压

$cpio –idcmv <10gr2_aix5l64_database.cpio

 

2.执行安装

$./runInstaller –ignoreSysPreReqs

提示是否运行过rootpre.sh时,之前已经运行过,这里输入y

 

3.选择oracle清单目录

 

4.选择oracle home目录

 

5.选择集群安装

并将所有节点选中

 

6.安装程序的需求检测,这里都是操作系统版本产生的警告,可以点下一步忽略

 

7.选择只安装软件

 

8.占install开始安装

 

9.以root用户分别在第一个节点和第二个节点上运行:

Sh /oracle/product/10.2.0/db_1/root.sh

两个节点都成功运行后,点OK,点退出

 

 

 

2.4 Oracle database software升级到10.2.0.5

进入升级包目录:

1.执行安装

$./runInstaller

 

2.选择oracle home目录

 

3.选择下一步,然后选择install开始升级安装

 

4.安装完成后退出,连上oracle软件,看版本,如果为10.2.0.5,表示升级成功

2.5建监听

1.切换到oracle用户下,运行以下命令:

$ netca

 

2.选择集群配置

 

3.选择监听配置

 

4.选择添加

 

5.输入LISTENER名称,默认为:LISTENER

 

6.选TCP点下一步

 

7.选择端口:1521

 

8.选择不配置其它监听

 

9.安装完成后验证:

$ lsnrctl status

$crs_stat –t

 

 

 

2.6建ASM实例和磁盘组

1.切换到oracle用户下,运行以下命令:

$dbca

 

2.选择oracle real application cluster database

 

3.选择配置ASM

 

4.选择两个节点

 

5.设置ASM管理密码,选择建立PFILE

 

6.点击OK开始创建ASM实例

 

7.创建ASM磁盘组,选择EXTERNAL外部冗余,选择磁盘,磁盘组名用大写字母和数字

 

8.选择完成后点OK开始建立ASM磁盘组

 

9.磁盘组建立后确认磁盘组状态为MOUNT,点完成退出

 

 

2.7数据库建立

1.切换到oracle用户下,运行以下命令:

$dbca

 

2.选择建立数据库

 

3.选择两个节点

 

4.选择GENERAL PURPOSE

 

5.输入数据库名,SID

 

6.点下一步

 

7.设置SYS/SYSTEM密码

 

8.存储选项选ASM

 

9.选择建好的ASM磁盘组,点下一步

 

10.添加服务名,这里可以添加也可以不添加

 

11.设置oracle参数,sga,pga,processor,字符集等

 

12.设置,修改和添加日志组

 

13.选择建立数据库脚本

 

14.点击OK开始建立数据库建库脚本

 

15.脚本建立成功后,点OK开始建数据库

 

16.数据库建立成功后,点EXIT后,ORACLE会自己把两个节点的实例和数据库带起来

 

17.数据库建立完成,用CRS命令检测,查看CRS服务是否正常启动

 

 

 

 

 

 

 

 

 

 

三.数据库安装后续设置

3.1本地LISTENER设置

进入oracle数据库查看LISTENER

show parameter local_listener

show parameter remote_listener

设置tnsnames.ora,添加以下内容:

节点1(node1):

LISTENERS_DB1 =

 (ADDRESS_LIST =

   (ADDRESS = (PROTOCOL = TCP)(HOST = node1-vip)(PORT = 1521))

   (ADDRESS = (PROTOCOL = TCP)(HOST = node2-vip)(PORT = 1521))

 )

节点2(node2):

LISTENERS_DB2 =

 (ADDRESS_LIST =

   (ADDRESS = (PROTOCOL = TCP)(HOST = node1-vip)(PORT = 1521))

   (ADDRESS = (PROTOCOL = TCP)(HOST = node2-vip)(PORT = 1521))

 )

 

进入数据库修改参数:

alter system set local_listener='LISTENERS_DB1' scope=both sid='db1';

alter system set local_listener='LISTENERS_DB2' scope=both sid=’db2';

切换到oracle用户下执行,重启数据库和实例测试:

srvctl stop instance -d db -i 'db1';

srvctl stop instance -d db -i 'db2';

 

srvctl start instance -d db -i 'db1';

srvctl start instance -d db -i 'db1';

 

 

3.2 RAC下修改归档模式

检查是否处于归档模式

SQL> archive log list;

查看并修改cluster_database参数(两个节点)

 

SQL> show parameter cluster_database;

 

alter system set cluster_database=false scope=spfile sid='db1';

alter system set cluster_database=false scope=spfile sid=’db2';

 

shutdown immediate;(两个节点)

 

在其中一个节点上执行

startup nomount;

alter database archivelog;

 

alter database open;

 

alter system set LOG_ARCHIVE_DEST_1='LOCATION=/arch1/db1';

show parameter cluster_database;

 

alter system set cluster_database=TRUE scope=spfile sid=’db1';

alter system set cluster_database=TRUE scope=spfile sid='db2';

 

archive log list;

 

shutdown immediate

 

startup

ceate pfile=’/home/oracle/pfiledb.ora’ from spfile;

查出SPFILE路径:

show parameter spfile

+DATA01/db/spfiledb.ora

 

在第二个节点上执行:

将PFILE拷到第二个节点上,修改后用PFILE启动

修改PFILE

将这一行:*.log_archive_dest_1=’LOCATION=/arch1/db1'

修改为:db2. log_archive_dest_1=’LOCATION=/arch2/db2' #db2为数据库第二个节点实例名

用PFILE启动实例:

startup pfile=’/home/oracle/pfiledb.ora’;

查看是否为归档模式:

archive log list

修改PFILE文件,在db2. log_archive_dest_1=’LOCATION=/arch2/db2'这一行上添加一行:

db1. log_archive_dest_1=’LOCATION=/arch1/db1'

进入数据库建立SPFILE

create spfile=’ +DATA01/db/spfiledb.ora’ from pfile=’/home/oracle/pfiledb.ora’;

切换到oracle用户下执行,重启数据库和实例测试:

srvctl stop instance -d db -i 'db1';

srvctl stop instance -d db -i 'db2';

 

srvctl start instance -d db -i 'db1';

srvctl start instance -d db -i 'db1';

 

 

 

 

 

 

四.删除CRS和数据库软件

如果安装CRS失败,执行下面命令删除CRS后重新进行安装:

1.以root用户登录:进入CRS_HOME/install,运行rootdelete.sh,运行成功后再运行rootdeinstall.sh

su - root

cd $CRS_HOME/install

sh rootdelete.sh

sh rootdeinstall.sh

2.然后删除下列文件

 

rm -rf /etc/init.cssd

rm -rf /etc/init.crs

rm -rf /etc/init.crsd

rm -rf /etc/init.evmd

rm -rf /etc/rc.d/rc2.d/K96init.crs

rm -rf /etc/rc.d/rc2.d/S96init.crs

rm -rf /etc/oracle/scls_scr

rm -rf /etc/oracle/oprocd

rm /etc/inittab.crs

cp /etc/inittab.orig /etc/inittab

rm -rf /var/tmp/.oracle

rm -rf /tmp/.oracle

rm -rf /oracle/oraInventory

3.查看crs,css,evm进程是否在运行:

ps -ef|grep crs

ps -ef|grep css

ps -ef|grep evm

如在运行,使用kill -9进程ID将进程杀掉

kill -9进程ID

 

4.使用ORACLE OUI程序将oracle软件和crs删除掉

 

5.将$ORACLE_HOME和$CRS_HOME下文件删除:

rm -rf $ORACLE_HOME/*

rm -rf $CRS_HOME/*

 

6.查找系统中是否还有oracle相关文件,找到并删除:

find / -name ora*

rm -rf /…/文件

 

7.清空CRS盘:

dd if=/dev/zero f=/dev/rhdisk2 bs=1024k count=300

dd if=/dev/zero f=/dev/rhdisk3 bs=1024k count=300

 

上面所有步骤都执行成功后,重新启动系统,然后开始重装

 

 

 

参考文档:

1.   oracle官方文档

2.   metalink:RACGuides_Rac10gR2OnAIX


文档中的图片