当前位置:首页 >百科 >Oracle 12c Release 2 RAC 安装 Oracle Linux 7 就像安装基本服务器一样

Oracle 12c Release 2 RAC 安装 Oracle Linux 7 就像安装基本服务器一样

2024-05-18 17:00:58 [百科] 来源:避面尹邢网

Oracle 12c Release 2 RAC 安装 Oracle Linux 7

作者:雪竹聊技术 系统 Linux Oracle 安装 Oracle Linux 7,就像安装基本服务器一样,更具体地说,它应该是一个至少具有 4G+ 交换空间、禁用防火墙、selinux为disabled。

一、概述

本文主要阐述基于ASM 构建 Oracle 12c RAC数据库的过程说明

Oracle 12c Release 2 RAC 安装 Oracle Linux 7 就像安装基本服务器一样

1、系统版本要求

  • 确保 Oracle Linux 版本为 6 或更高版本。
  • 确保两个节点的 Oracle Linux 内核版本为 2.6.32 或更高版本。

2、系统安装要求

安装 Oracle Linux 7,就像安装基本服务器一样,更具体地说,它应该是一个至少具有 4G+ 交换空间、禁用防火墙、selinux为disabled,并安装了如下软件包组:

Oracle 12c Release 2 RAC 安装 Oracle Linux 7 就像安装基本服务器一样

  • Server with GUI
  • Hardware Monitoring Utilities
  • Large Systems Performance
  • Network file system client
  • Performance Tools
  • Compatibility Libraries
  • Development Tools

在Linux 7及以上的网络适配器称为 enp0s3、enp0s8 和 enp0s9,在以前的 Linux 版本中,它们分别是 eth0、eth1 和 eth2。

Oracle 12c Release 2 RAC 安装 Oracle Linux 7 就像安装基本服务器一样

3、架构图

二、配置操作系统

1、Oracle 安装先决条件

执行自动设置或手动设置以完成基本先决条件。所有安装都需要附加设置。

(1)自动设置

如果您计划使用“oracle-database-server-12cR2-preinstall”软件包来执行所有先决条件设置,可以通过执行如下命令。

# yum install oracle-database-server-12cR2-preinstall -y

早期版本的 Oracle Linux 需要按照http://public-yum.oracle.com上的说明手动设置 Yum 存储库。

建议对系统进行全面的更新,但这不是必须的操作。

# yum update -y

(2)手动设置

如果您尚未使用“
oracle-database-server-12cR2-preinstall”软件包来执行所有先决条件,则需要手动执行以下安装任务。

2、设置/etc/sysctl.conf

将以下行添加到“/etc/sysctl.conf”文件或名为“/etc/sysctl.d/98-oracle.conf”的文件中。

fs.file-max = 6815744kernel.sem = 250 32000 100 128kernel.shmmni = 4096kernel.shmall = 1073741824kernel.shmmax = 4398046511104kernel.panic_on_oops = 1net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576net.ipv4.conf.all.rp_filter = 2net.ipv4.conf.default.rp_filter = 2fs.aio-max-nr = 1048576net.ipv4.ip_local_port_range = 9000 65500

运行以一下命令使当前修改内核参数生效。

/sbin/sysctl -p # 或/sbin/sysctl -p /etc/sysctl.d/98-oracle.conf

3、修改oarcle参数的shell限制

将以下行添加到名为“/etc/security/limits.d/oracle-database-server-12cR2-preinstall.conf”的文件中。

oracle   soft   nofile    1024oracle   hard   nofile    65536oracle   soft   nproc    16384oracle   hard   nproc    16384oracle   soft   stack    10240oracle   hard   stack    32768oracle   hard   memlock    134217728oracle   soft   memlock    134217728

4、安装系统软件包

除了基本操作系统安装之外,还必须以 root 用户身份登录时安装以下软件包。这包括某些软件包的 64 位和 32 位版本。

# From Public Yum or ULNyum install binutils -yyum install compat-libstdc++-33 -yyum install compat-libstdc++-33.i686 -yyum install gcc -yyum install gcc-c++ -yyum install glibc -yyum install glibc.i686 -yyum install glibc-devel -yyum install glibc-devel.i686 -yyum install ksh -yyum install libgcc -yyum install libgcc.i686 -yyum install libstdc++ -yyum install libstdc++.i686 -yyum install libstdc++-devel -yyum install libstdc++-devel.i686 -yyum install libaio -yyum install libaio.i686 -yyum install libaio-devel -yyum install libaio-devel.i686 -yyum install libXext -yyum install libXext.i686 -yyum install libXtst -yyum install libXtst.i686 -yyum install libX11 -yyum install libX11.i686 -yyum install libXau -yyum install libXau.i686 -yyum install libxcb -yyum install libxcb.i686 -yyum install libXi -yyum install libXi.i686 -yyum install make -yyum install sysstat -yyum install unixODBC -yyum install unixODBC-devel -yyum install zlib-devel -yyum install zlib-devel.i686 -y

