RHEL 7.6 安裝 Oracle 18c RAC

来源:https://www.cnblogs.com/sky2088/archive/2019/03/25/10594057.html
-Advertisement-
Play Games

RHEL 7.6 安裝 Oracle 18c RAC 第一部分 安裝規劃 虛擬環境 VirtualBox 6.0 OS 版本 Red Hat Enterprise Linux Server release 7.6 (Maipo) 資料庫版本 18.3.0.0.0 安裝介質 LINUX.X64_180 ...


 

RHEL 7.6 安裝 Oracle 18c RAC

 

第一部分 安裝規劃

虛擬環境

VirtualBox 6.0

OS 版本

Red Hat Enterprise Linux Server release 7.6 (Maipo)

資料庫版本

18.3.0.0.0

安裝介質

LINUX.X64_180000_db_home.zip

LINUX.X64_180000_grid_home.zip

軟體安裝目錄

grid: /u01/app/18.0.0/grid

oracle: /u01/app/oracle/product/18.0.0/db_1

用戶和組

grid: oinstall,asmadmin,asmdba,racdba,asmoper

oracle: oinstall, dba,asmdba,backupdba,dgdba,kmdba,racdba,oper

網路規劃

192.168.56.11  rac1     #一節點public ip

192.168.56.12  rac2     #二節點public ip

 

192.168.56.13  rac1-vip  #一節點virtual ip

192.168.56.14  rac2-vip  #二節點virtual ip

 

172.16.56.11  rac1-priv  #一節點private ip

172.16.56.12  rac2-priv  #二節點private ip

 

192.168.56.15 rac-scan   # scan ip

ASM磁碟組

OCRVT: 2G * 3

MGMT: 40G * 1

DATA: 8G * 1

ARCH: 5G * 1

 

安裝操作系統,添加ASM共用磁碟省略

 

第二分部 操作系統環境配置

 

2.1 更改IO調度為deadline,關閉numa和透明大頁

 

 

(1).vi /etc/default/grub(編輯 /etc/default/grub 文件,在GRUB_CMDLINE_LINUX 條目後面添加"elevator=deadline","transparent_hugepage=never" 和”numa=off”,

執行grub2-mkconfig -o /boot/grub2/grub.cfg 最後重啟操作系統)

 

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rootvg/root rd.lvm.lv=rootvg/swap rhgb quiet elevator=deadline transparent_hugepage=never numa=off net.ifnames=0 biosdevname=0"

 

grub2-mkconfig -o /boot/grub2/grub.cfg

 

(2). 重啟操作系統使配置生效.

 

2.2 使用CTSS時鐘同步

/sbin/service ntpd stop

chkconfig ntpd off

mv /etc/ntp.conf /etc/ntp.conf.org

 

systemctl stop chronyd

systemctl disable chronyd

 

2.3 配置/etc/hosts解析表

 

vi  /etc/hosts添加

#config for 18c RAC

 

192.168.56.11 rac1

192.168.56.12 rac2

 

192.168.56.13 rac1-vip

192.168.56.14 rac2-vip

 

172.16.56.11  rac1-priv

172.16.56.12  rac2-priv

 

192.168.56.15 rac-scan

 

2.4 關閉防火牆

systemctl disable firewalld.service

systemctl stop firewalld.service

 

2.5 關閉selinux

 

vi  /etc/selinux/config

 

SELINUX=disabled

 

2.6 關閉NetworkManager

 

systemctl disable NetworkManager

systemctl stop NetworkManager

 

2.7 停止avahi-daemon

systemctl stop avahi-daemon.socket avahi-daemon.service

systemctl disable avahi-daemon.socket avahi-daemon.service

 

2.8 配置NOZEROCONF

vi  /etc/sysconfig/network  添加

 

NOZEROCONF=yes

 

2.9 內核參數修改

vi /etc/sysctl.conf

 

#kernel configuration for oracle 18c

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 268435456

kernel.shmmax = 549755813760

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

 

是配置生效

 

sysctl -p

 

 

2.10 添加用戶和組

/usr/sbin/groupadd -g 54321 oinstall

/usr/sbin/groupadd -g 54322 dba

