oracle rac 安装文档

news2024/11/18 15:46:39

oracle rac 安装文档

  • 一、前期准备
    • 1.1 操作系统centos 7.4 *2台,要求双网卡
    • 1.2 主机名:oracle01,oracle02
    • 1.3 数据库版本:oracle 11g rac
    • 1.4 空间要求:
      • 1.4.1 系统:(系统使用磁盘)
      • 1.4.2 生产存储:
      • 1.4.3 本次虚拟机搭建测试
    • 1.5 字符集:
    • 1.6 数据块大小
    • 1.7 数据库名:
    • 1.8 ip规划
  • 二、获取软件
  • 三、修改host文件(root用户操作,两台主机均操作)
    • 3.1 编辑/etc/hosts文件,两台主机保持一致:
    • 3.2 修改主机名
    • 3.3 测试是否修改成功:
  • 四、关闭Selinux和防火墙(root用户,两台主机均操作)
  • 五、修改内核参数(root用户,两台主机均操作)
    • 5.1 编辑/etc/sysctl.conf配置文件:
    • 5.2 修改nproc参数
  • 六、添加用户(root用户,两台主机均操作)
    • 6.1 创建用户和组
    • 6.2 创建oracle用户和grid用户并修改密码
    • 6.3 创建目录并授权
  • 七、安装依赖包(root用户,两台主机均操作)
  • 八、修改系统资源限制(root用户,两台主机均操作)
  • 九、控制给用户分配的资源
  • 十、关闭透明页
  • 十一、关闭numactl(关闭交换页面)
  • 十二、修改下时区
  • 十三、配置NOZEROCONF
  • 十四、修改nsswitch.conf
  • 十五、关闭acahi-daemon
  • 十六、时间同步,并禁用ntpd
  • 十七、两台用户互信(oracle,grid用户均需要设置)
    • 17.1 oracle用户
    • 17.2 grid用户
  • 十八、配置oracle和grid用户的环境变量
  • 十九、使用starwind软件模拟生产物理存储
  • 二十、连接共享存储
    • 20.1 linux客户端安装iscsi
    • 20.2 搜索服务端iscsi target
    • 20.3 连接服务端iscsi共享存储
    • 20.4 查看如下说明已经连接到了共享存储
  • 二十一、multipath
    • 21.1 安装multipath
    • 21.2 查看共享盘的scsi_id
    • 21.3 配置multipath
    • 21.4 激活multipath多路径
    • 21.5 绑盘给权限
    • 21.6 生效
  • 二十二、安装grid
    • 22.1 上传包到节点1
    • 22.2 切换用户并解压
    • 22.3 安装cvuqdisk(本步骤需要两个节点执行)
    • 22.4 安装vnc并启动
    • 22.5 启动安装程序并安装grid
  • 二十三、磁盘组配置
    • 23.1 创建system盘
  • 二十四、安装数据库软件
    • 24.1 修改权限给oracle用户
    • 24.2 打开vnc
    • 24.3 安装数据库软件
  • 二十五、创建数据库
  • 二十六、监听创建
  • 二十七、本地连接
  • 二十八、数据库日常管理
    • 28.1 grid管理
    • 28.2 数据库的日常管理

最理想的rac架构图
在这里插入图片描述
视频借鉴:https://www.bilibili.com/video/BV1CG4y1f7SN?p=11&spm_id_from=pageDriver&vd_source=e54ea314394eafd152fe725b5fc7328e

一、前期准备

1.1 操作系统centos 7.4 *2台,要求双网卡

***安装系统前先看下1.4的空间要求***
这里面注意下:
安装centos系统时安装带GUI的系统,最少两个网卡,语言支持中文+英文,系统使用的磁盘两块
第一块、/ 80G
第二块、/u01 100G

在这里插入图片描述
在这里插入图片描述
附加选项也都勾上
在这里插入图片描述
自己配置分区,特别注意swqp 与内存大小一致
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
分区完是这样
在这里插入图片描述

1.2 主机名:oracle01,oracle02

1.3 数据库版本:oracle 11g rac

1.4 空间要求:

1.4.1 系统:(系统使用磁盘)

/  80G;
/u01 100G;

1.4.2 生产存储:

grid:3*1G (表决磁盘)
/system:500G:250G*2(存放系统文件磁盘)
/data:4T:1T*4(数据盘)
/archive:2T:500G*4(归档盘)
/backup:12T:1200G*10(备份盘,一般为数据盘*3)

1.4.3 本次虚拟机搭建测试

		grid:3*1G
		/system:6G*1
		/data:2G*3
		/backup:4G*2

1.5 字符集:

	GBK(根据业务需求)

