11.2.0.4 rac asm静默部署

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11.2.0.4 rac asm静默部署相关的知识,希望对你有一定的参考价值。

需要将一套单机库数据迁移到rac环境中,需要部署一套11.2.0.4 rac asm 环境,特殊环境客户现场提供的服务器没有图形,又不能在服务器上面安装软件。系统软件专人安装,只能在无图形下进行安装,远程网络还不给力,多折腾一天。

?

1、安装软件包

?? 安装:yum install? xxx? -y

  • binutils-2.20.51.0.2-5.11.el6 (x86_64)??
  • compat-libcap1-1.10-1 (x86_64)??
  • compat-libstdc++-33-3.2.3-69.el6 (x86_64)??
  • compat-libstdc++-33-3.2.3-69.el6.i686??
  • glibc-2.12-1.7.el6 (i686)??
  • glibc-2.12-1.7.el6 (x86_64)??
  • glibc-devel-2.12-1.7.el6 (x86_64)??
  • glibc-devel-2.12-1.7.el6.i686??
  • gcc-4.4.4-13.el6 (x86_64)??
  • gcc-c++-4.4.4-13.el6 (x86_64)??
  • ksh??
  • libgcc-4.4.4-13.el6 (i686)??
  • libgcc-4.4.4-13.el6 (x86_64)??
  • libstdc++-4.4.4-13.el6 (x86_64)??
  • libstdc++-4.4.4-13.el6.i686??
  • libstdc++-devel-4.4.4-13.el6 (x86_64)??
  • libstdc++-devel-4.4.4-13.el6.i686??
  • libaio-0.3.107-10.el6 (x86_64)??
  • libaio-0.3.107-10.el6.i686??
  • libaio-devel-0.3.107-10.el6 (x86_64)??
  • libaio-devel-0.3.107-10.el6.i686??
  • make-3.81-19.el6??
  • sysstat-9.0.4-11.el6 (x86_64)

验证软件是否没有安装? 特别是32bit软件是否安装上

rpm -q --qf ‘%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n‘ binutils \

compat-libstdc++-33 \

elfutils-libelf \

elfutils-libelf-devel \

gcc \

gcc-c++ \

glibc \

glibc-common \

glibc-devel \

glibc-headers \

ksh \

libaio \

libaio-devel \

libgcc \

libstdc++ \

libstdc++-devel \

make \

sysstat \

unixODBC \

unixODBC-devel

2、建立用户组

  • groupadd? oinstall?
  • groupadd dba?
  • groupadd oper
  • groupadd asmadmin
  • groupadd asmoper
  • groupadd asmdba
  • useradd -g oinstall -G dba,asmdba,oper oracle
  • useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba? grid
  • passwd oracle?
  • passwd grid

?

3、修改操作系统参数

配置 Linux 内核参数,修改/etc/sysctl.conf

  • fs.aio-max-nr = 1048576?
  • fs.file-max = 6815744?
  • kernel.shmall = 2097152?
  • kernel.shmmax = 4294967295?
  • kernel.shmmni = 4096?
  • kernel.sem = 250 32000 100 128?
  • net.ipv4.ip_local_port_range = 9000 65500?
  • net.core.rmem_default = 262144?
  • net.core.rmem_max = 4194304?
  • net.core.wmem_default = 262144?
  • net.core.wmem_max = 1048576?

/sbin/sysctl -p?? --内核参数实时生效

修改/etc/security/limits.conf

  • oracle soft nproc 2047
  • oracle hard nproc 16384
  • oracle soft nofile 1024
  • oracle hard nofile 65536
  • oracle soft stack 10240
  • grid soft nproc 2047
  • grid hard nproc 16384
  • grid soft nofile 1024
  • grid hard nofile 65536
  • grid soft stack 10240

修改内核参数,修改/etc/profile

  • if [ $USER = "oracle" ]||[ $USER = "grid" ]; then
  • ??? if [ $SHELL = "/bin/ksh" ]; then
  • ?????????? ulimit -p 16384
  • ?????????? ulimit -n 65536
  • ?? else
  • ?????????? ulimit -u 16384 -n 65536
  • ?????? fi
  • ? fi
  • fi

4、建立安装目录

  • mkdir? -p /u01/app/oracle/product/11.2.0/db_1
  • mkdir -p /u01/app/grid
  • chown -R oracle:oinstall? /u01/app/
  • chmod -R 775 /u01/app

