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规划
主机名 | oracle01 | oracle02 |
---|---|---|
操作系统 | centos7.4 | centos7.4 |
public ip | 192.168.19.77 | 192.168.19.78 |
virtual ip | 192.168.19.88 | 192.168.19.89 |
private ip | 192.168.60.128 | 192.168.60.129 |
Scan ip | 192.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 = 物理内存80.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;
都已经开启
查看下第二台机器