/usr/sbin/groupadd -g 54323 oper

/usr/sbin/groupadd -g 54324 backupdba

/usr/sbin/groupadd -g 54325 dgdba

/usr/sbin/groupadd -g 54326 kmdba

/usr/sbin/groupadd -g 54327 asmdba

/usr/sbin/groupadd -g 54328 asmoper

/usr/sbin/groupadd -g 54329 asmadmin

/usr/sbin/groupadd -g 54330 racdba

 

/usr/sbin/useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle

/usr/sbin/useradd -u 54322 -g oinstall -G asmadmin,asmdba,racdba,asmoper grid

 

echo oracle | passwd --stdin oracle

echo oracle | passwd --stdin grid

 

2.11 創建軟體安裝目錄

mkdir -p /u01/app/18.0.0/grid

mkdir -p /u01/app/grid

mkdir -p /u01/app/oracle/product/18.0.0/db_1

chown -R grid:oinstall /u01

chown -R oracle:oinstall /u01/app/oracle

chmod -R 775 /u01/

 

2.12 用戶環境變數配置

#為grid用戶添加環境變數

vi  /home/grid/.bash_profile EOF

export ORACLE_BASE=/u01/app/grid

export ORACLE_SID=+ASM1 (節點2改為+ASM2)

export ORACLE_HOME=/u01/app/18.0.0/grid

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

EOF

source /home/grid/.bash_profile

 

#為oracle用戶添加環境變數

vi  /home/oracle/.bash_profile

export ORACLE_BASE=/u01/app/oracle

export ORACLE_SID=racdb1(節點2改為racdb2)

export ORACLE_HOME=$ORACLE_BASE/product/18.0.0/db_1

export PATH=$ORACLE_HOME/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

EOF

source /home/oracle/.bash_profile

2.13 配置用戶資源限制

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  memlock  3145728

oracle    soft  memlock  3145728

 

grid    soft    nproc   2047

grid    hard    nproc   16384

grid    soft    nofile  1024

grid    hard    nofile  65536

grid    soft    stack   10240

grid    hard  memlock  3145728

grid    soft  memlock  3145728

 

 

vi /etc/pam.d/login  添加

 

#this is for oracle user

session    required     pam_limits.so

 

2.14 配置全局profile 

vi  /etc/profile 添加

 

#this is for oracle user

if [ $USER = "oracle" ]||[ $USER = "grid" ]; then

   if [ $SHELL = "/bin/ksh" ]; then

      ulimit -p 16384

      ulimit -n 65536

   else

      ulimit -u 16384 -n 65536

   fi

umask 022

fi

 

2.15 安裝rpm依賴包

yum -y install bc \

binutils \

compat-libcap1 \

compat-libstdc++-33.i686 \

compat-libstdc++-33.x86_64 \

glibc.i686 \

glibc.x86_64 \

glibc-devel.i686 \

glibc-devel.x86_64 \

ksh \

libaio.i686 \

libaio.x86_64 \

libaio-devel.i686 \

libaio-devel.x86_64 \

libX11.i686 \

libX11.x86_64 \

libXau.i686 \

libXau.x86_64 \

libXi.i686 \

libXi.x86_64 \

libXtst.i686 \

libXtst.x86_64 \

libXrender-devel.i686 \

libXrender-devel.x86_64 \

libXrender.i686 \

libXrender.x86_64 \

libgcc.i686 \

libgcc.x86_64 \

libstdc++.i686 \

libstdc++.x86_64 \

libstdc++-devel.i686 \

libstdc++-devel.x86_64 \

libxcb.i686 \

libxcb.x86_64 \

make \

nfs-utils.x86_64 \

net-tools \

python \

python-configshell \

python-rtslib \

python-six \

smartmontools \

sysstat \

targetcli \

unixODBC \

unixODBC-devel \

unzip

 

 

 

CVUQDISK_GRP=oinstall; export CVUQDISK_GRP

rpm -iv /u01/app/18.0.0/grid/cvuqdisk-1.0.10-1.rpm   (需先解壓grid安裝包到/u01/app/18.0.0/grid)

 

 

2.16 共用存儲配置

 

