文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Solaris裸设备安装三节点RAC102(四)

Solaris裸设备安装三节点RAC102(四)

时间:2011-01-29  来源:yangtingkun

利用裸设备安装Solaris上的三节点Oracle 10.2 RAC。

这一篇主要讨论ORACLE数据库建立过程。

Solaris裸设备安装三节点RAC102(一):http://yangtingkun.itpub.net/post/468/512772

Solaris裸设备安装三节点RAC102(二):http://yangtingkun.itpub.net/post/468/512835

Solaris裸设备安装三节点RAC102(三):http://yangtingkun.itpub.net/post/468/512883


上一篇文章中已经将数据库软件安装完成,下面开始建库操作。

在建库之前,其实是打补丁的好时机。这个时候打完补丁,直接建库就可以了。而如果先建立数据库后,在打补丁的时候就需要停掉所有的数据库服务,安装补丁,然后对现有的数据库进行升级,相对要复杂一些。

为了介绍详细的补丁安装过程,这里就选择了先建立数据库。

启动Xmanager,切换到oracle用户,执行dbca:

# xhost +
access control disabled, clients can connect from any host
# su - oracle
Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001
$ dbca

进入DBCA欢迎界面。由于建立了RAC环境,欢迎界面可以选择Oracle Real Application Clusters database和Oracle single instance database。选择RAC,点击next。

进行任务选择列表,这里包括创建数据库、配置数据库选项、删除数据库、管理模板、实例管理、服务管理和配置ASM共7个选项。由于是尚未建立数据库,因此只有建立数据库、管理模板和配置ASM是目前可选的。这里由于是在裸设备上直接建立数据库,因此这里选择第一项建立数据库。

进入节点选择界面,将三个节点全部选中,点击next。

数据库模板选择,一般来说,现有的三个模板都不是很合适,因此选择Custom Database,点击next。

在Global Database Name和SID Prefix处都填入testrac。如果数据库需要添加域名,可以在全局数据库名称出后面加上“.domain_name”。点击next。

进入管理选项,这里采用默认的配置:配置Enterprise Manager。如果需要邮件通知或备份设置可以将相应的选项选中,并填入邮件地址、邮件服务器以及操作系统用户和密码等信息。点击next。

密码管理,可以为SYS、SYSTEM、DBSNMP和SYSMAN同一设置口令,也可以设置分别的口令。密码设置完成后,点击next。

进入存储选项页面:这里有三个选项,Cluster文件系统、ASM和裸设备。这里选择裸设备,如果有编辑好的裸设备映射文件,可以在这里提供给DBCA进行参考。

之所以这里说参考,是因为Oracle的裸设备映射文件还存在一些问题。比如多个数据文件,或者额外的表空间,或者像当前RAC环境的多个THREAD的REDO,都难以通过映射文件来直接映射。对于DBCA不存在bug的Solaris和Windows环境,可以考虑不使用映射文件,而直接在最后设置文件的时候直接进行修改。

前面提到了由于网卡的不同,操作系统加载裸设备时映射相同裸设备的名称并不相同。最稳妥的方法是用类似ocr和vot磁盘的方法,在每个服务器的/dev/rac目录下分别建立每个数据文件、控制文件和日志文件的链接。让不同的服务器的连接指向不同的裸设备名称,这样避免多个服务器上裸设备名称不同的问题。

在节点1上执行:

# ln -s -f /dev/rdsk/c2t3d1s1 /dev/rac/system.dbf
# ln -s -f /dev/rdsk/c2t3d1s3 /dev/rac/sysaux.dbf
# ln -s -f /dev/rdsk/c2t3d1s4 /dev/rac/undotbs1.dbf
# ln -s -f /dev/rdsk/c2t3d1s5 /dev/rac/undotbs2.dbf
# ln -s -f /dev/rdsk/c2t3d1s6 /dev/rac/undotbs3.dbf
# ln -s -f /dev/rdsk/c2t3d2s4 /dev/rac/redo1_1.log
# ln -s -f /dev/rdsk/c2t3d2s5 /dev/rac/redo1_2.log
# ln -s -f /dev/rdsk/c2t3d3s1 /dev/rac/redo2_1.log
# ln -s -f /dev/rdsk/c2t3d3s3 /dev/rac/redo2_2.log
# ln -s -f /dev/rdsk/c2t3d3s4 /dev/rac/redo3_1.log
# ln -s -f /dev/rdsk/c2t3d3s5 /dev/rac/redo3_2.log
# ln -s -f /dev/rdsk/c2t3d4s5 /dev/rac/users.dbf
# ln -s -f /dev/rdsk/c2t3d5s1 /dev/rac/control1.ctl
# ln -s -f /dev/rdsk/c2t3d5s3 /dev/rac/control2.ctl
# ln -s -f /dev/rdsk/c2t3d5s4 /dev/rac/control3.ctl
# ln -s -f /dev/rdsk/c2t3d5s5 /dev/rac/spfiletestrac.ora
# ln -s -f /dev/rdsk/c2t3d11s6 /dev/rac/temp.dbf
# chown oracle:oinstall /dev/rac/*

