Oracle 11g Rac搭建「建议收藏」

2022-11-09 16:15:17 浏览数 (2)

大家好,又见面了,我是你们的朋友全栈君。

Oracle 11g Rac搭建(RedHat 6.9 Oracle 11.2.0.4)

  • 系统安装规划
  • 网络规划
  • 用户组规划
  • 存储规划
  • 配置yum源,网络规划,hosts文件等(双节点执行)

如果是 64bit,需要检查以下的 Packages。以下重复包名称的部分是64bit,注明 32bit的是 32bit packages。如果是32bit OS,那么重复包名的只需要32bit 部分的包。注意不同版本Linux 系统后面的版本不太一样。 yum install oracle-rdbms-server-11gR2-preinstall-1.0-12.el6.x86_64.rpm 检查方法:rpm -q binutils compat-libcap1 compat-libstdc ±33 compat-libstdc ±33 gcc gcc-c glibc glibc-devel ksh libgcc libstdc libstdc ±devel libaio libaio-devel make sysstat

代码语言:javascript复制
yum -y install binutils compat-libcap1 compat-libstdc  -33 compat-libstdc  -33 gcc gcc-c   glibc glibc-devel ksh libgcc libstdc   libstdc  -devel libaio libaio-devel make sysstat xorg-x11-apps
  • 将安装包上传到指定文件夹,此处个人习惯为’/soft’文件夹(安装节点上传即可)
  • 禁用selinux iptables和ntp (双节点执行),可以使用ntp进行集群同步,也可以使用rac ctss来进行集群同步,使用ctss集群同步必须关闭ntp服务,并将/etc/ntp.conf 配置文件重命名方可生效
代码语言:javascript复制
vi /etc/selinux/config
   selinux=disabled
setenforce 0
getenforce 
service iptables status
service iptables stop
chkconfig iptables off 
service ntpd status
mv /etc/ntp.conf /etc/ntp.conf.bak
  • 创建用户和组 (双节点执行)
代码语言:javascript复制
/usr/sbin/groupadd -g 501 oinstall
/usr/sbin/groupadd -g 502 dba
/usr/sbin/groupadd -g 504 asmadmin
/usr/sbin/groupadd -g 506 asmdba
/usr/sbin/groupadd -g 507 asmoper
/usr/sbin/useradd -u 501 -g oinstall -G asmadmin,asmdba,asmoper grid
passwd grid
id grid
/usr/sbin/useradd -u 502 -g oinstall -G dba,asmdba oracle	
passwd oracle
id oracle
  • 修改gird 用户的环境变量(双节点执行),以上 grid 的 bash_profile, 仅供参考,还有一些参数可以自行加入。 使配置文件生效,同样在其他节点的Grid用户.bash_profile 中加入,并注意修改 ORACLE_SID= ASM2
代码语言:javascript复制
export LANG=en_US.utf8
export LANGUAGE=en_US.utf8
export ORACLE_SID= ASM1
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0/grid_home
export ORACLE_UNQNAME= ASM
PATH=$PATH:$ORACLE_HOME/bin
export PATH
. .bash_profile
  • 修改oracle 用户的环境变量 (双节点执行)
代码语言:javascript复制
umask 022
export LANG=en_US.utf8
export LANGUAGE=en_US.utf8
export ORACLE_SID=rtbrac1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
export ORACLE_UNQNAME=rtbrac
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
PATH=$PATH:$ORACLE_HOME/bin
export PATH

创建软件目录(双节点执行),执行完测试 cd $ORACLE_HOME/BASE,两个用户进行测试

代码语言:javascript复制
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app/oraInventory

mkdir -p /u01/app/11.2.0/grid_home
mkdir -p /u01/app/grid/
chown -R grid:oinstall /u01/app/11.2.0/grid_home
chown -R grid:oinstall /u01/app/grid/
chmod -R 775 /u01/app/11.2.0/grid_home
chmod -R 775 /u01/app/grid/

mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle

mkdir -p /u01/app/oracle/product/11.2.0/db_1
chown -R oracle:oinstall /u01/app/oracle/product/11.2.0/db_1
chmod -R 775 /u01/app/oracle/product/11.2.0/db_1
  • 修改系统参数 (双节点执行)
代码语言:javascript复制
vi /etc/sysctl.conf

kernel.shmall = 4294967296

kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6553600
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

#配置巨页内存<大于(DB_SGA ASM_SGA)/2M>
vm.nr_hugepages = 25600

/sbin/sysctl -p

查看巨页内存配置
cat /proc/meminfo