1.6 数据块大小

	8192(官方推荐)

1.7 数据库名:

	racdb1,racdb2

1.8 ip规划

主机名oracle01oracle02
操作系统centos7.4centos7.4
public ip192.168.19.77192.168.19.78
virtual ip192.168.19.88192.168.19.89
private ip192.168.60.128192.168.60.129
Scan ip192.168.19.123
物理存储192.168.1.6

Public IP:服务器物理网卡IP,即对外提供服务的IP
Priviate IP:服务器内网、私网IP,主要用于数据库间同步及心跳
Virtual IP:虚拟IP,与Public IP处于同一个网段
Scan IP:11g后创建集群新增的功能,集群对外服务提供的VIP
物理存储:因为本次安装是使用vmware,再本机安装的starwind存储模拟生产,ip是本机ip
注意:主机名不要含大写并且不超过15个字符,否则后续安装会有问题
两台主机间需要挂载的磁盘是共享磁盘!!!(用于做ASM磁盘)
安装过程中注意hostname主机名变化,也会导致执行部分脚本失败情况

二、获取软件

在这里插入图片描述
1和2是数据库软件;
3是rac软件;
p18370031 这个补丁包是为了解决linux 7 与oracle 11g的一个兼容问题
packages.tar.gz是oracle所需要的依赖包;

三、修改host文件(root用户操作,两台主机均操作)

3.1 编辑/etc/hosts文件,两台主机保持一致:

192.168.19.77 oracle01
192.168.19.78 oracle02
192.168.19.88 oracle01-vip
192.168.19.89 oracle02-vip
192.168.60.128 oracle01-priv
192.168.60.129 oracle02-priv
192.168.19.123 cluster-scan

3.2 修改主机名

修改Oracle01主机名:hostname oracle01
修改Oracle02主机名:hostname oracle02
永久修改:vim /etc/hostname

3.3 测试是否修改成功:

在192.168.19.77主机上执行ping:
ping oracle01和ping oracle02查看是否成功,成功即说明host文件修改成功
在这里插入图片描述

四、关闭Selinux和防火墙(root用户,两台主机均操作)

编辑vim /etc/selinux/config
在这里插入图片描述
再临时关闭

setenforce 0

关闭防火墙

# 关闭防火墙
systemctl stop firewalld
# 关闭开机自启动
systemctl disable firewalld

五、修改内核参数(root用户,两台主机均操作)

5.1 编辑/etc/sysctl.conf配置文件:

fs.aio-max-nr=1048576
fs.file-max=6815744
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=1048586
kernel.panic_on_oops=1
vm.nr_hugepages=2000
kernel.shmmax=4294967296
kernel.shmall=1048576
kernel.shmmni=4096

wq退出保存后使用命令 sysctl -p 使其生效
shmmax:单个共享内存段最大值>=SGA
oracle内存=物理内存60%=SGA(80%)+PGA(20%)
shmmax = 物理内存8
0.60.81024*1024=4,026,531.84
shmall = shmmax/PAGESIZE(4096,可通过getconf PAGESIZE命令获取)
shmmni=4096(共享内存段的最大数量,一般为4096)
vm.nr_hugepages 大页,系统内存(SGA/2+200 单位M)

5.2 修改nproc参数

echo "* - nproc 16384 ">/etc/security/limits.d/20-nproc.conf

六、添加用户(root用户,两台主机均操作)

6.1 创建用户和组

groupadd -g 60001 oinstall
groupadd -g 60002 dba
groupadd -g 60003 oper
groupadd -g 60004 asmdba
groupadd -g 60005 asmoper
groupadd -g 60006 asmadmin

6.2 创建oracle用户和grid用户并修改密码

useradd -u 61001 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
useradd -u 61002 -g oinstall -G dba,asmdba,oper oracle
echo "Pass123456" | passwd --stdin grid
echo "Pass123456" | passwd --stdin oracle

6.3 创建目录并授权

mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/grid
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory

chmod -R 755 /u01
chown -R grid:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chown -R grid:oinstall /u01/app/oraInventory

七、安装依赖包(root用户,两台主机均操作)

现在将第二步中的package.tar.gz包解压并执行

cd packages
sh install.sh

再配置本地yum源因为有三个包不包含在内

mount /dev/sr0 /mnt
vim /etc/yum.repo.d/local.repo

#将下面的复制进去
[local]
name=local
baseurl=file:///mnt
gpgcheck=0
enabled=1
# wq 保存退出
#再执行这个
yum makecache
yum -y install elfutils-libelf-devel libXrender-devel fontconfig-devel

检验所有安装包是否安装

