Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103655380
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-30 13:41:55

第六章. 安装Oracle软件
6.1开启RSH
在多节点上需要,如果在单节点就无所谓了,用于节点之间的通信,只需要在一个节点上安装Oracle软件即可,开启RSH之后还要注意iptables防火墙是否打开,最好关闭该防火墙。

su - root

chkconfig rsh on

chkconfig rlogin on

service xinetd reload



配置远程权限

$ more /etc/hosts.equiv

+dbrac1 oracle

+dbrac2 oracle

+dbrac1-eth1 oracle

+dbrac2-eth2 oracle



测试RSH是否能正常工作,在节点1上查看远程节点的文件内容

[oracle@dbrac1 admin]$ rsh dbrac2 cat /etc/hosts.equiv

dbrac1 oracle

dbrac2 oracle

dbrac1-eth1 oracle

dbrac2-eth1 oracle



如果有结果,证明正常,同样,在节点2上查看节点1的文件内容,可以检测节点2

6.2安装软件
如果rsh设置的没有问题,只安装一个节点即可,或者也可以安装后拷贝的第二个节点。

软件安装过程不再多叙,有几点需要注意



1、在安装开始,注意选择节点,并注意cluster组件是否被安装,可以去掉多余的组件,如OEM与HTTP SERVER



2、在AS2.1上的安装应当没有任何问题,在AS 3.0上安装9201,如果在编译阶段有ins_oemagent.mk(补丁3119415固定),ins_ctx.mk(在9204的补丁中固定),都忽略,将在补丁中固定。



3、如果是先安装9201并升级到9204,注意在升级的时候,先升级OUI,并再运行$ORACLE_HOME/bin下的runInstaller,如果是直接安装9204的安装程序,只要安装即可。

运行9204升级程序之前,注意进行如下操作(这个是RAC升级特有的)。

su - oracle

cd $ORACLE_BASE/oui/bin/linux

ln -s libclntsh.so.9.0 libclntsh.so



4、在AS3.0上从9201升级到9204,如果遇到ins_oemagent.mk,也忽略,将在以下的补丁中固定。

补丁3119415与2617419补丁,固定以上的ins_oemagent.mk错误

su - oracle

$ cp p2617419_220_GENERIC.zip /tmp

$ cd /tmp

$ unzip p2617419_220_GENERIC.zip

在打3119415之前,需要确保fuser是可以用的,现在开始打该补丁

su - oracle

$ unzip p3119415_9204_LINUX.zip

$ cd 3119415

$ export PATH=$PATH:/tmp/OPatch

$ export PATH=$PATH:/sbin # 因为fuser在/sbin下

$ which opatch

/tmp/OPatch/opatch

$ opatch apply



5、最后注意只安装,不创建数据库

6.3初试化共享文件
安装完毕后创建配置文件

su - root

# mkdir -p /var/opt/oracle

# touch /var/opt/oracle/srvConfig.loc

# chown oracle:dba /var/opt/oracle/srvConfig.loc

# chmod 755 /var/opt/oracle/srvConfig.loc



在srvConfig.loc中间添加srvconfig_loc参数如下:

srvconfig_loc=/u01/oracle/oradata/rac/srvConfig.dbf



创建srvConfig.dbf文件。如果是共享设备,需要创建到共享设备上,如ocfs文件系统或者是raw分区上,那么上面的文件名将有一些差异。

su - oracle

$ touch srvConfig.dbf



初始化配置文件

$ srvconfig -init

第七章. 创建数据库
7.1准备参数如下
*.log_buffer=626688

*.compatible= 9.2.0.0.0

*.control_files= /u01/oracle/oradata/rac/control01.ctl , /u01/oracle/oradata/rac/control02.ctl , /u01/oracle/oradata/rac/control03.ctl

*.core_dump_dest= /u01/oracle/admin/rac/cdump

*.user_dump_dest= /u01/oracle/admin/rac/udump

*.background_dump_dest= /u01/oracle/admin/rac/bdump

*.db_block_size=8192

*.db_cache_size=250549376

*.db_file_multiblock_read_count=16