修改shell limits

vi /etc/security/limits.conf

grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
#配置巨页内存<大于(DB_SGA ASM_SGA)kb>
*      soft memlock 52428800  
*      hard memlock 52428800   
配置巨页内存引导信息
vi /etc/grub.conf
在kernel xxx最后加入transparent_hugepage=never

vi /etc/pam.d/login
session required pam_limits.so
  • 修改/etc/hosts 文件,在所有节点添加以下内容
代码语言:javascript复制
#tbrac-public-ip
192.168.230.129 tbrac1
192.168.230.130 tbrac2

#tbrac-vip
192.168.230.131 tbrac1-vip
192.168.230.132 tbrac2-vip

#tbrac-priv
10.10.10.1 tbrac1-priv
10.10.10.2 tbrac2-priv

#tbrac-scan
192.168.230.133 tbrac-scan
  • 配置用户等效性
代码语言:javascript复制
使用oracle/grid用户,配置oracle/grid用户等效性,在所有节点,所有用户执行;
ssh-keygen -t rsa
ssh-keygen -t dsa
使用oracle/grid用户,配置oracle/grid用户等效性,在节点1执行
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
ssh tbrac2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh tbrac2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
scp  ~/.ssh/authorized_keys tbrac2:~/.ssh/authorized_keys
验证grid用户等效性,在所有节点执行;
所有节点都运行
ssh racdb1 date
ssh racdb1 date 
ssh racdb1 date
ssh racdb1 date
oracle用户类似以上操作。
  • 配置共享存储

Centos 6

代码语言:javascript复制
------获取UUID
/sbin/scsi_id -u -g -d /dev/sdb
------编写udev配置规则,注意,不要换行,配置完成后,将1节点的配置规则scp到2节点即可,然后start_udev,"ls -l /dev/asm*" 验证即可。
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36000c299d702d39ac508922ea73d2e0a", NAME="asm-diskb", OWNER="grid", GROUP="asmadmin", MODE="0660"

Centos -7以上

代码语言:javascript复制
-----获取UUID,其他不变
/usr/lib/udev/scsi_id -g -u /dev/sdb
  • 利用runcluvfy脚本检查集群安装情况
代码语言:javascript复制
./runcluvfy.sh stage -pre crsinst -n tbrac1,tbrac2 -verbose
#-pre 检查集群安装状态
#-verbose 列出详细信息
  • 安装集群软件
代码语言:javascript复制
使用grid用户
cd /soft
unzip p13390677_112040_Linux-x86-64_3of7.zip 
cd /soft/grid
./runInstaller
#调用图形化安装集群软件

脚本执行如下: /u01/oraInventory/orainstRoot.sh 更改权限/u01/oraInventory. 添加组的读取和写入权限。 删除全局的读取, 写入和执行权限。 更改组名/u01/oraInventory 到 oinstall. 脚本的执行已完成。 /u01/grid/11.2.0/grid/root.sh Running Oracle 11g root.sh script… The following environment variables are set as: ORACLE_OWNER= grid ORACLE_HOME= /u01/grid/11.2.0/grid Enter the full pathname of the local bin directory: [/usr/local/bin]: Copying dbhome to /usr/local/bin … Copying oraenv to /usr/local/bin … Copying coraenv to /usr/local/bin … Creating /etc/oratab file… 提示[INS-20802],点ok出现这个错误是因为在Hosts配置文件里配置了SCAN,未启用DNS解析,不影响RAC正常运行;

提示成功,继续安装

提示[INS-20802],点ok出现这个错误是因为在Hosts配置文件里配置了SCAN,未启用DNS解析,不影响RAC正常运行;

集群启动成功!!

  • 创建ASM磁盘组

本次任务将创建 3 个asm 磁盘组,分别为:OCR,DATA,FRA。其中DATA 将存放数据库文件;FRA 存放闪回文件; 在grid 用户下,执行 asmca,启动 asm 磁盘组创建向导

  • 安装 oracle 软件

以oracle 用户登录到节点一,切换到软件安装目录,执行安装

两节点执行脚本

代码语言:javascript复制
以root 用户,在两个节点上执行脚本
/oracle/oracle/product/11.2.0/dbhome_1/root.sh 
Running Oracle 11g root.sh script...
执行完毕后,点击 ok,返回如下界面

创建数据库

本节操作在节点1执行; 以oracle 用户登录,执行 dbca 命令

至此,集群搭建成功!!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/189355.html原文链接:https://javaforall.cn

0 人点赞