查看: 233|回复: 0

[Oracle数据库] RHEL7.3 安装oracle12C R2 RAC

发表于 7 天前
太阳http代理AD
##安装桌面 ##安装桌面 yum -y groupinstall "Server with GUI" #启动桌面 startx
#设置启动模式 [root@rhel7-ora12c-ip21 ~]# systemctl get-default multi-user.target [root@rhel7-ora12c-ip21 ~]# cat /etc/inittab # inittab is no longer used when using systemd. # # ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM. # # Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target # # systemd uses 'targets' instead of runlevels. By default, there are two main targets: # # multi-user.target: analogous to runlevel 3 #多用户模式 # graphical.target: analogous to runlevel 5 #图形化模式 # # To view current default target, run: # systemctl get-default # # To set a default target, run: # systemctl set-default TARGET.target # [root@rhel7-ora12c-ip21 ~]# systemctl set-default graphical.target Removed symlink /etc/systemd/system/default.target. Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target. [root@localhost ~]# systemctl get-default graphical.target
##创建用户和组 groupadd -g 500 oinstall groupadd -g 501 dba groupadd -g 502 oper groupadd -g 600 asmadmin groupadd -g 601 asmdba groupadd -g 602 asmoper useradd -u 1000 -g oinstall -G dba,oper,asmdba oracle useradd -u 1001 -g oinstall -G dba,asmdba,asmadmin,asmoper grid
##packages for linux 7 rpm -qa | grep binutils-2.23.52.0.1-12.el7.x86_64 rpm -qa | grep compat-libcap1-1.10-3.el7.x86_64 rpm -qa | grep compat-libstdc++-33-3.2.3-71.el7.i686 rpm -qa | grep compat-libstdc++-33-3.2.3-71.el7.x86_64 rpm -qa | grep gcc-4.8.2-3.el7.x86_64 rpm -qa | grep gcc-c++-4.8.2-3.el7.x86_64 rpm -qa | grep glibc-2.17-36.el7.i686 rpm -qa | grep glibc-2.17-36.el7.x86_64 rpm -qa | grep glibc-devel-2.17-36.el7.i686 rpm -qa | grep glibc-devel-2.17-36.el7.x86_64 rpm -qa | grep ksh rpm -qa | grep libaio-0.3.109-9.el7.i686 rpm -qa | grep libaio-0.3.109-9.el7.x86_64 rpm -qa | grep libaio-devel-0.3.109-9.el7.i686 rpm -qa | grep libaio-devel-0.3.109-9.el7.x86_64 rpm -qa | grep libgcc-4.8.2-3.el7.i686 rpm -qa | grep libgcc-4.8.2-3.el7.x86_64 rpm -qa | grep libstdc++-4.8.2-3.el7.i686 rpm -qa | grep libstdc++-4.8.2-3.el7.x86_64 rpm -qa | grep libstdc++-devel-4.8.2-3.el7.i686 rpm -qa | grep libstdc++-devel-4.8.2-3.el7.x86_64 rpm -qa | grep libXi-1.7.2-1.el7.i686 rpm -qa | grep libXi-1.7.2-1.el7.x86_64 rpm -qa | grep libXtst-1.2.2-1.el7.i686 rpm -qa | grep libXtst-1.2.2-1.el7.x86_64 rpm -qa | grep make-3.82-19.el7.x86_64 rpm -qa | grep sysstat-10.1.5-1.el7.x86_64
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio-*.i686 libaio-devel libaio-devel*.i686 libgcc libgcc*.i686 libstdc++ libstdc++-*.i686 libstdc++-devel libstdc++devel*.i686 libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC-devel unixODBC*.i686 yum -y localinstall compat-libstdc++-33-3.2.3-72.el7.* #单独下载
##vi /etc/sysctl.conf fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 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