*.db_name= rac

*.fast_start_mttr_target=300

*.hash_join_enabled=TRUE

*.job_queue_processes=2

*.large_pool_size=3145728

*.pga_aggregate_target=51200000

*.processes=100

*.remote_login_passwordfile= exclusive

*.sga_max_size=600000000

*.shared_pool_size=31457280

*.timed_statistics=TRUE

*.undo_management= AUTO

*.undo_retention=10800

*.session_cached_cursors=200

#注意以下的参数,是Cluster需要的参数

*.cluster_database = TRUE

*.cluster_database_instances = 2

raca.instance_name= raca

racb.instance_name= racb

raca.instance_number=1

racb.instance_number=2

*.service_names= rac

raca.thread=1

racb.thread=2

raca.local_listener= (address=(protocol=tcp)(host=dbrac)(port=1521))

raca.remote_listener= (address=(protocol=tcp)(host=dbrac)(port=1522))

racb.local_listener= (address=(protocol=tcp)(host=dbrac)(port=1522))

racb.remote_listener= (address=(protocol=tcp)(host=dbrac)(port=1521))

raca.undo_tablespace=UNDOTBS1

racb.undo_tablespace=UNDOTBS2



注意这里的local_listener与remote_listener,因为这里是单节点模拟RAC的参数,如果是多节点,将配置远程的名称与端口,主要用于load_balance与failover。如果是多节点,可能的形式如下。

raca.local_listener= (address=(protocol=tcp)(host=dbrac1)(port=1521))

raca.remote_listener= (address=(protocol=tcp)(host=dbrac2)(port=1521))

racb.local_listener= (address=(protocol=tcp)(host=dbrac2)(port=1521))

racb.remote_listener= (address=(protocol=tcp)(host=dbrac1)(port=1521))



以上参数文件可以放在共享设备上让多个节点实例共享,也可以在自己的节点的默认参数文件中加入指向该共巷参数文件的指针,如

ifile=/u01/oracle/ora920/dbs/init.ora

7.2 创建密码文件
如果不是单节点,每个节点都完成

$export ORACLE_SID=rac1

$ orapwd file=orapwrac1 password=piner entries=5

7.3创建数据库
在一个节点上完成即可

运行root.sh。

启动数据库到nomount下

Sqlplus /nolog

SQL>connect / as sysdba

SQL>startup nomount pfile=file name

SQL>CREATE DATABASE rac

MAXINSTANCES 3

MAXLOGHISTORY 1

MAXLOGFILES 10

MAXLOGMEMBERS 3

MAXDATAFILES 100

DATAFILE /u01/oracle/oradata/rac/system01.dbf SIZE 250M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED

EXTENT MANAGEMENT LOCAL

DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE /u01/oracle/oradata/rac/temp01.dbf SIZE 100M REUSE AUTOEXTEND ON NEXT 1024K MAXSIZE UNLIMITED

UNDO TABLESPACE "UNDOTBS1" DATAFILE /u01/oracle/oradata/rac/undotbs1_01.dbf SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED

CHARACTER SET ZHS16GBK

NATIONAL CHARACTER SET AL16UTF16

LOGFILE GROUP 1 ( /u01/oracle/oradata/rac/redo01.log ) SIZE 102400K,

GROUP 2 ( /u01/oracle/oradata/rac/redo02.log ) SIZE 102400K,

GROUP 3 ( /u01/oracle/oradata/rac/redo03.log ) SIZE 102400K;

注意以上的文件路径,可能因为不同的共享设备将有不同的路径。如果是Raw设备,请指定好文件大小,不要设置AUTOEXTEND。

7.4 创建相应的数据字典
SQL>@?/rdbms/admin/catalog

SQL>@?/rdbms/admin/catproc

创建Cluster特有的视图

SQL> @?/rdbms/admin/catclust.sql

以上操作,都在一个节点上完成。

可选如下组件

@?/rdbms/admin/catexp7.sql;

@?/rdbms/admin/catblock.sql;

@?/rdbms/admin/catoctk.sql;

@?/rdbms/admin/owminst.plb;

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