5、设置用户环境变量

oracle

  • export ORACLE_SID= ----具体哪个节点配置对应的实例名
  • export ORACLE_BASE=/home/app/oracle
  • export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
  • export LD_LIBRARY_PATH=$ORACLE_HOME/lib
  • export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin

grid

  • export ORACLE_SID=+ASM1 ---具体哪个节点配置对应的实例名
  • export ORACLE_BASE=/home/app/oracle
  • export ORACLE_HOME=/home/11.2.0/grid
  • export GRID_HOME=/home/11.2.0/grid
  • export LD_LIBRARY_PATH=$ORACLE_HOME/lib
  • export THREADS_FLAG=native
  • export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
  • umask 022

6、配置hosts文件

hostname public ip priv ip vip scanip
rac01 172.16.18.245 172.16.28.154 172.16.18.246 172.16.18.249
rac01 172.16.18.247 172.16.28.156 172.16.18.248 172.16.18.249

?

127.0.0.1?? localhost localhost.localdomain localhost4 localhost4.localdomain4
::1???????? localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.18.245 rac01.chaoren.cn rac01
172.16.18.247 rac02.chaoren.cn rac02
172.16.28.154 rac01-priv.chaoren.cn rac01-priv
172.16.28.156 rac02-priv.chaoren.cn rac02-priv
172.16.18.246 rac01-vip.chaoren.cn? rac01-vip
172.16.18.248 rac02-vip.chaoren.cn? rac02-vip
172.16.18.249 racdb-scan.chaoren.cn racdb-scan

7、配置信任关系

  • #ssh-keygen -t rsa
    两个节点的id_dsa.pub 存放到同一个文件中
    cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

  • scp ~/.ssh/authorized_keys rac02:/home/oracle/.ssh
  • 同理配置grid用户

RAC所有节点配置时间同步

8、grid安装响应文件编写

---grid安装响应文件

[[email protected] ~]$ cat grid.rsp |grep -v ^#|tr -s ‘\n‘? #去空行和注释

oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v11_2_0
ORACLE_HOSTNAME=rac01.chaoren.cn
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
oracle.install.option=CRS_CONFIG
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/grid
oracle.install.asm.OSDBA=asmdba
oracle.install.asm.OSOPER=asmoper
oracle.install.asm.OSASM=asmadmin
oracle.install.crs.config.gpnp.scanName=racdb-scan
oracle.install.crs.config.gpnp.scanPort=1521
oracle.install.crs.config.clusterName=rac-cluster
oracle.install.crs.config.gpnp.configureGNS=false
oracle.install.crs.config.gpnp.gnsSubDomain=
oracle.install.crs.config.gpnp.gnsVIPAddress=
oracle.install.crs.config.autoConfigureClusterNodeVIP=false
oracle.install.crs.config.clusterNodes=? \n
rac01.chaoren.cn:rac01-vip.chaoren.cn,rac02.chaoren.cn:rac02-vip.chaoren.cn
oracle.install.crs.config.networkInterfaceList=eth1:172.16.18.0:1,eth2:172.16.28.0:2
oracle.install.crs.config.storageOption=ASM_STORAGE
oracle.install.crs.config.sharedFileSystemStorage.diskDriveMapping=
oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=
oracle.install.crs.config.sharedFileSystemStorage.votingDiskRedundancy=NORMAL
oracle.install.crs.config.sharedFileSystemStorage.ocrLocations=
oracle.install.crs.config.sharedFileSystemStorage.ocrRedundancy=NORMAL
??????????????????
oracle.install.crs.config.useIPMI=false
oracle.install.crs.config.ipmi.bmcUsername=
oracle.install.crs.config.ipmi.bmcPassword=
oracle.install.asm.SYSASMPassword=
oracle.install.asm.diskGroup.name=DATA
oracle.install.asm.diskGroup.redundancy=EXTERNAL
oracle.install.asm.diskGroup.AUSize=1
oracle.install.asm.diskGroup.disks=/dev/asm-diskb
oracle.install.asm.diskGroup.diskDiscoveryString=/dev/*
oracle.install.asm.monitorPassword=
oracle.install.crs.upgrade.clusterNodes=
oracle.install.asm.upgradeASM=false
oracle.installer.autoupdates.option=SKIP_UPDATES
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
PROXY_HOST=
PROXY_PORT=0
PROXY_USER=
PROXY_PWD=
PROXY_REALM=

?

?

?

9、grid安装过程

----检查环境
su - grid
[[email protected] grid]$ ./runcluvfy.sh stage -pre crsinst -n rac01,rac02 -fixup -verbose
-----执行安装
su - grid
[grid[email protected] grid]$ ./runInstaller -showProgress -ignorePrereq -silent -force -responseFile /home/grid/grid/grid_install.rsp
----安装后执行完root脚本后,需要执行configToolAllCommands

/u01/app/grid/product/11.2.0/cfgtoollogs/configToolAllCommands RESPONSE_FILE=./cfgrsp.properties

?

完成grid安装是已经建立一个asm diskgroup 用来存放OCR等文件

10、asm建立磁盘组 存放数据

  • su – grid
  • sqlplus / as sysasm
  • create diskgroup DATA3 external redundancy disk? ‘/dev/sdc3‘ ATTRIBUTE ‘compatible.asm‘=‘11.2.0.0.0‘,‘au_size‘=‘1M‘;
  • create diskgroup DATA4 external redundancy disk? ‘/dev/sdc4,dev/sdc5‘ ATTRIBUTE ‘compatible.asm‘=‘11.2.0.0.0‘,‘au_size‘=‘1M‘;
  • SQL> alter diskgroup DATA3? dismount;
  • Diskgroup altered.
  • SQL> alter diskgroup data3 mount;
  • Diskgroup altered.

?

11、Oracle软件安装

./runInstaller

-showProgress

-ignorePrereq -silent -force -responseFile /tmp/db_install.rsp

一定要添加

-showProgress 显示安装

db_install.rsp响应内容

oracle.install.responseFileVersion=/u01/app/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=pointdb1
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oracle/oraInventory
SELECTED_LANGUAGES=en
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,----篇幅1行内容保存成两行

oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=
oracle.install.db.CLUSTER_NODES=rac01,rac02
oracle.install.db.isRACOneInstall=
oracle.install.db.racOneServiceName=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=racdb
oracle.install.db.config.starterdb.SID=pointdb
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=700
oracle.install.db.config.starterdb.installExampleSchemas=true
oracle.install.db.config.starterdb.enableSecuritySettings=false
oracle.install.db.config.starterdb.password.ALL=oracle_xxxx
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=ASM_STORAGE
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=DATA2
oracle.install.db.config.asm.ASMSNMPPassword=oracle_xxxx
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=SKIP_UPDATES
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=

说明:红色部分是需要特别注意的修改的地方,密码复杂度设置高点,减少安装报错

安装完毕后,打PSU补丁,先打grid,再打database,这个根据补丁里的文档来就行了。

注意需要使用比较新的opatch

?

?

12、静默建库

完成grid? db安装后?? asm diskgroup已经手工建立好

这时候可以手工建库或者使用dbca静默建库

dbca -silent -responseFile /home/oracle/dbca.rsp

监控响应文件dbca.rsp

--单实例rsp脚本

[GENERAL]

RESPONSEFILE_VERSION = "11.2.0"

OPERATION_TYPE = "createDatabase"

[CREATEDATABASE]

GDBNAME = "prod"

SID = "prod"

TEMPLATENAME = "New_Database.dbt"

SYSPASSWORD = "oracle"

SYSTEMPASSWORD = "oracle"

SYSMANPASSWORD = "[email protected]#@sysman"

DBSNMPPASSWORD = "dbsn#4)^man"

DATAFILEDESTINATION ="+DATA2"

STORAGETYPE=FS

CHARACTERSET = "AL32UTF8"

DATABASETYPE = "MULTIPURPOSE"

AUTOMATICMEMORYMANAGEMENT = "FALSE"

TOTALMEMORY =8192

根据自己需求修改

?

?

?

问题1:

[FATAL] [INS-40907] 网格安装的主机名列表中不包括本地节点。
?? 原因: 所提供的主机名列表中缺少本地节点 (在其上运行安装程序的节点)。
?? 操作: 在网格安装的主机名列表中包含本地节点。
此会话的日志当前已保存为: /tmp/OraInstall2018-05-09_06-15-50PM/installActions2018-05-09_06-15-50PM.log。如果要保留此日志, Oracle 建议将它从临时位移动到更持久的位置。

修改hosts文件为下面格式? 原来没有chaoren.cn域名这些

[[email protected] grid]$ cat /etc/hosts
127.0.0.1?? localhost localhost.localdomain localhost4 localhost4.localdomain4
::1???????? localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.18.245 rac01.chaoren.cn rac01
172.16.18.247 rac02.chaoren.cn rac02
172.16.28.154 rac01-priv.chaoren.cn rac01-priv
172.16.28.156 rac02-priv.chaoren.cn rac02-priv
172.16.18.246 rac01-vip.chaoren.cn? rac01-vip
172.16.18.248 rac02-vip.chaoren.cn? rac02-vip
172.16.18.249 racdb-scan.chaoren.cn racdb-scan

问题2:

准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2018-05-09_06-33-22PM. 请稍候...[[email protected] grid]$ [FATAL] [INS-30508] ASM 磁盘无效。
?? 原因: 磁盘 [/dev/sdb1, /dev/sdc1, /dev/sdc2, /dev/sdc3, /dev/sdc4] 无效。
?? 操作: 请选择或输入有效的 ASM 磁盘。
ins-30508invalid asm disks

SEVERE: [FATAL] [INS-30508] Invalid ASM disks.
?? CAUSE: The disks [/dev/sdb1] were not valid.
?? ACTION: Please choose or enter valid ASM disks.

?

配置udev 绑定共享存储:

[[email protected] rules.d]#? /sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdb
36000c294d0dfcf8dd24dfb5643b7ebb9
[[email protected] rules.d]#? /sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sdc
36000c292b3b04ee86401ec94c6b93016
[[email protected] rules.d]# vim 99-fuse.rules



[[email protected] rules.d]# vim 99-orace.rules

KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB36000c294d0dfcf8dd24dfb5643b7ebb9",NAME="asm-diskb",OWNER="grid",GROUP="asmadmin",MODE="0660"
KERNEL=="sd*", BUS=="scsi",PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB36000c292b3b04ee86401ec94c6b93016",NAME="asm-diskb",OWNER="grid",GROUP="asmadmin",MODE="0660"

节点2同时操作~??????????????????????????????????????????????????????????????????????????????????????

添加了asmdisk?? /dev/asm-diskb

?

问题3:

SEVERE: [FATAL] [INS-40937] 以下主机名无效: [rac01, rac02]
?? 原因: 列出的主机名或名称无效。
?? 操作: 请确保未提供别名, 并且提供的主机名有效。

修改主机名/etc/sysconfig/network? rac01.chaoren.cn

和hosts文件保持一致

?

?

问题4

WARNING: [WARNING] [INS-30011] 输入的 SYS 口令不符合 Oracle 建议的标准。
?? 原因: Oracle 建议输入的口令应该至少长为 8 个字符, 至少包含 1 个大写字符, 1 个小写字符和 1 个数字 [0-9]。
?? 操作: 提供符合 Oracle 建议标准的口令。
WARNING: [WARNING] [INS-30011] 输入的 ASMSNMP 口令不符合 Oracle 建议的标准。
?? 原因: Oracle 建议输入的口令应该至少长为 8 个字符, 至少包含 1 个大写字符, 1 个小写字符和 1 个数字 [0-9]。
?? 操作: 提供符合 Oracle 建议标准的口令。

?

问题5:

节点2挂载失败

技术分享图片

原因节点2磁盘权限问题

[[email protected] ~]#? ls -l /dev/sdc*
brw-rw----. 1 root disk 8, 33 5月?? 9 18:58 /dev/sdc1
brw-rw----. 1 root disk 8, 34 5月?? 9 18:58 /dev/sdc2
brw-rw----. 1 root disk 8, 35 5月?? 9 18:58 /dev/sdc3
brw-rw----. 1 root disk 8, 36 5月?? 9 18:58 /dev/sdc4

[[email protected] ~]# chown grid:asmadmin /dev/sdc*

以上是关于11.2.0.4 rac asm静默部署的主要内容,如果未能解决你的问题,请参考以下文章

ORACLE RAC 11.2.0.4 CentOS release 6.9 静默安装1.0版本

oracle11.2.0.4 rac asm启动故障

1.5小时!一键部署Oracle 11GR2 RAC 集群

Goldengate 部署oracle10g在 rac asm环境,完整教程

redhat6.7环境下oracle11gR2 RAC静默安装

oracle之 RAC本地数据文件迁移至ASM