(1).多路徑方式安裝配置

 

yum -y install device-mapper*

 

 

--生成預設配置文件

 

mpathconf --enable

 

vi /etc/multipath.conf 修改

 

find_multipaths no

 

multipaths {

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754171

               alias                   OCR1

       }

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754172

               alias                   OCR2

       }

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754173

               alias                   OCR3

       } 

       multipath {

               wwid                    14f504e46494c455257374a5968312d784f45542d54754174

               alias                   MGMT

       }                  

       multipath {

               wwid                    14f504e46494c4552325354736c632d783567742d47557662

               alias                   DATA

       }

              multipath {

               wwid                    14f504e46494c45526a62644c70392d65744b562d38524967

               alias                   ARCH

       }

}

 

multipath -F

 

systemctl restart multipathd.service

multipath -v3

 

vi  /etc/udev/rules.d/99-oracle-asmdevices.rules

 

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754171",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754172",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754173",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c455257374a5968312d784f45542d54754174",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c4552325354736c632d783567742d47557662",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="dm-*",ENV{DM_UUID}=="mpath-14f504e46494c45526a62644c70392d65744b562d38524967",OWNER="grid",GROUP="asmadmin",MODE="0660"

 

udevadm trigger

udevadm control -R

systemctl restart systemd-udevd.service

 

 

(2).不使用多路徑的方式,僅需配置如下文件(本次安裝是測試環境,磁碟沒有多條路徑,無需使用多路徑方式)

 

vi  /etc/udev/rules.d/99-oracle-asmdevices.rules

 

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB5643659c-65a9d79a",SYMLINK+="asm-diskb",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB603d9ec9-7c3a2db0",SYMLINK+="asm-diskc",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBc74f578a-aa1a566c",SYMLINK+="asm-diskd",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBcje8jg2a-ff4e14d3",SYMLINK+="asm-diske",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBcaeggcdb-3gv5hnc6",SYMLINK+="asm-diskf",OWNER="grid",GROUP="asmadmin",MODE="0660"

KERNEL=="sd?",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBccbd112b-egdgrkr5",SYMLINK+="asm-diskg",OWNER="grid",GROUP="asmadmin",MODE="0660"

 

#使udev策略配置生效

 

udevadm trigger

udevadm control -R

systemctl restart systemd-udevd.service

 

 

[root@rac1 ~]# ll /dev/asm*

lrwxrwxrwx 1 root root       3 Mar 25 14:53 /dev/asm-diskb -> sdb

lrwxrwxrwx 1 root root       3 Mar 25 14:53 /dev/asm-diskc -> sdc

lrwxrwxrwx 1 root root       3 Mar 25 15:06 /dev/asm-diskd -> sdd

lrwxrwxrwx 1 root root       3 Mar 25 15:06 /dev/asm-diske -> sde

lrwxrwxrwx 1 root root       3 Mar 25 15:06 /dev/asm-diskf -> sdf

 

[root@rac1 ~]# ll /dev/sd*

brw-rw---- 1 grid asmadmin 8, 16 Mar 25 15:07 /dev/sdb

brw-rw---- 1 grid asmadmin 8, 32 Mar 25 15:07 /dev/sdc

brw-rw---- 1 grid asmadmin 8, 48 Mar 25 15:07 /dev/sdd

brw-rw---- 1 grid asmadmin 8, 64 Mar 25 15:07 /dev/sde

brw-rw---- 1 grid asmadmin 8, 80 Mar 25 15:07 /dev/sdf

 

 

 

第三部分 安裝GRID軟體

 

3.1 解壓軟體

 

unzip LINUX.X64_180000_grid_home.zip -d /u01/app/18.0.0/grid

 

3.2 配置用戶ssh對等性(方便檢查rac2節點配置,也可以OUI界面配置)

su - grid

cd /u01/app/18.0.0/grid/oui/prov/resources/scripts

./sshUserSetup.sh -user grid -hosts "rac1 rac2" -advanced –noPromptPassphrase

 

3.3 安裝前環境預檢查

su - grid

cd /u01/app/18.0.0/grid

./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -fixup –verbose

 

3.4 開始安裝grid軟體