在节点2上执行:

# ln -s -f /dev/rdsk/c2t500601603022E66Ad1s1 /dev/rac/system.dbf
# ln -s -f /dev/rdsk/c2t500601603022E66Ad1s3 /dev/rac/sysaux.dbf
# ln -s -f /dev/rdsk/c2t500601603022E66Ad1s4 /dev/rac/undotbs1.dbf
# ln -s -f /dev/rdsk/c2t500601603022E66Ad1s5 /dev/rac/undotbs2.dbf
# ln -s -f /dev/rdsk/c2t500601603022E66Ad1s6 /dev/rac/undotbs3.dbf
# ln -s -f /dev/rdsk/c2t500601603022E66Ad2s4 /dev/rac/redo1_1.log
# ln -s -f /dev/rdsk/c2t500601603022E66Ad2s5 /dev/rac/redo1_2.log
# ln -s -f /dev/rdsk/c2t500601603022E66Ad3s1 /dev/rac/redo2_1.log
# ln -s -f /dev/rdsk/c2t500601603022E66Ad3s3 /dev/rac/redo2_2.log
# ln -s -f /dev/rdsk/c2t500601603022E66Ad3s4 /dev/rac/redo3_1.log
# ln -s -f /dev/rdsk/c2t500601603022E66Ad3s5 /dev/rac/redo3_2.log
# ln -s -f /dev/rdsk/c2t500601603022E66Ad4s5 /dev/rac/users.dbf
# ln -s -f /dev/rdsk/c2t500601603022E66Ad5s1 /dev/rac/control1.ctl
# ln -s -f /dev/rdsk/c2t500601603022E66Ad5s3 /dev/rac/control2.ctl
# ln -s -f /dev/rdsk/c2t500601603022E66Ad5s4 /dev/rac/control3.ctl
# ln -s -f /dev/rdsk/c2t500601603022E66Ad5s5 /dev/rac/spfiletestrac.ora
# ln -s -f /dev/rdsk/c2t500601603022E66Ad11s6 /dev/rac/temp.dbf
# chown oracle:oinstall /dev/rac/*

在节点3上运行:

# ln -s -f /dev/rdsk/c1t500601603022E66Ad1s1 /dev/rac/system.dbf
# ln -s -f /dev/rdsk/c1t500601603022E66Ad1s3 /dev/rac/sysaux.dbf
# ln -s -f /dev/rdsk/c1t500601603022E66Ad1s4 /dev/rac/undotbs1.dbf
# ln -s -f /dev/rdsk/c1t500601603022E66Ad1s5 /dev/rac/undotbs2.dbf
# ln -s -f /dev/rdsk/c1t500601603022E66Ad1s6 /dev/rac/undotbs3.dbf
# ln -s -f /dev/rdsk/c1t500601603022E66Ad2s4 /dev/rac/redo1_1.log
# ln -s -f /dev/rdsk/c1t500601603022E66Ad2s5 /dev/rac/redo1_2.log
# ln -s -f /dev/rdsk/c1t500601603022E66Ad3s1 /dev/rac/redo2_1.log
# ln -s -f /dev/rdsk/c1t500601603022E66Ad3s3 /dev/rac/redo2_2.log
# ln -s -f /dev/rdsk/c1t500601603022E66Ad3s4 /dev/rac/redo3_1.log
# ln -s -f /dev/rdsk/c1t500601603022E66Ad3s5 /dev/rac/redo3_2.log
# ln -s -f /dev/rdsk/c1t500601603022E66Ad4s5 /dev/rac/users.dbf
# ln -s -f /dev/rdsk/c1t500601603022E66Ad5s1 /dev/rac/control1.ctl
# ln -s -f /dev/rdsk/c1t500601603022E66Ad5s3 /dev/rac/control2.ctl
# ln -s -f /dev/rdsk/c1t500601603022E66Ad5s4 /dev/rac/control3.ctl
# ln -s -f /dev/rdsk/c1t500601603022E66Ad5s5 /dev/rac/spfiletestrac.ora
# ln -s -f /dev/rdsk/c1t500601603022E66Ad11s6 /dev/rac/temp.dbf
# chown oracle:oinstall /dev/rac/*