5、创建新组和用户

groupadd -g 1000 oinstallgroupadd -g 1100 asmadmingroupadd -g 1200 dbagroupadd -g 1300 asmdbagroupadd -g 1301 asmoper groupadd -g 1400 oper/usr/sbin/useradd -u 1001 -g oinstall -G asmadmin,asmdba,asmoper grid/usr/sbin/useradd -u 1000 -g oinstall -G dba,asmdba,oper oracleecho "grid" | passwd --stdin gridecho "oracle" | passwd --stdin oracle

三、其他设置

无论您进行手动设置还是自动设置,都必须执行以下步骤。

1、设置/etc/hosts解析

127.0.0.1       localhost.localdomain   localhost# Public192.168.56.101   ol7-122-rac1.localdomain        ol7-122-rac1192.168.56.102   ol7-122-rac2.localdomain        ol7-122-rac2# Private192.168.1.101   ol7-122-rac1-priv.localdomain   ol7-122-rac1-priv192.168.1.102   ol7-122-rac2-priv.localdomain   ol7-122-rac2-priv# Virtual192.168.56.103   ol7-122-rac1-vip.localdomain    ol7-122-rac1-vip192.168.56.104   ol7-122-rac2-vip.localdomain    ol7-122-rac2-vip# SCAN#192.168.56.105   ol7-122-scan.localdomain ol7-122-scan#192.168.56.106   ol7-122-scan.localdomain ol7-122-scan#192.168.56.107   ol7-122-scan.localdomain ol7-122-scan

SCAN 地址在主机文件中被注释掉,因为它必须使用 DNS 进行解析,因此它可以在与公共 IP 位于同一子网上的 3 个地址之间进行循环。可以使用BIND或Dnsmasq在主机上配置 DNS ,这要简单得多。如果您使用 Dnsmasq,请将 RAC 特定条目放入主机“/etc/hosts”文件中,取消注释 SCAN 条目,然后重新启动 Dnsmasq。

确保“/etc/resolv.conf”文件包含指向正确名称服务器的名称服务器条目。另外,如果“域”和“搜索”条目都存在,请注释掉其中之一。对于此安装,我的“/etc/resolv.conf”如下所示。

#domain localdomainsearch localdomainnameserver 192.168.56.1

2、关闭selinux

通过编辑“/etc/selinux/config”文件,确保selinux设置如下:

SELINUX=disabled

3、关闭firewall

# systemctl stop firewalld# systemctl disable firewalld

4、确保 NTP(OL7/RHEL7 上的 Chrony)已启用

# systemctl enable chronyd# systemctl restart chronyd# chronyc -a 'burst 4/4'# chronyc -a makestep

5、oracle用户的 Bash 配置文件

两节点都需要配置,添加如下内容:

cat >> .bash_profile << EOF# Oracle SettingsTMP=/tmp; export TMPTMPDIR=$TMP; export TMPDIRORACLE_HOSTNAME=rac1<-->rac2; export ORACLE_HOSTNAMEORACLE_UNQNAME=orcl; export ORACLE_UNQNAMEORACLE_BASE=/u01/app/oracle; export ORACLE_BASEDB_HOME=$ORACLE_BASE/product/12.2.0.1/db_1; export DB_HOMEORACLE_HOME=$DB_HOME; export ORACLE_HOMEORACLE_SID=orcl1<-->orcl2; export ORACLE_SID   ORACLE_TERM=xterm; export ORACLE_TERMBASE_PATH=/usr/sbin:$PATH; export BASE_PATHPATH=$ORACLE_HOME/bin:$BASE_PATH; export PATHexport NLS_LANG=AMERICAN_AMERICA.ZHS16GBKexport PS1=[`hostname`'@$PWD']$LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATHCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATHEOFexit

6、grid用户环境变量

#gridsu - grid.bash_profile ORACLE_SID=+ASM1<-->+ASM2; export ORACLE_SID   ORACLE_HOME=/u01/app/12.2.0.1/grid; export ORACLE_HOMEBASE_PATH=/usr/sbin:$PATH; export BASE_PATHPATH=$ORACLE_HOME/bin:$BASE_PATH; export PATHexport NLS_LANG=AMERICAN_AMERICA.ZHS16GBKexport PS1=[`hostname`'@$PWD']$LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATHCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

