Oracle安装-Oracle12cR2 RAC集群安装配置 FOR 国产麒麟Kylin v10详细过程
1. 硬件环境要求
Oracle 12cR2 RAC集群在国产麒麟Kylin v10上的安装需要满足以下硬件要求。更多学习教程www.fgedu.net.cn
– 节点数:2节点(最小),4节点(推荐)
– CPU:每节点至少12核心,主频2.8GHz以上
– 内存:每节点至少64GB
– 存储:FC SAN或iSCSI存储,RAID 10配置
– 网络:公网、私网、存储网络分离
# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 48 bits physical, 48 bits virtual
CPU(s): 24
On-line CPU(s) list: 0-23
Thread(s) per core: 2
Core(s) per socket: 6
Socket(s): 2
Model name: Intel(R) Xeon(R) Gold 5218 CPU @ 2.30GHz
# 检查内存信息(所有节点)
# free -h
total used free shared buff/cache available
Mem: 125Gi 2.5Gi 120Gi 1.0Mi 2.0Gi 122Gi
Swap: 63Gi 0B 63Gi
# 检查操作系统版本
# cat /etc/kylin-release
Kylin Linux Advanced Server release V10 (Tercel)
2. 网络配置
RAC集群需要配置公网、私网和SCAN网络,确保网络隔离和高可用性。学习交流加群风哥微信: itpux-com
2.1 网络规划
主机名:fgedu01.fgedu.net.cn
公网IP:192.168.1.71/24
私网IP:172.16.1.71/24
VIP IP:192.168.1.73/24
# 节点2网络信息
主机名:fgedu02.fgedu.net.cn
公网IP:192.168.1.72/24
私网IP:172.16.1.72/24
VIP IP:192.168.1.74/24
# SCAN网络信息
SCAN名称:fgedudb-scan.fgedu.net.cn
SCAN IP:192.168.1.75-192.168.1.77/24
2.2 网络接口配置
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.1.71
PREFIX=24
GATEWAY=192.168.1.1
DNS1=192.168.1.2
DNS2=192.168.1.3
# 配置私网接口(eth1)
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=no
IPV4_FAILURE_FATAL=no
NAME=eth1
DEVICE=eth1
ONBOOT=yes
IPADDR=172.16.1.71
PREFIX=24
# 重启网络服务
# systemctl restart network
2.3 DNS配置
# vi /etc/hosts
# 公网IP
192.168.1.71 fgedu01.fgedu.net.cn fgedu01
192.168.1.72 fgedu02.fgedu.net.cn fgedu02
# 私网IP
172.16.1.71 fgedu01-priv.fgedu.net.cn fgedu01-priv
172.16.1.72 fgedu02-priv.fgedu.net.cn fgedu02-priv
# VIP IP
192.168.1.73 fgedu01-vip.fgedu.net.cn fgedu01-vip
192.168.1.74 fgedu02-vip.fgedu.net.cn fgedu02-vip
# SCAN IP
192.168.1.75 fgedudb-scan.fgedu.net.cn fgedudb-scan
192.168.1.76 fgedudb-scan.fgedu.net.cn fgedudb-scan
192.168.1.77 fgedudb-scan.fgedu.net.cn fgedudb-scan
# 验证主机名解析
# ping -c 3 fgedu01.fgedu.net.cn
# ping -c 3 fgedu01-priv.fgedu.net.cn
# ping -c 3 fgedu01-vip.fgedu.net.cn
# ping -c 3 fgedudb-scan.fgedu.net.cn
3. 操作系统准备
安装Oracle 12cR2 RAC需要对麒麟Kylin v10进行一系列准备工作。
3.1 安装依赖包
# yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXext libXtst libX11 libXau libxcb libXi make sysstat
# yum install -y smartmontools xclock xauth libnsl2 libnsl2-devel
# 安装额外依赖包(解决麒麟系统兼容性问题)
# yum install -y elfutils-libelf-devel elfutils-libelf-devel-static
3.2 关闭SELinux和防火墙
# vi /etc/selinux/config
SELINUX=disabled
# 临时关闭SELinux
# setenforce 0
# 关闭防火墙(生产环境建议开放特定端口)
# systemctl stop firewalld
# systemctl disable firewalld
4. 用户和组创建
Oracle RAC需要创建特定的用户和组来运行Grid Infrastructure和数据库软件。
# groupadd -g 54321 oinstall
# groupadd -g 54322 dba
# groupadd -g 54323 oper
# groupadd -g 54324 backupdba
# groupadd -g 54325 dgdba
# groupadd -g 54326 kmdba
# groupadd -g 54327 racdba
# groupadd -g 54328 asmadmin
# groupadd -g 54329 asmdba
# groupadd -g 54330 asmoper
# 创建grid用户
# useradd -u 54321 -g oinstall -G asmadmin,asmdba,asmoper,dba,racdba grid
# 创建oracle用户
# useradd -u 54322 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba,asmdba oracle
# 设置用户密码
# passwd grid
# passwd oracle
5. 目录结构创建
按照OFA标准创建Oracle目录结构。学习交流加群风哥QQ113257174
# mkdir -p /oracle/app/grid
# mkdir -p /oracle/app/12.2.0/grid
# mkdir -p /oracle/app/oraInventory
# 创建Oracle数据库目录
# mkdir -p /oracle/app/oracle
# mkdir -p /oracle/app/oracle/product/12.2.0/db_1
# mkdir -p /oracle/app/oracle/admin/fgedudb
# mkdir -p /backup
# 设置目录权限
# chown -R grid:oinstall /oracle/app/grid
# chown -R grid:oinstall /oracle/app/12.2.0/grid
# chown -R grid:oinstall /oracle/app/oraInventory
# chown -R oracle:oinstall /oracle/app/oracle
# chown -R oracle:oinstall /backup
# chmod -R 775 /oracle
# chmod -R 755 /backup
6. 内核参数配置
优化Linux内核参数以适应Oracle RAC环境。
# vi /etc/sysctl.conf
fs.file-max = 6815744
kernel.shmmax = 68719476736
kernel.shmall = 16777216
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
fs.aio-max-nr = 1048576
vm.swappiness = 10
vm.dirty_background_ratio = 5
vm.dirty_ratio = 10
# 使内核参数生效
# sysctl -p
7. 大内存页配置
配置大内存页以提高Oracle性能。
# vi /etc/default/grub
GRUB_CMDLINE_LINUX=”crashkernel=auto rd.lvm.lv=ol/root rd.lvm.lv=ol/swap transparent_hugepage=never”
# 重新生成grub配置
# grub2-mkconfig -o /boot/grub2/grub.cfg
# 配置大内存页数量(假设SGA为64GB)
# vi /etc/sysctl.conf
vm.nr_hugepages = 32768
vm.hugetlb_shm_group = 54321
# 使配置生效
# sysctl -p
# 重启系统验证配置
# reboot
# 验证大内存页配置
# grep HugePages /proc/meminfo
HugePages_Total: 32768
HugePages_Free: 32768
HugePages_Rsvd: 0
HugePages_Surp: 0
8. NUMA配置
禁用NUMA以避免内存访问的不一致性。
# vi /etc/default/grub
GRUB_CMDLINE_LINUX=”crashkernel=auto rd.lvm.lv=ol/root rd.lvm.lv=ol/swap transparent_hugepage=never numa=off”
# 重新生成grub配置
# grub2-mkconfig -o /boot/grub2/grub.cfg
# 重启系统
# reboot
# 验证NUMA已禁用
# dmesg | grep -i numa
No NUMA configuration found
9. ASM磁盘准备
使用Oracle ASM存储数据库文件,需要准备共享磁盘。
# yum install -y oracleasm-support oracleasm-lib oracleasm-kernel
# 配置ASM Lib
# oracleasm configure -i
Default user to own the driver interface [grid]:
Default group to own the driver interface [asmdba]:
Start Oracle ASM library driver on boot (y/n) [y]:
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
# 启动ASM服务
# systemctl enable oracleasm
# systemctl start oracleasm
# 创建ASM磁盘
# oracleasm createdisk ASMDISK01 /dev/sdc1
Marking disk “ASMDISK01” as an ASM disk:
Instantiating disk: done
# 列出ASM磁盘
# oracleasm listdisks
ASMDISK01
# 验证ASM磁盘状态
# oracleasm status
Checking if ASM is loaded: yes
Checking if /dev/oracleasm is mounted: yes
10. Grid Infrastructure安装
安装Oracle Grid Infrastructure是RAC集群的基础。
# su – grid
# 解压Grid安装包
$ unzip -q /backup/linuxx64_12201_grid_home.zip -d /oracle/app/12.2.0/grid
# 启动Grid安装向导
$ cd /oracle/app/12.2.0/grid
$ ./gridSetup.sh
10.1 Grid安装步骤
图形化安装步骤如下:
步骤2:选择集群类型 – 选择”Standard Cluster” – 点击”下一步”
步骤3:集群节点信息 – 点击”Add”添加节点2(fgedu02) – 点击”SSH Connectivity”设置SSH免密 – 点击”下一步”
步骤4:网络配置 – 设置公网、私网和SCAN网络 – 点击”下一步”
步骤5:存储选项 – 选择”Oracle ASM” – 点击”下一步”
步骤6:ASM磁盘组 – 点击”Create New”创建DATA和FRA磁盘组 – 点击”下一步”
步骤7:ASM密码 – 设置SYS和ASMSNMP密码 – 点击”下一步”
步骤8:管理选项 – 配置Enterprise Manager(可选) – 点击”下一步”
步骤9:操作系统组 – 确认组信息 – 点击”下一步”
步骤10:安装位置 – 确认ORACLE_BASE和ORACLE_HOME – 点击”下一步”
步骤11:权限设置 – 选择”Use root account” – 点击”下一步”
步骤12:执行先决条件检查 – 解决警告 – 点击”下一步”
步骤13:概要信息 – 确认安装信息 – 点击”安装”
# /oracle/app/oraInventory/orainstRoot.sh
# /oracle/app/12.2.0/grid/root.sh
11. ASM磁盘组创建
创建用于存放数据库文件的ASM磁盘组。
$ asmca
# 或使用SQL*Plus创建磁盘组
$ sqlplus / as sysasm
SQL> CREATE DISKGROUP dgfgsystem NORMAL REDUNDANCY
2 FAILGROUP fgedu01 DISK ‘/dev/oracleasm/disks/ASMDISK01’
3 FAILGROUP fgedu02 DISK ‘/dev/oracleasm/disks/ASMDISK02’
4 ATTRIBUTE ‘compatible.asm’ = ‘12.2.0.1.0’,
5 ‘compatible.rdbms’ = ‘12.2.0.1.0’,
6 ‘au_size’ = ‘4M’;
SQL> CREATE DISKGROUP dgfgdata01 NORMAL REDUNDANCY
2 FAILGROUP fgedu01 DISK ‘/dev/oracleasm/disks/ASMDISK03’
3 FAILGROUP fgedu02 DISK ‘/dev/oracleasm/disks/ASMDISK04’
4 ATTRIBUTE ‘compatible.asm’ = ‘12.2.0.1.0’,
5 ‘compatible.rdbms’ = ‘12.2.0.1.0’,
6 ‘au_size’ = ‘4M’;
SQL> CREATE DISKGROUP dgfgarchive NORMAL REDUNDANCY
2 FAILGROUP fgedu01 DISK ‘/dev/oracleasm/disks/ASMDISK05’
3 FAILGROUP fgedu02 DISK ‘/dev/oracleasm/disks/ASMDISK06’
4 ATTRIBUTE ‘compatible.asm’ = ‘12.2.0.1.0’,
5 ‘compatible.rdbms’ = ‘12.2.0.1.0’,
6 ‘au_size’ = ‘4M’;
# 验证磁盘组状态
SQL> SELECT name, state, total_mb, free_mb FROM v$asm_diskgroup;
12. Oracle 12cR2数据库安装
安装Oracle 12cR2数据库软件。
# su – oracle
# 解压数据库安装包
$ unzip -q /backup/linuxx64_12201_database.zip -d /oracle/app/oracle/product/12.2.0/db_1
# 启动数据库安装向导
$ cd /oracle/app/oracle/product/12.2.0/db_1/database
$ ./runInstaller
12.1 数据库安装步骤
步骤2:选择数据库安装选项 – 选择”Oracle Real Application Clusters database installation” – 点击”下一步”
步骤3:选择集群节点 – 选择所有节点 – 点击”下一步”
步骤4:选择数据库版本 – 选择”Enterprise Edition” – 点击”下一步”
步骤5:选择安装位置 – 确认ORACLE_BASE和ORACLE_HOME – 点击”下一步”
步骤6:选择操作系统组 – 确认组信息 – 点击”下一步”
步骤7:执行先决条件检查 – 解决警告 – 点击”下一步”
步骤8:概要信息 – 确认安装信息 – 点击”安装”
# /oracle/app/oracle/product/12.2.0/db_1/root.sh
13. 数据库创建
创建Oracle 12cR2 RAC数据库。
$ dbca
13.1 数据库创建步骤
步骤2:创建模式 – 选择”Advanced configuration” – 点击”下一步”
步骤3:数据库部署类型 – 选择”Oracle Real Application Clusters (RAC) database” – 点击”下一步”
步骤4:集群节点 – 选择所有节点 – 点击”下一步”
步骤5:数据库标识 – 设置数据库名fgedudb,SID前缀fgedu – 点击”下一步”
步骤6:存储选项 – 选择”Oracle Automatic Storage Management (ASM)” – 选择磁盘组 – 点击”下一步”
步骤7:快速恢复区 – 设置快速恢复区位置和大小 – 点击”下一步”
步骤8:网络配置 – 选择监听器 – 点击”下一步”
步骤9:选项配置 – 选择所需组件 – 点击”下一步”
步骤10:初始化参数 – 调整内存、进程等参数 – 点击”下一步”
步骤11:数据库存储 – 确认数据文件位置 – 点击”下一步”
步骤12:创建选项 – 选择”Create database” – 点击”下一步”
步骤13:概要信息 – 确认创建信息 – 点击”完成”
14. 后安装配置和优化
配置数据库参数以提高性能和稳定性。更多学习教程公众号风哥教程itpux_com
$ sqlplus / as sysdba
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE OPEN;
SQL> ALTER SYSTEM SET log_archive_dest_1=’LOCATION=+dgfgarchive’ SCOPE=both;
SQL> ALTER SYSTEM SET log_archive_format=’%t_%s_%r.dbf’ SCOPE=spfile;
# 配置参数文件
SQL> ALTER SYSTEM SET sga_target=64G SCOPE=spfile;
SQL> ALTER SYSTEM SET pga_aggregate_target=16G SCOPE=spfile;
SQL> ALTER SYSTEM SET processes=2000 SCOPE=spfile;
SQL> ALTER SYSTEM SET session_cached_cursors=750 SCOPE=spfile;
SQL> ALTER SYSTEM SET db_cache_size=32G SCOPE=spfile;
SQL> ALTER SYSTEM SET shared_pool_size=16G SCOPE=spfile;
SQL> ALTER SYSTEM SET undo_retention=86400 SCOPE=spfile;
# 配置多租户特性(可选)
SQL> CREATE PLUGGABLE DATABASE fgedudb_pdb1 ADMIN USER pdbadmin IDENTIFIED BY password;
SQL> ALTER PLUGGABLE DATABASE fgedudb_pdb1 OPEN;
# 关闭审计(可选)
SQL> ALTER SYSTEM SET audit_trail=’NONE’ SCOPE=spfile;
# 配置密码过期策略
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
# 重启数据库使参数生效
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;
15. 备份配置
配置RMAN备份以保护数据库。
$ vi /oracle/app/oracle/scripts/rman_backup.sh
#!/bin/bash
ORACLE_HOME=/oracle/app/oracle/product/12.2.0/db_1
ORACLE_SID=fgedudb1
export ORACLE_HOME ORACLE_SID
$ORACLE_HOME/bin/rman target / <
16. 安装验证
验证RAC集群和数据库的状态。
$ crsctl status cluster -v
# 验证数据库实例状态
$ sqlplus / as sysdba
SQL> SELECT instance_name, status FROM v$instance;
# 验证RAC节点信息
SQL> SELECT * FROM gv$instance;
# 验证ASM磁盘组状态
SQL> SELECT name, state FROM v$asm_diskgroup;
# 验证多租户状态(如果使用)
SQL> SELECT name, open_mode FROM v$pdbs;
# 验证服务状态
$ srvctl status database -d fgedudb
$ srvctl status listener
$ srvctl status scan
本文详细介绍了Oracle 12cR2 RAC集群在国产麒麟Kylin v10上的安装配置过程,包括硬件环境要求、网络配置、操作系统准备、Grid Infrastructure安装、ASM磁盘组配置、数据库安装、后安装配置和优化等步骤。from:www.itpux.com
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
