Linux下Oracle 11.2.0.1 RAC如何安装
这篇文章主要为大家展示了“Linux下Oracle 11.2.0.1 RAC如何安装”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下Oracle 11.2.0.1 RAC如何安装”这篇文章吧。
操作系统是OracleEnterprise Linux 5,两个节点 rac1和rac2,网卡eth0作为public,eth2作为private,假设之前已添加一块20G容量的共享磁盘。
关于Oracle Enterprise Linux 下载,可以在https://edelivery.oracle.com/osdc/faces/Home.jspx登陆后下载。
主机配置
所有命令在root用户下执行。
配置共享存储。共享存储可视为/dev/sdb设备。将使用fdisk命令创建两个10G大小的两个分区。 两个新的分区将用于ASM。
--listdevicesls/dev/sd*/dev/sda/dev/sda1/dev/sda2/dev/sdb
--addtwopartitionsfdisk/dev/sdbThenumberofcylindersforthisdiskissetto2610.Thereisnothingwrongwiththat,butthisislargerthan1024,andcouldincertainsetupscauseproblemswith:1)softwarethatrunsatboottime(e.g.,oldversionsofLILO)2)bootingandpartitioningsoftwarefromotherOSs(e.g.,DOSFDISK,OS/2FDISK)Command(mforhelp):nCommandactioneextendedpprimarypartition(1-4)pPartitionnumber(1-4):1Firstcylinder(1-2610,default1):Usingdefaultvalue1Lastcylinderor+sizeor+sizeMor+sizeK(1-2610,default2610):+10240MCommand(mforhelp):nCommandactioneextendedpprimarypartition(1-4)pPartitionnumber(1-4):2Firstcylinder(1247-2610,default1247):Usingdefaultvalue1247Lastcylinderor+sizeor+sizeMor+sizeK(1247-2610,default2610):Usingdefaultvalue2610Command(mforhelp):wThepartitiontablehasbeenaltered!Callingioctl()tore-readpartitiontable.Syncingdisks.
--listnewpartitionsfdisk-l/dev/sdbDisk/dev/sdb:21.4GB,21474836480bytes255heads,63sectors/track,2610cylindersUnits=cylindersof16065*512=8225280bytesDeviceBootStartEndBlocksIdSystem/dev/sdb11124610008463+83Linux/dev/sdb2124726101095633083Linux
添加组
--requiredgroups/usr/sbin/groupadd-g501oinstall/usr/sbin/groupadd-g502dba/usr/sbin/groupadd-g503oper
添加Oracle用户
/usr/sbin/useradd-u502-goinstall-Gdbaoracle
修改Oracle用户密码
passwdoracle
在 /etc/sysctl.conf下添加内核参数
#kernelparametersfor11ginstallationkernel.shmmni=4096kernel.shmmax=4398046511104kernel.shmall=1073741824kernel.sem=25032000100128fs.aio-max-nr=1048576fs.file-max=6815744net.ipv4.ip_local_port_range=900065500net.core.rmem_default=262144net.core.rmem_max=4194304net.core.wmem_default=262144net.core.wmem_max=1048586
应用内核参数
/sbin/sysctl-p
为用户Oracle在/etc/security/limits.conf文件中添加以下行以设置shell限制
--shelllimitsforusersoracle11gR2oraclesoftnproc131072oraclehardnproc131072oraclesoftnofile131072oraclehardnofile131072oraclesoftcoreunlimitedoraclehardcoreunlimitedoraclesoftmemlock50000000oraclehardmemlock50000000
“/ etc / hosts”文件必须包含服务器的完全限定名称。
<IP-address><fully-qualified-machine-name><machine-name>
“/ etc / hosts”下输入以下数据
127.0.0.1localhost.localdomainlocalhost#public192.168.0.50rac1.dbaora.comrac1192.168.0.51rac2.dbaora.comrac2#private192.168.1.60rac1-priv.dbaora.comrac1-priv192.168.1.61rac2-priv.dbaora.comrac2-priv#virtual192.168.0.70rac1-vip.dbaora.comrac1-vip192.168.0.71rac2-vip.dbaora.comrac2-vip#scan192.168.0.20rac-scan.dbaora.comrac-scan
验证rac1.dbaora.com上的th0和eth2的网络响应
[root@rac1~]#pingrac1-c1PINGrac1.dbaora.com(192.168.0.50)56(84)bytesofdata.64bytesfromrac1.dbaora.com(192.168.0.50):icmp_seq=1ttl=64time=0.032ms---rac1.dbaora.compingstatistics---1packetstransmitted,1received,0%packetloss,time0msrttmin/avg/max/mdev=0.032/0.032/0.032/0.000ms[root@rac1~]#pingrac1-priv-c1PINGrac1-priv.dbaora.com(192.168.1.60)56(84)bytesofdata.64bytesfromrac1-priv.dbaora.com(192.168.1.60):icmp_seq=1ttl=64time=0.036ms---rac1-priv.dbaora.compingstatistics---1packetstransmitted,1received,0%packetloss,time0msrttmin/avg/max/mdev=0.036/0.036/0.036/0.000ms
检查哪些软件包已安装,哪些软件包缺失
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
安装缺失的包。 这只是一个例子:
#directorywithmountedOracleEnterpriseLinux5installdiskcd<pathwithOracleEnterpriseLinux5>/Server/Packages#installmissedpackages(exampleforpackageunixODBC*)rpm-UvhunixODBC*
禁用SecureLinux
要禁用SecureLinux编辑“/etc/selinux/config”文件,确保SELINUX设置如下,它需要重启才能有效。
SELINUX=disabled
禁用Firewall
可以在图形模式下或手动禁用防火墙。
执行下面的命令手动禁用
serviceiptablesstopchkconfigiptablesoff
更改NTP
需要禁用NTP(Network Time Protocol)或修改其设置,以便Oracle Cluster Time Synchronization Service(ctssd)可以同步RAC节点的时间。
选项1 - 禁用NTP
servicentpdstopShuttingdownntpd:[OK]chkconfigntpdoffmv/etc/ntp.conf/etc/ntp.conf.origrm/var/run/ntpd.pid
选项2 - 更改NTP
如果要保留NTP,请在“/etc/sysconfig/ntpd”文件中添加“-x”选项。
OPTIONS="-x-untp:ntp-p/var/run/ntpd.pid"
并重新启动NTP
#servicentpdrestart
在操作系统安装过程中,可以禁用 SElinux、Firewall,不启动NTP,这样在主机配置中可省略。
目录
创建ORACLE_BASE
mkdir-p/ora01/app/oracle
为grid和database软件创建ORACLE_HOME
mkdir-p/ora01/app/oracle/product/11.2.0/db_1mkdir-p/ora01/app/grid/product/11.2.0/gridchownoracle:oinstall-R/ora01chmod775/ora01/app/oracle
Oracle用户新的配置文件
修改Oracle配置文件/home/oracle/.bash_profile
#.bash_profile#Getthealiasesandfunctionsif[-f~/.bashrc];then.~/.bashrcfi#UserspecificenvironmentandstartupprogramsPATH=$PATH:$HOME/binexportPATHaliasgenv='./home/oracle/.bash_profile_grid;envo'aliasdenv='./home/oracle/.bash_profile_database;envo'./home/oracle/.bash_profile_databaseenvo
这里添加了两个别名:genv和denv,这样可以方便地切换grid和database软件环境。
为Oracle用户添加新的配置文件/home/oracle/.bash_profile_grid。此配置文件将用于grid软件。
#OracleSettingsexportTMP=/tmpexportORACLE_HOSTNAME=rac1.dbaora.comexportORACLE_UNQNAME=+ASMexportORACLE_BASE=/ora01/app/oracleexportORACLE_HOME=/ora01/app/grid/product/11.2.0/gridexportORACLE_SID=+ASM1PATH=/usr/sbin:$PATH:$ORACLE_HOME/binexportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;exportCLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;aliascdob='cd$ORACLE_BASE'aliascdoh='cd$ORACLE_HOME'aliastns='cd$ORACLE_HOME/network/admin'aliasenvo='env|grepORACLE'
为Oracle用户添加新的参数文件/home/oracle/.bash_profile_database.此配置文件将用于database软件。
#OracleSettingsexportTMP=/tmpexportORACLE_HOSTNAME=rac1.dbaora.comexportORACLE_UNQNAME=ORA11GexportORACLE_BASE=/ora01/app/oracleexportORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1exportORACLE_SID=ORA11G1PATH=/usr/sbin:$PATH:$ORACLE_HOME/binexportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;exportCLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;aliascdob='cd$ORACLE_BASE'aliascdoh='cd$ORACLE_HOME'aliastns='cd$ORACLE_HOME/network/admin'aliasenvo='env|grepORACLE'umask022
在rac2中,将两个参数文件的ORACLE_HOSTNAME和ORACLE_SID更改为本服务器的参数值。
记住修改所有配置文件的所有者
chownoracle:oinstall/home/oracle/.bash*chmod750oracle:oinstall/home/oracle/.bash*
作为oracle用户解压database和grid软件。 创建2个目录:
database – database software
grid – grid software
切换到grid软件环境,以root用户身份安装软件包cvuqdisk-1.0.9-1.rpm
cd<installgridsoftware>/rpm[root@rac1rpm]#rpm-Uvhcvuqdisk-1.0.9-1.rpmPreparing...##############################[100%]Usingdefaultgroupoinstalltoinstallpackage1:cvuqdisk##############################[100%]
配置ASM设备
要配置ASMlib,首先需要从OTN下载ASMLib rpms。 如果使用的是UEK内核,则所有必需的rpms都已安装。
oracleasm-support-2.1.8-1.el5.i386.rpm
oracleasmlib-2.0.4-1.el5.i386.rpm
oracleasm-[your-kernel-version].rpm
关于oracleasm-supper和orcleasmlib软件包版本,可以根据操作系统版本从http://www.oracle.com/technetwork/server-storage/linux/asmlib/index-101839.html下载软件包。
而oracleasm软件包要根据操作系统内核参数来决定:
name-a
这里是Oracle通过配置YUM来安装oracleasm软件包的链接:
http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html
使用以下命令安装软件包
rpm-Uvhoracleasm*.rpm
安装完成后可以通过rpm -qa | grep oracleasm命令验证。
配置SMlib
[root@rac1~]#/usr/sbin/oracleasmconfigure-iConfiguringtheOracleASMlibrarydriver.Thiswillconfiguretheon-bootpropertiesoftheOracleASMlibrarydriver.Thefollowingquestionswilldeterminewhetherthedriverisloadedonbootandwhatpermissionsitwillhave.Thecurrentvalueswillbeshowninbrackets('[]').Hitting<ENTER>withouttypingananswerwillkeepthatcurrentvalue.Ctrl-Cwillabort.Defaultusertoownthedriverinterface[]:oracleDefaultgrouptoownthedriverinterface[]:dbaStartOracleASMlibrarydriveronboot(y/n)[n]:yScanforOracleASMdisksonboot(y/n)[y]:WritingOracleASMlibrarydriverconfiguration:done
加载asm内核模块
[root@rac1~]#/usr/sbin/oracleasminitLoadingmodule"oracleasm":oracleasmMountingASMlibdriverfilesystem:/dev/oracleasm
添加ASM磁盘
[root@rac1~]#/usr/sbin/oracleasmcreatediskDISK1/dev/sdb1Writingdiskheader:doneInstantiatingdisk:done[root@rac1~]#/usr/sbin/oracleasmcreatediskDISK2/dev/sdb2Writingdiskheader:doneInstantiatingdisk:done
扫描ASM磁盘
[root@rac1~]#/usr/sbin/oracleasmscandisksReloadingdiskpartitions:doneCleaninganystaleASMdisks...ScanningsystemforASMdisks...
列出ASM磁盘
[root@rac1~]#/usr/sbin/oracleasmlistdisksDISK1DISK2
这里是使用oracleasm配置ASM磁盘,也可以同过udev来配置,在使用oracleasm时遇到一些bug,推荐使用udev。
现在在每个节点上运行下面命令验证网络:rac1.dbaora.com和rac2.dbaora.com
hostnamepingrac1-c1pingrac2-c1pingrac1-priv-c1pingrac2-priv-c1
安装grid软件
以用户oracle启动grid软件安装,在此之前以root身份运行命令xhost +。
xhost+accesscontroldisabled,clientscanconnectfromanyhost
设置grid环境并运行grid安装软件
su-oracle[oracle@rac1~]$genvORACLE_UNQNAME=+ASMORACLE_SID=+ASM1ORACLE_BASE=/ora01/app/oracleORACLE_HOSTNAME=rac1.dbaora.comORACLE_HOME=/ora01/app/grid/product/11.2.0/grid--runinstallationcd<installgridsoftware>./runInstall
关于安装过程,可以根据实际需要选择,这里省略。
这里如果是使用linux 6以上版本,在最后执行root.sh脚本时,会用一个BUG,具体解决方法如下
1.删除配置:
/ora01/app/grid/product/11.2.0/gridl/roothas.pl-deconfig-force-verbose
路径是grid环境的ORACLE_HOME。
出现Adding daemon to inittab这条信息的时候执行dd命令
/bin/ddif=/var/tmp/.oracle/npohasdof=/dev/nullbs=1024count=1
如果是安装11.2.0.1的话,还是建议 使用 linux 5的版本。
ASM configuration assistant
到目前为止,只创建了一个ASM组DATA。下面展示如何快速添加额外的组到ASM实例。
在以Oracle用户启动ASMCA之前, 切换到root用户执行xhost +命令。
ASMCA - ASM configuration assistant是grid软件的一部分,因此必须设置正确的环境
su-oracle[oracle@rac1~]$genvORACLE_UNQNAME=+ASMORACLE_SID=+ASM1ORACLE_BASE=/ora01/app/oracleORACLE_HOSTNAME=rac1.dbaora.comORACLE_HOME=/ora01/app/grid/product/11.2.0/grid[oracle@rac1~]$asmca
根据需要一步步执行就可以了,安装步骤省略。
在你可以在sqlplus中验证你有2个ASM组。
[oracle@rac1~]$sqlplusSQL*Plus:Release11.2.0.3.0ProductiononSunJun1622:39:112013Copyright(c)1982,2011,Oracle.Allrightsreserved.Enteruser-name:/assysasmConnectedto:OracleDatabase11gEnterpriseEditionRelease11.2.0.3.0-64bitProductionWiththeAutomaticStorageManagementoptionSQL>selectnamefromv$asm_diskgroup;NAME------------------------------DATABACKUP
安装Database软件
作为Oracle用户开始database软件安装。设置database软件爱你环境
su-oracle[oracle@rac1~]$denvORACLE_UNQNAME=ORA11GORACLE_SID=ORA11G1ORACLE_BASE=/ora01/app/oracleORACLE_HOSTNAME=rac1.dbaora.comORACLE_HOME=/ora01/app/oracle/product/11.2.0/db_1--runinstallationcd<installdatabasesoftware>./runInstall
安装步骤省略。
在安装过程中,遇到一个有关监听器的问题,提示
default listener is not configured in grid infrastructure home
解决方法链接http://www.linuxidc.com/Linux/2017-08/146057.htm
验证RAC安装
[root@rac1~]#su-oracle[oracle@rac1~]$genvORACLE_UNQNAME=+ASMORACLE_SID=+ASM1ORACLE_BASE=/ora01/app/oracleORACLE_HOSTNAME=rac1.dbaora.comORACLE_HOME=/ora01/app/grid/product/11.2.0/grid[oracle@rac1~]$srvctlconfigdatabase-dORA11GDatabaseuniquename:ORA11GDatabasename:ORA11GOraclehome:/ora01/app/oracle/product/11.2.0/db_1Oracleuser:oracleSpfile:+DATA/ORA11G/spfileORA11G.oraDomain:dbaora.comStartoptions:openStopoptions:immediateDatabaserole:PRIMARYManagementpolicy:AUTOMATICServerpools:ORA11GDatabaseinstances:ORA11G1,ORA11G2DiskGroups:DATAMountpointpaths:Services:Type:RACDatabaseisadministratormanaged[oracle@rac1~]$srvctlstatuslistenerListenerLISTENERisenabledListenerLISTENERisrunningonnode(s):rac2,rac1[oracle@rac1~]$srvctlstatusasmASMisrunningonrac2,rac1[oracle@rac1~]$srvctlstatusdatabase-dORA11GInstanceORA11G1isrunningonnoderac1InstanceORA11G2isrunningonnoderac2
以上是“Linux下Oracle 11.2.0.1 RAC如何安装”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。