7、创建相关用户及目录

mkdir -p  /u01/app/12.2.0.1/gridchown -R grid:oinstall /u01mkdir -p /u01/app/oracle/product/12.2.0.1/db_1chown -R oracle:oinstall /u01/app/oraclechmod -R 775 /u01/

8、配置ASM存储

方法二:通过命令创建本次安装使用了oracleasmlib管理asm磁盘首先从linux-kernel安装kmod-oracleasm,这是linux源中自带的,是linux支持oracleasm的软件包然后从oracle官网下载oracleasmlib和oracleasm-support/usr/sbin/oracleasm configure -i   #两个节点二、配置ASMlib,再使用ASMlib之前,必须运行配置脚本准备驱动程序:使用root执行:/etc/init.d/oracleasm configure [root@yft 1234]# /etc/init.d/oracleasm configureConfiguring the Oracle ASM library driver.This will configure the on-boot properties of the Oracle ASM librarydriver.  The following questions will determine whether the driver isloaded on boot and what permissions it will have.  The current valueswill be shown in brackets ('[]').  Hitting <ENTER> without typing ananswer will keep that current value.  Ctrl-C will abort.Default user to own the driver interface []: gridDefault group to own the driver interface []: asmadminStart Oracle ASM library driver on boot (y/n) [n]: yScan for Oracle ASM disks on boot (y/n) [y]: yWriting Oracle ASM library driver configuration: doneInitializing the Oracle ASMLib driver:                     [  OK  ]Scanning the system for Oracle ASMLib disks:               [  OK  ][root@yft 1234]# /etc/init.d/oracleasm enableWriting Oracle ASM library driver configuration: doneInitializing the Oracle ASMLib driver:                     [  OK  ]Scanning the system for Oracle ASMLib disks:               [  OK  ] /etc/init.d/oracleasm enable #两个节点/etc/init.d/oracleasm start  #两个节点/usr/sbin/oracleasm listdisks/usr/sbin/oracleasm querydisks/usr/sbin/oracleasm createdisk NAME /path/usr/sbin/oracleasm scandisks  #一个节点创建磁盘后,另一个节点扫描磁盘即可#本次创建的磁盘/etc/init.d/oracleasm createdisk VOLCRS01 /dev/vdb1/etc/init.d/oracleasm createdisk VOLCRS02 /dev/vdc1/etc/init.d/oracleasm createdisk VOLCRS03 /dev/vdd1/etc/init.d/oracleasm createdisk VOLDATA01 /dev/vdb2/etc/init.d/oracleasm createdisk VOLDATA02 /dev/vdc2/etc/init.d/oracleasm createdisk VOLDATA03 /dev/vdd2

附件:asm包下载地址http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/index.html。

四、 Install Grid Infrastructure

export SOFTWARE_LOCATION=/media/sf_12.2.0.1/cd /u01/app/12.2.0.1/gridunzip -q $SOFTWARE_LOCATION/linuxx64_12201_grid_home.zip

我可以使用此编辑的响应文件 ( grid_config.rsp ) 和以下命令以静默模式运行配置。

cd /u01/app/12.2.0.1/grid./gridSetup.sh -silent -responseFile /tmp/grid_config.rsp

相反,这是交互式配置。

cd /u01/app/12.2.0.1/grid./gridSetup.sh

选择“为新集群配置 Oracle Grid Infrastructure”选项,然后单击“下一步”按钮。

单击“下一步”按钮接受“配置 Oracle 独立集群”选项。

输入集群名称“ol7-122-cluster”、SCAN 名称“ol7-122-scan”和 SCAN 端口“1521”,然后单击“下一步”按钮。

在“集群节点信息”屏幕上,单击“添加”按钮。

输入集群中第二个节点的详细信息,然后单击“确定”按钮。

单击“SSH 连接...”按钮并输入“oracle”用户的密码。单击“设置”按钮配置 SSH 连接,完成后单击“测试”按钮进行测试。测试完成后,单击“下一步”按钮。

检查公共和专用网络是否指定正确。如果显示 NAT 接口,请记住将其标记为“不使用”。单击“下一步”按钮。

单击“下一步”按钮接受“使用块设备配置 ASM”选项。

选择“否”选项,因为在这种情况下我们不想为 GIMR 创建单独的磁盘组。单击“下一步”按钮。