恢复配置界面,由于选择裸设备,则Flash Recovery Area就没有办法设置,除非为了闪回设置单独的ASM实例并加载磁盘组。至于 Archiving为了建立数据库更加快速可以先置为非归档状态,在安装结束后,在各个实例上设置本地磁盘路径进行归档。

选择数据库安装组件,默认的就是选中所有可用的组件。这里可以去掉认为不需要的组件。也可以配置自己的脚本,使得建库完成后,Oracle自动调用。配置完成后,点击next。

数据库服务页面,这里不需要创建额外的服务,因此这里直接点击NEXT进行下面的操作。数据库建立以后也可以通过DBCA来单独设置服务。

下面是数据库内存、初始化参数、连接模式、字符集、数据库块的设置。这个就需要根据机器的配置进行相应的设置了。其他的设置无所谓,在建立数据库之后还可以修改,但是数据库块的大小和字符集应该正确的进行设置。

在启动参数的地方设置使用SPFILE参数,参数的名称输入前面建立的链接:/dev/rac/spfiletestrac.ora。设置完成后,点击NEXT继续。

下面是数据库存储设置,根据前面建立的链接,输入SYSTEM、SYSAUX、TEMP、USERS、UNDOTBS1、UNDOTBS2和UNDOTBS3表空间所对应的数据文件的名称,并根据裸设备的大小设置这些数据文件的大小。输入三个控制文件对应的路径/dev/rac和文件名称。输入3个实例对应的归档日志的文件名称和路径,根据裸设备分配的大小设置归档日志文件的大小。全部设置完成后,点击next。

无论是日志文件还是数据文件,记得设置的大小要比裸设备的实际大小减少1M,否则在监控的时候可能会出现ORA-27042错误。

需要注意一下,很多版本的dbca在这一步的时候有bug,修改数据文件的位置或大小后,原有的配置没有改变,但是会出现一条新的配置。这就会造成最后建立数据库的过程出错。如果出现这种情况,可以将配置输出到建库脚本,然后手工修改建库脚本,最后通过脚本执行。

最后是创建选项,可以选择创建数据库、创建脚本和创建模板。一般情况会将三个选择全部选中,然后点击Finish。

Oracle会弹出汇总对话框,确认后点击ok,安装开始。

注意,有的时候一些参数填错之后不好修改,设置有的时候建库失败的时候才会发现。这个时候没有关系,只需要后退到相应的配置目录进行修改就可以了。其他的参数如果没有变化不需要进行修改。

安装完毕,出现密码管理界面,点击exit。

这时Oracle会进行一些CLUSTER级的工作,包括重启整个数据库,设置其他的实例,并启动数据库的所有实例。

利用sqlplus进行登陆并检查:

$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 5月 10 19:31:30 2010

Copyright (c) 1982, 2005, Oracle. All rights reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options

SQL> select name from v$database;

NAME
---------
TESTRAC

SQL> col host_name format a30
SQL> select instance_number, instance_name, host_name, status
2 from v$instance;

INSTANCE_NUMBER INSTANCE_NAME HOST_NAME STATUS
--------------- ---------------- ------------------------------ ------------
1 testrac1 racnode1 OPEN

SQL> select instance_number, instance_name, host_name, status
2 from gv$instance;

INSTANCE_NUMBER INSTANCE_NAME HOST_NAME STATUS
--------------- ---------------- ------------------------------ ------------
1 testrac1 racnode1 OPEN
3 testrac3 racnode3 OPEN
2 testrac2 racnode2 OPEN

至此,建库工作结束。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载