##官方文档对shmmax的设置解释,(文档 ID 567506.1),我一般直接使用当前设置/sbin/sysctl -a | grep shm #Oracle Global Customer Support officially recommends a " maximum" for SHMMAX of "1/2 of physical RAM". #The maximum size of a shared memory segment is limited by the size of the available user address space. On 64-bit systems, this is a theoretical 2^64bytes. So the "theoretical limit" for SHMMAX is the amount of physical RAM that you have. However, to actually attempt to use such a value could potentially lead to a situation where no system memory is available for anything else. Therefore a more realistic "physical limit" for SHMMAX would probably be "physical RAM - 2Gb". #In an Oracle RDBMS application, this "physical limit" still leaves inadequate system memory for other necessary functions. Therefore, the common "Oracle maximum" for SHMMAX that you will often see is "1/2 of physical RAM". Many Oracle customers chose a higher fraction, at their discretion. #Occasionally, Customers may erroneously think that that setting the SHMMAX as recommended in this NOTE limits the total SGA. That is not true. Setting the SHMMAX as recommended only causes a few more "shared memory segments" to be used for whatever total SGA that you subsequently configure in Oracle. For additional detail, please see
## vi /etc/security/limits.conf oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 oracle hard stack 10240 grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 grid soft stack 10240 grid hard stack 10240
##创建安装目录 mkdir -p /u01/app/grid mkdir -p /u01/app/gridhome mkdir -p /u01/app/oracle chown grid:oinstall /u01/app/grid chown grid:oinstall /u01/app/gridhome chown -R oracle:oinstall /u01/app/oracle

##修改hosts文件 ip add | grep enp0s8 | grep inet | awk '{print $2}' | awk -F"/" '{printf $1" "}{cmd="hostname";system(cmd)}' >> /etc/hosts cat /etc/hosts

##关闭防火墙和selinux [root@rhel7-ora12c-ip21 ~]# systemctl stop firewalld [root@rhel7-ora12c-ip21 ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@rhel7-ora12c-ip21 ~]# getenforce Enforcing [root@rhel7-ora12c-ip21 ~]# setenforce 0 [root@rhel7-ora12c-ip21 ~]# getenforce Permissive [root@rhel7-ora12c-ip21 ~]# vi /etc/selinux/config SELINUX=disabled 或 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