rpm -q bc binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ elfutils-libelf elfutils-libelf-devel glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libxcb libX11 libXau libXi libXtst libXrender libXrender-devel make net-tools nfs-utils smartmontools sysstat e2fsprogs e2fsprogs-libs fontconfig-devel expect unzip openssh-clients readline | grep "未安装"

如果没有过滤出来的,说明依赖安装完毕

八、修改系统资源限制(root用户,两台主机均操作)

编辑/etc/security/limits.conf

vim /etc/security/limits.conf

添加如下参数

 grid soft nofile 65536
 grid hard nofile 65536
 grid soft stack 32768
 grid hard stack 32768
 grid soft nproc 16384
 grid hard nproc 16384

 oracle soft nofile 16384
 oracle hard nofile 65536
 oracle soft stack 10240
 oracle hard stack 32768
 oracle soft nproc 16384
 oracle hard nproc 16384
 # 内存锁,防止内存全部使用使服务被kill,一般(物理内存的80%)6.4*1024*1024
 oracle hard memlock 7340032
 oracle soft memlock 7340032

九、控制给用户分配的资源

cat <<EOF>>/etc/pam.d/login
session required pam_limits.so
session required /lib64/security/pam_limits.so
EOF

十、关闭透明页

查看透明页情况,有效提升性能,改为never

cat /sys/kernel/mm/transparent_hugepage/enabled
#结果为
[always] madvise never

设置开机自关闭,防止打开

vim /etc/rc.d/rc.local

填入下面代码:

if test -f /sys/kernel/mm/transparent_hugepage/enabled;then
    echo never>/sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag;then
    echo never>/sys/kernel/mm/transparent_hugepage/defrag
fi

加执行权限

chmod +x /etc/rc.d/rc.local

十一、关闭numactl(关闭交换页面)

vim /etc/default/grub

再quiet 后 添加 numa=off
在这里插入图片描述
执行命令使生效

grub2-mkconfig -o /etc/grub2.cfg

十二、修改下时区

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock

十三、配置NOZEROCONF

配置动态路由协议,自动生成一些ip,对集群有影响

echo "NOZEROCONF=yes" >> /etc/sysconfig/network

十四、修改nsswitch.conf

vim /etc/nsswitch.conf

后面加上nis
在这里插入图片描述

十五、关闭acahi-daemon

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

十六、时间同步,并禁用ntpd

同步下时间

/usr/sbin/ntpdate -u 182.92.12.11 && /usr/sbin/hwclock -w

禁用ntpd

systemctl stop ntpd
systemctl disabled ntpd

十七、两台用户互信(oracle,grid用户均需要设置)

17.1 oracle用户

su - oracle

node1中 设置

ssh-keygen -t rsa
ssh-keygen -t dsa
cd .ssh/
cat *.pub >> authorized_keys

node2中设置

su - oracle
ssh-keygen -t rsa
ssh-keygen -t dsa
cd .ssh/

node1中设置

scp authorized_keys 192.168.19.78:/home/oracle/.ssh/

node2中设置

cat *.pub >> authorized_keys
scp authorized_keys 192.168.19.77:/home/oracle/.ssh/

17.2 grid用户

su - grid

node1中 设置

ssh-keygen -t rsa
ssh-keygen -t dsa
cd .ssh/
cat *.pub >> authorized_keys

node2中设置

su - grid
ssh-keygen -t rsa
ssh-keygen -t dsa
cd .ssh/

node1中设置

scp authorized_keys 192.168.19.78:/home/grid/.ssh/

node2中设置

cat *.pub >> authorized_keys
scp authorized_keys 192.168.19.77:/home/grid/.ssh/

注意需要互相验证下,每一个,做到免密登录不需要输入回车

十八、配置oracle和grid用户的环境变量

第一台oracle用户的环境变量

su - oracle
vim .bash_profile

复制粘贴到最下面

PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_UNQNAME=racdb
ORACLE_BASE=/u01/app/oracle;export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1;export ORACLE_HOME
ORACLE_SID=racdb1; export ORACLE_SID
ORACLE_TERM=xterm;export ORACLE_TERM
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;export CLASSPATH
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";export NLS_DATE_FORMAT
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANG

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin:$PATH;export PATH

THREADS_FLAG=native;export THREADS_FLAG
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

第二台oracle用户的环境变量

su - oracle
vim .bash_profile

复制粘贴到最下面

PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_UNQNAME=racdb
ORACLE_BASE=/u01/app/oracle;export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1;export ORACLE_HOME
ORACLE_SID=racdb2; export ORACLE_SID
ORACLE_TERM=xterm;export ORACLE_TERM
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;export CLASSPATH
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";export NLS_DATE_FORMAT
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANG

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin:$PATH;export PATH