export DISPLAY=192.168.56.1:0.0

cd /u01/app/18.0.0/grid

./gridSetup.sh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分別在rac1,rac2執行上面2個腳本

 

 

執行完成後,點擊OK繼續完成安裝。

 

 

INS-20802 報錯可以忽略

 

 

至此grid軟體安裝完成。

 

 

第四部分 創建ASM磁碟組

 

su - grid

export DISPLAY=192.168.56.1:0.0

asmca

 

創建DATA和ARCH磁碟組

 

 

 

 

 

第五部分 安裝database軟體

 

5.1 解壓db軟體

 

su - oracle

unzip /soft/LINUX.X64_180000_db_home.zip –d /u01/app/oracle/product/18.0.0/db_1

 

5.2 開始安裝db軟體

su - oracle

export DISPLAY=192.168.56.1:0.0

cd /u01/app/oracle/product/18.0.0/db_1

./runInstaller

 

 

 

 如果前面沒有配置oracle用戶的ssh對等性,則輸入oracle用戶密碼,點擊setup進行配置

 

 

 

 

 

 

 

 

 

 

分別在rac1,rac2節點執行/u01/app/oracle/product/18.0.0/db_1/root.sh腳本

 

 

至此database軟體安裝完成。

 

 

第六部分 創建資料庫

su - oracle

export DISPLAY=192.168.56.1:0.0

dbca

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

至此dbca創建資料庫完成。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 安裝步驟 1、下載,到MySQL官網: "https://dev.mysql.com/downloads/mysql/" 2、解壓安裝包 解壓下載的安裝包,放到你的電腦路徑,我放置的是 3、配置my.ini文件 解壓後,在根目錄下創建配置文件my.ini,內容如下: 4、配置MySQL環境變數 為了 ...
  • 版本:linux7.6 一.編譯安裝 1.下載epel源 [root@db01 ~]# wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo 2.安裝依賴 [root@db01 ~]# yum i ...
  • 組函數 COUNT()(個數)、SUM()(求和)、AVG()(平均)、MAX()(最大值)、MIN()(最小值)。 分組統計 關於 WHERE 和 HAVING 的區別? · WHERE 子句:是在分組前使用,而且不能夠使用統計函數進行驗證,經過 WHERE 篩選後的數據才可以分組;· HAVIN ...
  • 一.Pod定義 最小部署單元 一組容器集合 一個pod中的容器共用網路命名空間 Pod是短暫的 二.Pod容器分類 基礎容器 維護整個Pod的網路命名空間 初始化容器 先於業務容器開始執行,在應用啟動之前進行初始化操作 業務容器 並行啟動 基礎容器 維護整個Pod的網路命名空間 初始化容器 先於業務 ...
  • 事務四大特征:原子性,一致性,隔離性和持久性。 1. 原子性(Atomicity) 一個原子事務要麼完整執行,要麼乾脆不執行。這意味著,工作單元中的每項任務都必須正確執行。如果有任一任務執行失敗,則整個工作單元或事務就會被終止。即此前對數據所作的任何修改都將被撤銷。如果所有任務都被成功執行,事務就會 ...
  • 1.timestamp占用4個位元組;datetime占用8個位元組2.timestamp範圍1970-01-01 00:00:01.000000 到 2038-01-19 03:14:07.999999;datetime是1000-01-01 00:00:00.000000 到 9999-12-31 ...
  • 字元串函數 1、 大小寫轉換函數:· 轉大寫:字元串 UPPER(字元串 | 數據列);· 轉小寫:字元串 LOWER(字元串 | 數據列)。 2、 首字母大寫,其餘字母小寫:字元串INITCAP(字元串 | 列) 3、 取得字元串長度:數字 LENGTH(字元串 | 4、 替換指定字元串的內容:字 ...
  • 在用戶進行數據更新操作(DML)事務一定會起作用。 事務的出現會保證數據的完整性、一致性。在整個事務的處理過程之中主要使用兩個操作命令: · 事務的提交(COMMIT):是真正的向資料庫之中發出更新指令;· 事務的回滾(ROLLBACK):回滾到最初的狀態。 一但用戶發出了提交事務(commit)指 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...