##udev绑定裸设备,这里只绑定权限
[root@rhel7-ora12c-ip21 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdb1 1ATA_VBOX_HARDDISK_VBc9bd6bdf-a347ac26 [root@rhel7-ora12c-ip21 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdc1 1ATA_VBOX_HARDDISK_VB8aeda10c-71ca412a [root@rhel7-ora12c-ip21 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VBc9bd6bdf-a347ac26", OWNER="grid", GROUP="asmadmin", MODE="0660" KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB8aeda10c-71ca412a", OWNER="grid", GROUP="asmadmin", MODE="0660" [root@rhel7-ora12c-ip21 ~]# systemctl restart systemd-udev-trigger.service [root@rhel7-ora12c-ip21 ~]# ls -Ll /dev/sd?1
##节点二使用partprobe去发现分区
##设置用户参数文件 su - grid export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=/u01/app/gridhome export ORACLE_SID=+ASM1 PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/bin export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=/u01/app/gridhome export ORACLE_SID=+ASM2 PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/bin export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
su - oracle ORACLE_BASE=/u01/app/oracle ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1 ORACLE_SID=orcl2 export ORACLE_BASE ORACLE_HOME ORACLE_SID export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin:/usr/bin:/sbin export LD_LIBRARY_PATH=$ORACLE_HOME/lib
ORACLE_BASE=/u01/app/oracle ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1 ORACLE_SID=orcl2 export ORACLE_BASE ORACLE_HOME ORACLE_SID export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin:/usr/bin:/sbin export LD_LIBRARY_PATH=$ORACLE_HOME/lib
##建立互信关系 oracle: cd /home/oracle mkdir ~/.ssh chmod 700 ~/.ssh ssh-keygen -t rsa ssh-keygen -t dsa
cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys ssh rhel7-ora12c-ip22 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys ssh rhel7-ora12c-ip22 cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
scp ~/.ssh/authorized_keys rhel7-ora12c-ip22:~/.ssh/authorized_keys
ssh rhel7-ora12c-ip21 date;ssh rhel7-ora12c-ip22 date;ssh rhel7-ora12c-ip21-priv date;ssh rhel7-ora12c-ip22-priv date
grid: cd /home/grid mkdir ~/.ssh chmod 700 ~/.ssh ssh-keygen -t rsa ssh-keygen -t dsa
cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys ssh rhel7-ora12c-ip22 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys ssh rhel7-ora12c-ip22 cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
scp ~/.ssh/authorized_keys rhel7-ora12c-ip22:~/.ssh/authorized_keys
ssh rhel7-ora12c-ip21 date;ssh rhel7-ora12c-ip22 date;ssh rhel7-ora12c-ip21-priv date;ssh rhel7-ora12c-ip22-priv date
##安装cvuqdisk [root@rhel7-ora12c-ip21 gridhome]# rpm -ivh ./cv/rpm/cvuqdisk-1.0.10-1.rpm
##编辑ohas文件,在执行root.sh脚本以后一直监控/etc/init.d/init.ohasd文件,文件存在马上启动ohas服务 [root@rhel7-ora12c-ip21 ~]# vi /usr/lib/systemd/system/ohas.service
[Unit] Description=Oracle High Availability Services After=syslog.target
[Service] ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple Restart=always
[Install] WantedBy=multi-user.target


[root@rhel7-ora12c-ip21 ~]# chmod 777 /usr/lib/systemd/system/ohas.service
systemctl daemon-reload systemctl enable ohas.service systemctl start ohas.service systemctl status ohas.service
##执行root脚本以后,一直检查下面的文件是否存在,当文件存在马上手动启动oha,推介 [root@rhel7-ora12c-ip21 ~]# ls /etc/init.d/init.ohasd /etc/init.d/init.ohasd [root@rhel7-ora12c-ip21 ~]# systemctl start ohas.service [root@rhel7-ora12c-ip21 ~]# systemctl status ohas.service ● ohas.service - Oracle High Availability Services Loaded: loaded (/usr/lib/systemd/system/ohas.service; disabled; vendor preset: disabled) Active: active (running) since Fri 2017-09-15 03:40:12 EDT; 5s ago Main PID: 11434 (init.ohasd) CGroup: /system.slice/ohas.service └─11434 /bin/sh /etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple
Sep 15 03:40:12 rhel7-ora12c-ip21 systemd[1]: Started Oracle High Availability Services. Sep 15 03:40:12 rhel7-ora12c-ip21 systemd[1]: Starting Oracle High Availability Services... Sep 15 03:40:12 rhel7-ora12c-ip21 su[11461]: (to grid) root on none
[root@rhel7-ora12c-ip21 ~]# /u01/app/grid/oraInventory/orainstRoot.sh Changing permissions of /u01/app/grid/oraInventory. Adding read,write permissions for group. Removing read,write,execute permissions for world.
Changing groupname of /u01/app/grid/oraInventory to oinstall. The execution of the script is complete.
[root@rhel7-ora12c-ip21 ~]# /u01/app/gridhome/root.sh Performing root user operation.
The following environment variables are set as: ORACLE_OWNER= grid ORACLE_HOME= /u01/app/gridhome
Enter the full pathname of the local bin directory: [/usr/local/bin]: The contents of "dbhome" have not changed. No need to overwrite. The contents of "oraenv" have not changed. No need to overwrite. The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root script. Now product-specific root actions will be performed. Using configuration parameter file: /u01/app/gridhome/crs/install/crsconfig_params The log of current session can be found at: /u01/app/grid/crsdata/rhel7-ora12c-ip21/crsconfig/roothas_2017-09-15_03-40-36AM.log 2017/09/15 03:40:36 CLSRSC-363: User ignored prerequisites during installation 2017/09/15 03:40:40 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service' CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'rhel7-ora12c-ip21' CRS-2673: Attempting to stop 'ora.evmd' on 'rhel7-ora12c-ip21' CRS-2677: Stop of 'ora.evmd' on 'rhel7-ora12c-ip21' succeeded CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'rhel7-ora12c-ip21' has completed CRS-4133: Oracle High Availability Services has been stopped. CRS-4123: Oracle High Availability Services has been started.
rhel7-ora12c-ip156 2017/09/15 03:41:35 /u01/app/gridhome/cdata/rhel7-ora12c-ip21/backup_20170915_034135.olr 0
##报错: 2017/09/16 03:35:51 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service' 2017/09/16 03:36:34 CLSRSC-400: A system reboot is required to continue installing. The command '/u01/app/gridhome/perl/bin/perl -I/u01/app/gridhome/perl/lib -I/u01/app/gridhome/crs/install /u01/app/gridhome/crs/install/roothas.pl ' execution failed 解决: [grid@rhel7-ora12c-ip21 ~]$ acfsdriverstate -orahome $ORACLE_HOME supported ACFS-9459: ADVM/ACFS is not supported on this OS version: '3.10.0-514.el7.x86_64' ACFS-9201: Not Supported
##安装前检查脚本 ./runcluvfy.sh stage -pre crsinst -n rhel7-ora12c-ip21,rhel7-ora12c-ip22 -fixup -verbose >> check.txt
##安装数据库软件和实例 ./gridSetup.sh


注意:12c R2强制安装GIMR,要求空间最低37G 注:这里没有设置DNS,我把对DNS提示的错误全部忽略,物理内存要求大于8G,我忽略
##安装rdbms和instance和11G区别不大,正常安装即可





太阳http代理AD
回复

使用道具 举报