THREADS_FLAG=native;export THREADS_FLAG
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

第一台grid用户的环境变量

su - grid
vim .bash_profile

复制粘贴到最下面

PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
ORACLE_BASE=/u01/app/grid;export ORACLE_BASE
ORACLE_HOME=/u01/app/11.2.0/grid;export ORACLE_HOME
ORACLE_SID=+ASM1; export ORACLE_SID
ORACLE_TERM=xterm;export ORACLE_TERM
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";export NLS_DATE_FORMAT

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin:$PATH;export PATH

THREADS_FLAG=native;export THREADS_FLAG
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

第二台grid用户的环境变量

su - grid
vim .bash_profile

复制粘贴到最下面

PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
ORACLE_BASE=/u01/app/grid;export ORACLE_BASE
ORACLE_HOME=/u01/app/11.2.0/grid;export ORACLE_HOME
ORACLE_SID=+ASM2; export ORACLE_SID
ORACLE_TERM=xterm;export ORACLE_TERM
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";export NLS_DATE_FORMAT

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin:$PATH;export PATH

THREADS_FLAG=native;export THREADS_FLAG
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

十九、使用starwind软件模拟生产物理存储

请查看该网址:https://www.modb.pro/db/587671

二十、连接共享存储

20.1 linux客户端安装iscsi

yum install -y iscsi-initiator-utils*

20.2 搜索服务端iscsi target

iscsiadm -m discovery -t st -p 192.168.1.6

20.3 连接服务端iscsi共享存储

iscsiadm -m node -T iqn.2008-08.com.starwindsoftware:192.168.1.6-lzw -p 192.168.1.6 -l

20.4 查看如下说明已经连接到了共享存储

