注意,创建磁盘组时需要以oracle用户身份执行,在那之前可能需要以root身份执行xhost+,即命令:
代码1
[root@sgdb1~]# xhost+ [root@sgdb1~]# su - oracle |
- 执行dbca
代码2
[oracle@sgdb1 ~]$ dbca |
图1 执行dbca
- 选择实例属性
选择【Oracle Real Application Clusters(RAC)database】
点击【Next】
图2 选择实例属性
- 选择创建数据库
选择【Create a Database】
图55 选择创建数据库
- 选择实例用途
选择【Custom Database】,点击【Next】
图56 选择实例用途
- 实例SID
(1)在配置方式中,选择【Admin-Managed】;
(2)在实例前缀名中,填写sgdb;
那么运行时在两台服务器上,实例SID就将分别为sgdb1与sgdb2(注意这和主机名无关,为ORACLE_SID名);
(3)点击【Select All】把两个node(sgdb1&&sgdb2)全部选上。
点击【Next】
图57 实例SID
- 实例选项
不要勾选【Configure Enterprise Manager】
图58 实例选项(EM)
图59 实例选项(AMT)
- 实例管理用户密码
设置实例管理用户SYS的密码
图60 管理用户密码
- 实例数据存储
以ASM方式,点击【Browse】
图61 选择存储路径
如果查不到磁盘,可以手动输入+DATA,尝试下一步,会报出错误:比如: ORA-12547: TNS:lost contact 原因在$ORACLE_HOME/bin/oracle文件的权限和属主问题: oracle和grid用户下$ORACLE_HOME/bin/oracle的权限应为"-rwsr-s--x"(即751)于oinstall组,如果发现用户出现权限不对的情况,比如grid用户,应当如下方式修改之: [grid@sgdb1 ~]$ chmod 6571 $ORACLE_HOME/bin/oracle [grid@sgdb1 ~]$ chown grid:oinstall $ORACLE_HOME/bin/oracle |
- 快速恢复
(1)取消【Specify Fast Recovery Area】
(2)是否选择【Enable Aachiving】归档是否选择以实际系统为准
图62 取消快速恢复
- 选择实例组件
取消所有选项(以实际要求为准,本例只做通用配置,仅作参考)
图63 选择实例组件1
再点击右下角【Standard Database Components】,取消勾选所有组件
图64 选择实例组件2
- 实例初始化参数
(1)内存管理,建议选择ASMM方式:
勾选【CUSTOM】:分别设置SGA&PGA,根据内存需求:
(以实际要求为准,本例仅作参考)
图65 内存管理(以实际系统为准)
(2)连接数管理,调整到800(以实际要求为准,本例仅作参考)
图66 块大小、连接数设置
(3)字符集管理(以实际要求为准,本例仅作参考)
图67 选择安装语言与字符集(以实际系统要求为准)
(4)连接模式管理
图68 专用服务器模式(默认)
确认以上无误后,点击【Next】
- 添加REDO LOG
添加REDO LOG组,并调整REDO LOG MEMBER大小,8个组;
注意:Thread1表示实例1,Thread2表示实例2;
按照需求,可以酌情每个LOG MEMBER都改为512M(如果是分析系统,或者重要交易系统,可酌情改为1G或2G)
图69 REDO LOG
确认无误后,点击【Next】
- 调整UNDO和TEMP
(1)Undo1、Undo2、TEMP表空间都设定文件大小为20G(20480M),取消自动扩展(以实际系统需求为准,某些系统要求大的空间可以再追加数据文件);
(2)USERS表空间取消自动扩展;
(3)SYSTEM、SYSAUX表空间不做操作(以实际系统需求为准);
图70 数据文件
- 创建实例
点击【Finish】,完成实例属性设置
图71 完成实例属性设置
点击【OK】,开始创建
图72 创建实例
- 安装过程
图73 安装流程
- 安装完成
如果显示如下结果,则表明安装完毕,点击【Exit】,至此RAC安装完成
图74 安装完成
- 安装完成后检查状态
代码38
# 检测CRS状态 [root@sgdb1 ~]# su - grid [grid@sgdb1 ~]$ crsctl status res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.BJ_SGDB_DATA.dg ONLINE ONLINE sgdb1 ONLINE ONLINE sgdb2 ora.BJ_SGDB_OCR.dg ONLINE ONLINE sgdb1 ONLINE ONLINE sgdb2 ora.LISTENER.lsnr ONLINE ONLINE sgdb1 ONLINE ONLINE sgdb2 ora.asm ONLINE ONLINE sgdb1 Started ONLINE ONLINE sgdb2 Started ora.gsd OFFLINE OFFLINE sgdb1 OFFLINE OFFLINE sgdb2 ora.net1.network ONLINE ONLINE sgdb1 ONLINE ONLINE sgdb2 ora.ons ONLINE ONLINE sgdb1 ONLINE ONLINE sgdb2 ora.registry.acfs ONLINE ONLINE sgdb1 ONLINE ONLINE sgdb2 -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE sgdb1 ora.cvu 1 ONLINE ONLINE sgdb1 ora.oc4j 1 ONLINE ONLINE sgdb1 ora.scan1.vip 1 ONLINE ONLINE sgdb1 ora.sgdb.db 1 ONLINE ONLINE sgdb1 Open 2 ONLINE ONLINE sgdb2 Open ora.sgdb1.vip 1 ONLINE ONLINE sgdb1 ora.sgdb2.vip 1 ONLINE ONLINE sgdb2 如果:
则表示RAC正常运行
|
1.ORA-27102:out of memory
2.DBCA最后一步38%处卡住
3.you do not have enough free disk space to create the database.you need at lease 34108MB on Disk Group BJ_SGDB_DATA,you have only 18515MB available.
1.ORA-27102:out of memory
解决过程:
back到前1步,SGA、PGA的分配原则
OLTP:SGA=系统内存*0.56,PGA=SGA*(0.1~0.2)
OLAP:SGA=系统内存*0.48,PGA=SGA*(0.45~0.65)
8G的话SGA设置4G就差不多了...PGA设置为1G差不多了
2.DBCA最后一步38%处卡住
解决过程:
内存太小卡住了,关闭虚拟机,把内存设置为4G,然后重新执行dbc,报错如下:
出现这个的原因很简单,就是rac 这个数据库的信息没有彻底的从OCR中清除干净。下面我们来清除这些信息。
[oracle@rac1 bin]$ srvctl config -- 这个命令用来显示保存在SRVM配置文件中的配置信息
sgdb
[oracle@rac1 bin]$ srvctl remove database -d rac -- 删除这个数据库
Remove the database rac? (y/[n]) y
[oracle@rac1 bin]$ srvctl config -- 再次查看,还存在,很奇怪
sgdb
[oracle@rac1 bin]$ srvctl remove database -d rac –f -- 加上-f 参数,强制删除
[oracle@rac1 bin]$ srvctl config -- 查看,正常,信息已经被删除掉
3.you do not have enough free disk space to create the database.you need at lease 34108MB on Disk Group BJ_SGDB_DATA,you have only 18515MB available.
解决过程:
空间不足,back到前一步,减小表空间的大小,再次执行ok