安装环境oracle linux7.7 + vbox 5.2.30 + Oracle 19C
一、创建用户
groupadd -g 11001 oinstall
groupadd -g 11002 dba
groupadd -g 11003 oper
groupadd -g 11004 backupdba
groupadd -g 11005 dgdba
groupadd -g 11006 kmdba
groupadd -g 11007 asmdba
groupadd -g 11008 asmoper
groupadd -g 11009 asmadmin
groupadd -g 11010 racdba
useradd -u 11011 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle
useradd -u 11012 -g oinstall -G asmadmin,asmdba,asmoper,dba grid
- 创建工作目录
mkdir -p /u01/app/19.0.0/grid
mkdir -p /u01/app/grid
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/product/19.0.0/db_1
chown -R grid:oinstall /u01/app/grid
chown -R grid:oinstall /u01/app/19.0.0/grid
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory
- 修改用户密码
Passwd grid
Passwd oracle
- 修改主机名称
hostnamectl set-hostname rac1
hostnamectl set-hostname rac2
- 修改/etc/security/limits.conf文件
vi /etc/security/limits.conf
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
oracle hard memlock 6291456
oracle soft memlock 6291456
- 禁用SELINUX
vi /etc/selinux/config 修改下面SELINUX=disabled
- 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
- 禁用NTP
systemctl stop chronyd
systemctl disable chronyd
mv /etc/chrony.conf /etc/chrony.conf.bak
- 禁用avahi
systemctl stop avahi-daemon.socket
systemctl stop avahi-daemon.service
systemctl disable avahi-daemon.socket
systemctl disable avahi-daemon.service
- 修改修改/etc/pam.d/login文件
vi /etc/pam.d/login 添加如下
#oracle setting add
session required /lib/security/pam_limits.so
session required pam_limits.so
- 修改修改sysctl.conf配置文件
vi /etc/sysctl.conf 添加如下
kernel.shmmax = 277495689510912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
fs.file-max = 6815744
kernel.shmall = 67747971072
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 1
#net.core.somaxconn = 262144
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_probes = 6
net.ipv4.tcp_keepalive_intvl = 5
net.ipv4.tcp_timestamps = 0
fs.aio-max-nr = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
sysctl -p
十二、设置环境变量
Grid用户.bash_profile
export ORACLE_SID=+ASM1;
export ORACLE_BASE=/u01/app/grid;
export ORACLE_HOME=/u01/app/19.0.0/grid;
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";
export PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
Oracle用户.bash_profile
export PATH
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/db_1
export ORACLE_SID=orcl1
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/bin
export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
十三、配置/etc/hosts文件
192.168.56.11 rac1
192.168.56.12 rac2
192.168.56.21 rac1-vip
192.168.56.22 rac2-vip
172.168.56.11 rac1-private
172.168.56.12 rac2-private
192.168.56.95 scan-ip
192.168.56.96 scan-ip
十四、设置共享存储磁盘
1、使用虚拟软件工具vbox 划分磁盘,设置为可共享盘
/usr/lib/udev/scsi_id -g -u -d /dev/sdb
/usr/lib/udev/scsi_id -g -u -d /dev/sdc
/usr/lib/udev/scsi_id -g -u -d /dev/sdd
/usr/lib/udev/scsi_id -g -u -d /dev/sde
/usr/lib/udev/scsi_id -g -u -d /dev/sdf
/usr/lib/udev/scsi_id -g -u -d /dev/sdg
/usr/lib/udev/scsi_id -g -u -d /dev/sdh
/usr/lib/udev/scsi_id -g -u -d /dev/sdi
/usr/lib/udev/scsi_id -g -u -d /dev/sdj
2、执行如下命令:
for i in b c d e f g h i j;
do
echo "KERNEL==\"sd$i\", SUBSYSTEM==\"block\", PROGRAM==\"/usr/lib/udev/scsi_id -g -u -d /dev/\$name\", RESULT==\"`/usr/lib/udev/scsi_id -g -u -d /dev/sd\$i`\", SYMLINK+=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules
done
3、.重启udev以令ASM存储设备生效
systemctl restart systemd-udev-trigger.service
udevadm control --reload-rules
udevadm trigger
4、检查asm存储设备:
ls -l /dev/asm*
十五、设置ssh免密登录
1、在rac1执行
su - grid
cd .ssh
ssh-keygen
ssh-copy-id rac2
ssh rac2
su - oracle
cd .ssh
ssh-keygen
ssh-copy-id rac2
ssh rac2
- 在rac2执行
su - grid
cd .ssh
ssh-keygen
ssh-copy-id rac1
ssh rac1
su - oracle
cd .ssh
ssh-keygen
ssh-copy-id rac1
ssh rac1
- 安装依赖包
yum install -y bc binutils compat-libcap1 compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc libstdc++ libstdc++-devel libxcb make smartmontools sysstat ipmiutil net-tools nfs-utils python python-configshell python-rtslib python-six targetcli gcc-c++
yum install -y iscsi-initiator-utils-iscsiuio iscsi-initiator-utils pciutils rdma-core libibverbs libibumad ibacm librdmacm libtool-ltdl unixODBC libarchive cmake unixODBC-devel rdma-core-devel gdb unzip nslookup bind java tmux tree
第二部分 安装grid软件
一、准备安装
su - grid
cp LINUX.X64_193000_grid_home.zip $ORACLE_HOME
cd $ORACLE_HOME
unzip LINUX.X64_193000_grid_home.zip
原因:是虚拟机虚拟网卡的原因导致。
- ifconfig virbr0 down
- brctl delbr virbr0
- systemctl disable libvirtd
- 重启虚拟机
- 将原来的/home/oracle/.ssh文件删除,重新Setup,Test即可。
第三部分 安装oracle数据库软件
- 上传数据库安装包到Oracle用户下的$ORACLE_HOME目录下,然后进行解压
- 以oracle用户运行./runInstaller程序