[root@oracle01 ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   80G  0 disk 
├─sda1   8:1    0   72G  0 part /
└─sda2   8:2    0    8G  0 part [SWAP]
sdb      8:16   0  100G  0 disk 
└─sdb1   8:17   0  100G  0 part /u01
sdc      8:32   0    1G  0 disk 
sdd      8:48   0    1G  0 disk 
sde      8:64   0    1G  0 disk 
sdf      8:80   0    6G  0 disk 
sdg      8:96   0    2G  0 disk 
sdh      8:112  0    2G  0 disk 
sdi      8:128  0    2G  0 disk 
sdj      8:144  0    3G  0 disk 
sdk      8:160  0    3G  0 disk 
sdl      8:176  0    3G  0 disk 
sdm      8:192  0    7G  0 disk 
sdn      8:208  0    7G  0 disk 
sr0     11:0    1  4.2G  0 rom  

二十一、multipath

备注:21.1-21.5两个节点执行

21.1 安装multipath

yum -y install device-mapper*
mpathconf --enable --with_multipathd y

21.2 查看共享盘的scsi_id

[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdc
2513bf6f11008132d
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdd
2d46d86ae6ba692b8
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sde
256bc5d247aa2477a
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdf
2bf5447713569f3e1
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdg
20dfb9eaff54c9036
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdh
2e2caabb88302fb4e
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdi
282c253f96e321cdb
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdj
235f4805ccd823628
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdk
2a3c096031254361a
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdl
2ea936ed2d5b3fbae
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdm
23b1ae22ff6ea482a
[root@oracle01 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdn
24656b3d4e27e988e

21.3 配置multipath

vim /etc/multipath.conf

拷贝进去,这里的wwid是上面21.2获取的scsi_id,注意替换

defaults {
user_friendly_names yes
}
blacklist { 
devnode "^sda"
devnode "^sdb"
}
multipaths {
multipath {
wwid "2513bf6f11008132d"
alias grid01
}
multipath {
wwid "2d46d86ae6ba692b8"
alias grid02
}
multipath {
wwid "256bc5d247aa2477a"
alias grid03
}
multipath {
wwid "2bf5447713569f3e1"
alias system01
}
multipath {
wwid "20dfb9eaff54c9036"
alias data01
}
multipath {
wwid "2e2caabb88302fb4e"
alias data02
}
multipath {
wwid "282c253f96e321cdb"
alias data03
}
multipath {
wwid "235f4805ccd823628"
alias arch01
}
multipath {
wwid "2a3c096031254361a"
alias arch02
}
multipath {
wwid "2ea936ed2d5b3fbae"
alias arch03
}
multipath {
wwid "23b1ae22ff6ea482a"
alias backup01
}
multipath {
wwid "24656b3d4e27e988e"
alias backup02
}
}

21.4 激活multipath多路径

multipath -F
multipath -v2

21.5 绑盘给权限

执行

for i in c d e f g h i j k l m n;do
echo "KERNEL==\"sd*\",ENV{DEVTYPE}==\"disk\",SUBSYSTEM==\"block\",PROGRAM==\"/usr/lib/udev/scsi_id -g -u -d \$devnode\",RESULT==\"`/usr/lib/udev/scsi_id -g -u /dev/sd$i`\", RUN+=\"/bin/sh -c 'mknod /dev/asm-disk$i b  \$major \$minor; chown grid:asmadmin /dev/asm-disk$i; chmod 0660 /dev/asm-disk$i'\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules
done

查看

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

在这里插入图片描述

21.6 生效

/sbin/udevadm control --reload-rules
/sbin/udevadm trigger --type=devices --action=change

二十二、安装grid

22.1 上传包到节点1

mkdir /soft

将这些包上传到soft
在这里插入图片描述
给oracle和grid用户/soft 目录权限

chown -R grid:oinstall /soft
chmod -R 775 /soft/

22.2 切换用户并解压

su - grid
unzip -q p13390677_112040_Linux-x86-64_1of7.zip
unzip -q p13390677_112040_Linux-x86-64_2of7.zip
unzip -q p13390677_112040_Linux-x86-64_3of7.zip

22.3 安装cvuqdisk(本步骤需要两个节点执行)

这个rpm包是grid包中的,所以切换回root 目录
节点1安装

#退出grid用户,回到root
exit
cd /soft/grid/rpm
rpm -ivh cvuqdisk-1.0.9-1.rpm
# 拷贝到节点2
scp cvuqdisk-1.0.9-1.rpm 192.168.19.78:/opt

节点2安装

rpm -ivh /opt/cvuqdisk-1.0.9-1.rpm

22.4 安装vnc并启动

yum install tigervnc-server -y
su - grid
vncserver

在这里插入图片描述
看到的 oracle01:1
用vnc客户端链接这个地址就好,打开终端
后续操作我们在vnc中执行
在这里插入图片描述

22.5 启动安装程序并安装grid

启动安装程序

cd /soft/grid
./runInstaller -jreLoc /etc/alternatives/jre_1.8.0

在这里插入图片描述
下面按照步骤走
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
加入简体中文
在这里插入图片描述
这里是看我们的那个scan ip的映射,下面的步骤需要填写的和这个一样
在这里插入图片描述
在这里插入图片描述
加入节点2 的hostsname
在这里插入图片描述
在这里插入图片描述
加完后,ssh链接测试,输入grid的用户密码
在这里插入图片描述
出现这个说明没有问题,点击ok,下一步
在这里插入图片描述
看下网卡网段有没有问题,没有问题直接下一步
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选择grid 最开始规划的表决磁盘,按照我们前面规划的选择,下一步
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这步是正在校验环境
在这里插入图片描述
出现这个说明内核参数因为本机限制有点问题,下面执行脚本解决
在这里插入图片描述
在这里插入图片描述
两台机器执行这个脚本

在这里插入图片描述
在这里插入图片描述
执行完点击ok,会重新检查
在这里插入图片描述
剩下的忽略
在这里插入图片描述
在这里插入图片描述
在安装到76%时,会让执行两个脚本
在这里插入图片描述
切换回root进行执行
执行第一个脚本(两台机器均需要执行)
在这里插入图片描述
在这里插入图片描述
执行第二个脚本之前需要打一个补丁(节点1执行)
就是当时上传的p18370031_112040_Linux-x86-64.zip
进入grid用户解压p18370031_112040_Linux-x86-64.zip

cd /soft/
unzip p18370031_112040_Linux-x86-64.zip
cd 18370031/
/u01/app/11.2.0/grid/OPatch/opatch apply
y
y

在这里插入图片描述
补丁完成
查看下

/u01/app/11.2.0/grid/OPatch/opatch lsinventory

在这里插入图片描述
说明两台机器补丁完成
CTRL + d退出到root用户,然后执行第二个脚本(两台机器依次执行)

/u01/app/11.2.0/grid/root.sh
回车

时间很长,耐心等待,出现下图说明执行成功
在这里插入图片描述
执行完成点击ok
在这里插入图片描述
这里面有一个报错,直接ok就行,是dns解析问题,忽略
在这里插入图片描述
下一步
在这里插入图片描述
yes
在这里插入图片描述
在这里插入图片描述
这样grid 安装完成

二十三、磁盘组配置

#还是再vnc中执行
asmca

在这里插入图片描述

23.1 创建system盘

点击create
在这里插入图片描述
在这里插入图片描述
出现这个就创建成功了
在这里插入图片描述
23.2 创建数据盘
在这里插入图片描述
23.3 创建归档盘
在这里插入图片描述
这样我们需要的盘就都加好了
在这里插入图片描述
asm管理界面和vnc 就可以关闭了

二十四、安装数据库软件

24.1 修改权限给oracle用户

chown -R oracle:oinstall /soft
chmod -R 775 /soft/
su - oracle

24.2 打开vnc

vncserver

进来后打开终端
在这里插入图片描述
进入软件目录

cd /soft/database
./runInstaller -jreLoc /etc/alternatives/jre_1.8.0

24.3 安装数据库软件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试互信
在这里插入图片描述
说明没问题,点击ok,下一步
在这里插入图片描述
语言这里加上简体中文
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后点击安装,到下面这步
在这里插入图片描述
这个需要解决
在这里插入图片描述
复制下这个目录/u01/app/oracle/product/11.2.0/db_1/sysman/lib/
在oracle用户中进入这个目录

cd /u01/app/oracle/product/11.2.0/db_1/sysman/lib/
vim ins_emagent.mk

搜索这个字符
在这里插入图片描述
在后面添加 -lnnz11 保存
在这里插入图片描述
然后点击retry
在这里插入图片描述
需要再两台机器中执行脚本(两台)
在这里插入图片描述

/u01/app/oracle/product/11.2.0/db_1/root.sh
回车

在这里插入图片描述
在这里插入图片描述
执行完成后点击ok
在这里插入图片描述
这样我们的数据库软件就安装完成了,点击关闭
在这里插入图片描述

二十五、创建数据库

还在vnc窗口输入命令

dbca

在这里插入图片描述
创建数据库步骤
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
多路保存redolog
键入+SYSTEM01
键入+ARCH01
点击ok,然后下一步
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设置完后点击关闭
在这里插入图片描述
在这里插入图片描述
设置完成后,点击下一步

在这里插入图片描述
注意生产都给20G
测试给小一点
在这里插入图片描述
在这里插入图片描述
每个都调大点
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意每个都要改
在这里插入图片描述
每个机器都需要3个
所以需要添加两个日志文件
在这里插入图片描述
在这里插入图片描述
配置完成,点击下一步
在这里插入图片描述
弹出来我们设置的响应参数文档,保存下
在这里插入图片描述
选好路径后,点击ok
在这里插入图片描述
这样的话,数据库就开始安装了,这个过程比较慢,需要等待啦
到这步我们数据库就算创建完成了,点击退出,关掉vnc
在这里插入图片描述

二十六、监听创建

集群的监听默认是安装好的
查看下监听状态

su - oracle
lsnrctl status

在这里插入图片描述
监听停止和启动

lsnrctl stop
lsnrctl start

二十七、本地连接

在这里插入图片描述

二十八、数据库日常管理

28.1 grid管理

先在root用户的.bash_profile
添加:PATH= P A T H : / u 01 / a p p / 11.2.0 / g r i d / b i n : PATH:/u01/app/11.2.0/grid/bin: PATH:/u01/app/11.2.0/grid/bin:HOME/bin

source .bash_profile

grid集群日常管理命令

# 查看高可用状态
crsctl check crs
# 查看资源清单
crs_stat -t
# 查看资源详细情况
crsctl stat res -t
# 停止单台机器高可用
crsctl stop crs
# 启动单台机器高可用
crsctl start crs
# 所有资源全部停止
crs_stop -all
# 所有资源全部启动
crs_start -all
# 单个资源停止(两台机器)
crs_stop ora.LISTENER.lsnr
# 单个资源启动(两台机器)
crs_start ora.LISTENER.lsnr
# 停止数据库(两台)
srvctl stop database -d racdb
# 启动数据库(两台)
srvctl start database -d racdb
# 停止单台数据库
srvctl stop database -d racdb -i oracle01(实例名)
# 启动单台数据库
srvctl start database -d racdb -i oracle01(实例名)

查看磁盘空间

su - grid
asmcmd
lsdg

显示如下:

在这里插入图片描述

28.2 数据库的日常管理

1.数据库启停
登录数据库:sqlplus “/as sysdba”
停止数据库:shutdown immediate
启动数据库:startup
2.密码过期处理
查看表结构
desc dba_profiles;
在这里插入图片描述
查看密码期限:默认180天,生产环境需要修改
select * from dba_profiles where profile=‘DEFAULT’ and resource_name=‘PASSWORD_LIFE_TIME’;
在这里插入图片描述
设置密码无期限

alter profile default limit PASSWORD_LIFE_TIME unlimited;

在这里插入图片描述
3. 审计一般情况下,都要关闭

show parameter audit_trail;

在这里插入图片描述
关闭审计:

alter system set audit_trail=none scope=spfile;

重启生效:

shutdown immediate;
startup

在这里插入图片描述
4. 归档开启、闪回以及他们停止是如何操作
生产库的归档是要开启的
查看归档是否开启:

archive log list;

在这里插入图片描述
查看闪回:

select flashback_on from v$database;

都是未开启

在这里插入图片描述
查看归档目录:

show parameter recovery;

在这里插入图片描述
如何设置:

-- 设置归档文件大小,这里设置1G,生产设置
alter system set db_recovery_file_dest_size='1G';
-- 设置归档文件目录
alter system set db_recovery_file_dest='+arch01';
-- 集群设置为false
alter system set cluster_database=false scope=spfile;

设置完成后,需要开启归档,前提是关闭一台数据库
第二台机器

shutdown immediate;

第一台机器:

-- 也先关掉
shutdown immediate;
-- 进入mount状态
startup mount;
-- 开启归档日志
alter database archivelog;
-- 开启闪回
alter database flashback on;
-- 改完后开启集群配置
alter system set cluster_database=true scope=spfile;
-- 重启
shutdown immediate;
startup

第二台机器启动

startup

第一台机器查询闪回和归档

archive log list;
select flashback_on from v$database;

都已经开启
在这里插入图片描述
查看下第二台机器
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/445063.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python基于mediapipe开发构建人体姿态检测系统

之前做的人体姿态检测大都是基于openpose或者是yolo-pose之类的技术框架&#xff0c;这里主要是想基于一个开源的实现来完成人体姿态检测。首先看下效果图&#xff1a; Mediapipe是google的一个开源项目&#xff0c;支持跨平台的常用ML方案。项目在这里&#xff0c;如下所示&am…

软件挖掘|软件缺陷|蜕变关系

目录 软件无处不在 软件发展不是一个简单的任务 识别软件缺陷 软件缺陷定位 使用bug报告识别有缺陷的源代码 使用标准IR方法建模相关性 VSM rVSM 根据bug报告和源代码学习共享主题&#xff0c;并根据主题衡量相关度 学习结合大量手工制作的特性 如何建模&#xf…

页表结构详细说明

一、页表 1. 内存地址的分解 我们知道linux采用了分页机制&#xff0c;通常采用四级页表&#xff0c;页全局目录(PGD)&#xff0c;页上级目录(PUD)&#xff0c;页中间目录(PMD)&#xff0c;页表(PTE)。如下&#xff1a; 其含义定义在arch/arm64/include/asm/pgtable-hwdef.…

应急响应 - Windows启动项分析,Windows计划任务分析,Windows服务分析

「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 Windows应急响应 一、启动项分析1、msconfig2、gpedit.msc3、注册表4、msinfo325、启动菜…

【数据结构实验】哈希表设计

【数据结构实验】哈希表设计 简介 针对本班同学中的人名设计一个哈希表&#xff0c;使得平均查找长度不超过R&#xff0c;完成相应的建表和查表程序。文末贴出了源代码。 需求分析 假设人名为中国人姓名的汉语拼音形式&#xff0c;待填入哈希表的人名共有三十个左右&#x…

汇编指令角度掌握函数调用堆栈详细过程

函数参数从右向左依次压栈push&#xff0c;call 要先把下一行指令 压栈&#xff0c; 根据如下代码思考两个问题&#xff1a; 问题一&#xff1a;main函数调用sum&#xff0c;sum执行完以后&#xff0c;怎么知道回到哪个函数中&#xff1f; 问题二&#xff1a;sum函数执行完&…

使用树状图可视化聚类

一般情况下&#xff0c;我们都是使用散点图进行聚类可视化&#xff0c;但是某些的聚类算法可视化时散点图并不理想&#xff0c;所以在这篇文章中&#xff0c;我们介绍如何使用树状图&#xff08;Dendrograms&#xff09;对我们的聚类结果进行可视化。 树状图 树状图是显示对象…

vue 项目中 向数组 添加元素 的方式

学习目标&#xff1a; 提示&#xff1a;了解 vue 向数组 添加元素 的三种方式 学习内容&#xff1a; 提示&#xff1a; vue 向数组 添加元素 的三种方式 方法&#xff1a; push()unshift()splice() 总结&#xff1a; 提示&#xff1a;这里总结相关的知识 1、push() 含义&a…

网络编程之 Socket 套接字(使用数据报套接字和流套接字分别实现一个小程序(附源码))

文章目录 1. 什么是网络编程2. 网络编程中的基本概念1&#xff09;发送端和接收端2&#xff09;请求和响应3&#xff09;客户端和服务端4&#xff09;常见的客户端服务端模型 3. Socket 套接字1&#xff09;Socket 的分类2&#xff09;Java 数据报套接字通信模型3&#xff09;J…

【Redis7】Redis7 集群(重点:哈希槽分区)

【大家好&#xff0c;我是爱干饭的猿&#xff0c;本文重点介绍Redis7 集群概述、作用、集群算法-分片-槽位slot、集群环境案例步骤、集群常用操作命令和CRC16算法。 后续会继续分享Redis7和其他重要知识点总结&#xff0c;如果喜欢这篇文章&#xff0c;点个赞&#x1f44d;&am…

ChatGPT 的数据保护盲点以及安全团队如何解决这些盲点

自成立以来的短时间内&#xff0c;ChatGPT 和其他生成式 AI 平台理所当然地赢得了终极生产力助推器的声誉。 然而&#xff0c;能够按需快速生成高质量文本的技术&#xff0c;可能同时暴露敏感的公司数据。 最近发生的一起事件&#xff0c;三星软件工程师将专有代码粘贴到 ChatG…

SpringBoot集成MyBatis-yml方式详解

SpringBoot集成MyBatis-yml方式详解 简介&#xff1a;spring boot整合mybatis开发web系统目前来说是市面上主流的框架&#xff0c;每个Java程序和springboot mybatis相处的时间可谓是比和自己女朋友相处的时间都多&#xff0c;但是springboot mybatis并没有得到你的真爱&#x…

涨点技巧: 谷歌强势推出优化器Lion,引入到Yolov8,内存更小、效率更高,秒杀Adam(W)

1.Lion优化器介绍 论文:https://arxiv.org/abs/2302.06675 代码:automl/lion at master google/automl GitHub 1.1 简单、内存高效、运行速度更快 1)与 AdamW 和各种自适应优化器需要同时保存一阶和二阶矩相比,Lion 只需要动量,将额外的内存占用减半; 2)由于 Lion…

企业批量寄件快递教程

了解企业批量寄快递操作流程之前&#xff0c;我们先来解答一下这个问题&#xff1a;什么样的企业需要批量寄快递&#xff1f; 电商行业就不提&#xff0c;本身二者就是相互依存的关系。就商务件来说&#xff0c;具体什么样的企业需要批量寄快递&#xff0c;其实很简单&#xf…

Ansys Zemax | 如何使用坐标返回功能

概述 这篇文章简单介绍了如何使用OpticStudio中的坐标返回(Coordinate Return)功能。坐标返回功能可以非常方便的使系统坐标自动返回到目标表面处。&#xff08;联系我们获取文章附件&#xff09; 介绍 在OpticStudio的序列模式中&#xff0c;我们经常会使用坐标间断(Coordinat…

Netty 源码解析(上)

序 Netty的影响力以及使用场景就不用多说了&#xff0c; 去年10月份后&#xff0c;就着手研究Netty源码&#xff0c;之前研究过Spring源码&#xff0c;MyBatis源码&#xff0c;java.util.concurrent源码&#xff0c;tomcat源码&#xff0c;发现一个特点&#xff0c;之前的源码都…

PHPStudy安装imagick扩展

phpstudy软件管理中没有自带安装imagick扩展&#xff0c;只能自己安装了。 下面将用几个步骤来进行phpstudy imagick安装&#xff1a; 1.下载imagick 下载地址 ImageMagick – Download 下载电脑版本相对的64/32位&#xff0c;最新的版本 2.安装imagick 双击刚刚下载的文件…

三维可视化如何助力智慧城市建设?

在智慧城市建设中&#xff0c;如何将城市各类数据可视化是一大难题&#xff0c;目前市面上可视化的方法很多&#xff0c;如传统的三维建模、地物模型、建筑模型等。 这些方法各有利弊&#xff0c;从其实现方式来看&#xff1a; GIS/BIM是将所有的空间信息全部整合到一起; 从技术…

第三章 法的渊源与法的分类

目录 第一节 法的渊源的分类 一、法的渊源释义二、法的渊源种类 第二节 正式法源 一、正式法源的含义二、当代中国的正式法源三、正式法源的一般效力原则 第三节 非正式法源 一、当代中国的非正式法源 第四节 法的分类 一、法的一般分类二、法的特殊分类 第一节 法的渊源的…

SSH连接本地centerOS系统配置

SSH连接本地linux系统 前提&#xff1a;安装好centerOS系统并能启动 目标&#xff1a;连通外网并设置SSH 1.网卡配置文件路径 打开linux本地终端 快捷键一般是ctrlaltf2(f1~f3) 这里是管理员登录,密码是隐藏式的输入(输入看不见) 这样就显示成功登录了&#xff01; 下面查…