将冗余设置为“外部”,单击“更改发现路径”按钮并将路径设置为“/dev/oracleasm/*”。返回主屏幕并选择所有 4 个磁盘。取消选中“Configure Oracle ASM Filter Driver”选项,然后单击“Next”按钮。

输入凭据并单击“下一步”按钮。

单击“下一步”按钮接受默认 IPMI 选项。

不要在 EM 注册。单击“下一步”按钮。

我们使用单个用户和组管理 ASM 添加数据库,因此将组设置为“dba”并单击“下一步”按钮。单击“是”按钮接受后续对话框中的警告。

输入 Oracle Base 位置“/u01/app/oracle”,然后单击“下一步”按钮。我们已经为后面的数据库安装预先创建了目录,因此通过单击“是”按钮忽略后续有关 Oracle Base 不为空的警告。

单击“下一步”按钮接受默认清单目录。

如果您希望根脚本自动运行,请输入相关凭据。我更喜欢手动运行它们。单击“下一步”按钮。

等待先决条件检查完成。如果您有任何问题,请使用“修复并再次检查”按钮。完成可能的修复后,选中“全部忽略”复选框,然后单击“下一步”按钮。对于此类安装,“物理内存”和“网络时间协议 (NTP)”测试可能会失败。还行吧。

如果您对摘要信息感到满意,请单击“安装”按钮。

等待安装进行。

出现提示时,在每个节点上运行配置脚本。

等待配置助手完成。

如果任何配置步骤失败,您应该检查指定的日志,看看该错误是否是一个严重的错误。我收到的唯一错误是时间同步错误(PRVG-13606..

PRVG-13606:chrony 守护进程未与节点上的任何外部时间源同步...

如果您没有任何阻碍,可以通过单击“下一步”按钮安全地忽略错误。

单击“关闭”按钮退出安装程序。

Grid Infrastructure安装现已完成。我们可以使用以下命令检查安装的状态。

$ grid_env$ crsctl stat res -t--------------------------------------------------------------------------------Name           Target  State        Server                   State details       --------------------------------------------------------------------------------Local Resources--------------------------------------------------------------------------------ora.ASMNET1LSNR_ASM.lsnr               ONLINE  ONLINE       ol7-122-rac1             STABLE               ONLINE  ONLINE       ol7-122-rac2             STABLEora.DATA.dg               ONLINE  ONLINE       ol7-122-rac1             STABLE               ONLINE  ONLINE       ol7-122-rac2             STABLEora.LISTENER.lsnr               ONLINE  ONLINE       ol7-122-rac1             STABLE               ONLINE  ONLINE       ol7-122-rac2             STABLEora.chad               ONLINE  ONLINE       ol7-122-rac1             STABLE               ONLINE  ONLINE       ol7-122-rac2             STABLEora.net1.network               ONLINE  ONLINE       ol7-122-rac1             STABLE               ONLINE  ONLINE       ol7-122-rac2             STABLEora.ons               ONLINE  ONLINE       ol7-122-rac1             STABLE               ONLINE  ONLINE       ol7-122-rac2             STABLEora.proxy_advm               OFFLINE OFFLINE      ol7-122-rac1             STABLE               OFFLINE OFFLINE      ol7-122-rac2             STABLE--------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------ora.LISTENER_SCAN1.lsnr      1        ONLINE  ONLINE       ol7-122-rac2             STABLEora.LISTENER_SCAN2.lsnr      1        ONLINE  ONLINE       ol7-122-rac2             STABLEora.LISTENER_SCAN3.lsnr      1        ONLINE  ONLINE       ol7-122-rac2             STABLEora.MGMTLSNR      1        ONLINE  ONLINE       ol7-122-rac2             169.254.137.110 192.                                                             168.1.102,STABLEora.asm      1        ONLINE  ONLINE       ol7-122-rac1             Started,STABLE      2        ONLINE  ONLINE       ol7-122-rac2             Started,STABLE      3        OFFLINE OFFLINE                               STABLEora.cvu      1        ONLINE  ONLINE       ol7-122-rac1             STABLEora.mgmtdb      1        ONLINE  ONLINE       ol7-122-rac2             Open,STABLEora.ol7-122-rac1.vip      1        ONLINE  ONLINE       ol7-122-rac1             STABLEora.ol7-122-rac2.vip      1        ONLINE  ONLINE       ol7-122-rac2             STABLEora.qosmserver      1        ONLINE  ONLINE       ol7-122-rac1             STABLEora.scan1.vip      1        ONLINE  ONLINE       ol7-122-rac2             STABLEora.scan2.vip      1        ONLINE  ONLINE       ol7-122-rac2             STABLEora.scan3.vip      1        ONLINE  ONLINE       ol7-122-rac2             STABLE--------------------------------------------------------------------------------$

我可以使用此编辑的响应文件 ( db_install.rsp ) 和以下命令以静默模式运行 OUI 。

$ db_env $ cd /media/sf_12.2.0.1/database $ ./runInstaller -silent -ignoreSysPrereqs -showProgress -responseFile /tmp/db_install.rsp

相反,这是交互式视图。

$ db_env $ cd /media/sf_12.2.0.1/database $ ./runInstaller

取消选中安全更新复选框,然后单击“下一步”按钮,然后在随后的警告对话框中单击“是”。

选择“仅安装数据库软件”选项,然后单击“下一步”按钮。

单击“下一步”按钮接受“Oracle Real Application Clusters 数据库安装”选项。

确保两个节点都被选中,然后单击“下一步”按钮。

选择“企业版”选项,然后单击“下一步”按钮。

输入“/u01/app/oracle”作为 Oracle 库,输入“/u01/app/oracle/product/12.2.0.1/db_1”作为软件位置,然后单击“下一步”按钮。

选择所需的操作系统组,然后单击“下一步”按钮。在本例中,我们仅使用“dba”组。

等待先决条件检查完成。如果有任何问题,请单击“修复并再次检查”按钮,或选中“全部忽略”复选框并单击“下一步”按钮。

如果您对摘要信息感到满意,请单击“安装”按钮。

等待安装进行。

出现提示时,在每个节点上运行配置脚本。当脚本在每个节点上运行后,单击“确定”按钮。

单击“关闭”按钮退出安装程序。

五、创建数据库

确保“ol7-122-rac1”和“ol7-122-rac2”已启动,然后以oracle用户登录“ol7-122-rac1”并启动数据库创建助手(DBCA)。

我可以使用此编辑的响应文件 ( dbca.rsp ) 和以下命令以静默模式运行 DBCA 。

db_env dbca -silent -responseFile /tmp/dbca.rsp

相反,这是交互式模式。

$ db_env $ dbca

选择“创建数据库”选项并单击“下一步”按钮。

选择“典型配置”选项。输入容器数据库名称 (cdbrac)、可插入数据库名称 (pdb1) 和管理员密码。单击“下一步”按钮。

等待先决条件检查完成。如果有任何问题,请修复它们,或选中“全部忽略”复选框并单击“下一步”按钮。如果没有问题,您将直接进入摘要屏幕。如果您对摘要信息感到满意,请单击“完成”按钮。

等待数据库创建发生。

如果您想修改密码,请点击“密码管理”按钮。完成后,单击“关闭”按钮。

至此 RAC 数据库创建完成。

六、检查RAC状态

有多种方法可以检查 RAC 的状态。该srvctl实用程序显示 RAC 数据库的当前配置和状态。

$ srvctl config database -d cdbracDatabase unique name: cdbracDatabase name: cdbracOracle home: /u01/app/oracle/product/12.2.0.1/db_1Oracle user: oracleSpfile: +DATA/CDBRAC/PARAMETERFILE/spfile.306.938083453Password file: +DATA/CDBRAC/PASSWORD/pwdcdbrac.285.938081999Domain: Start options: openStop options: immediateDatabase role: PRIMARYManagement policy: AUTOMATICServer pools: Disk Groups: DATAMount point paths: Services: Type: RACStart concurrency: Stop concurrency: OSDBA group: dbaOSOPER group: Database instances: cdbrac1,cdbrac2Configured nodes: ol7-122-rac1,ol7-122-rac2CSS critical: noCPU count: 0Memory target: 0Maximum memory: 0Default network number for database services: Database is administrator managed$$ srvctl status database -d cdbracInstance cdbrac1 is running on node ol7-122-rac1Instance cdbrac2 is running on node ol7-122-rac2$

该V$ACTIVE_INSTANCES视图还可以显示实例的当前状态。

$ sqlplus / as sysdba SQL*Plus:2017 年 3 月 8 日星期三 11:04:42 发布 12.2.0.1.0 版本,版权所有 (c) 1982,2016,Oracle。版权所有。连接到:Oracle Database 12c 企业版版本 12.2.0.1.0 - 64 位生产SQL> SELECT inst_name FROM v$active_instances; INST_NAME ------------------------------------------------- ------------------------------- ol7-122-rac1.localdomain:cdbrac1 ol7-122-rac2.localdomain:cdbrac2 SQL >
责任编辑:姜华 来源: 今日头条 OracleLinux 7

(责任编辑:知识)

    推荐文章
    热点阅读