安装和配置Grid Restart和Database 19c软件

系统软件环境说明:
    VMware Workstation Pro 16.1.2; Oracle Linux 8 iso安装包;Oracle Grid 19.3.0.0.0, Database 19.3.0.0.0

     2、系统软硬件环境说明:

     HP暗影精灵3笔记本,Intel Core i7-7700HQ处理器,32G内存,1TB NVMe硬盘。

虚拟机使用的资源:

CPU:4 vCPU; Memory: 16GB; SSD: 125G系统盘,125G数据盘,数据盘中按50G放置ASM实例,50G放置Database实例文件,50G盘做Fast Recovery Area快速恢复区使用。

系统盘中,SWAP分区分配16GB的空间,用于后期的Oracle数据库软件打补丁之用,如果使用系统自动创建的SWAP空间大小,在打补丁时,软件会提示空间不足的问题。

在操作系统安装好后,需要在/etc/hosts文件中,添加下列解析记录, 如下图所示:

192.168.116.132 oralinuxsrv.localdomain oralinuxsrv

其中,192.168.116.132是操作系统获得的IP地址,oralinuxsrv是主机名称。

创建的虚拟机名称取为:Oracle Linux Server

     3、安装Oracle 19c Database的预安装包

     以root身份,从Oracle repository默认安装源,安装19c Database的预安装包:

     # yum -y install oracle-database-preinstall-19c

    预安装包会在系统中创建oracle用户(用于数据库的安装),必要的系统组:oinstall, backupdba, dgdba, kmdba, racdba, 并将oracle加入到上述组中。

     在操作系统的“Settings/Details/Users”界面,将oracle的Acount Type设置为Administrator, 将赋与Password (或者通过root身份,用passwd oracle命令给oracle帐号设置密码)。

    4、为grid帐号准备必要的用户组

    帐号grid专用于Grid软件的安装配置过程。第3步执行的19c Database的预安装包已经完成大部分grid帐号需要使用的用户组创建。剩下组号为54327-53329三个组没有创建。使用下列命令补齐:

      # groupadd -g 54327 asmdba

      # groupadd -g 54328 asmoper

      # groupadd -g 54329 asmadmin

创建grid用户并添加到下列组中:

      # useradd -u 54322 -g oinstall -G asmadmin,asmdba,asmoper,dba,racdba grid

后期,为了让oracle用户能够使用和管理由grid帐号创建ASM磁盘组,需要将oracle同时加入到asmadmin组中,指令如下:

# usermod -a -G asmdba,asmoper,asmadmin oracle  (必须使用-a参数,以添加组身份)

在操作系统的“Settings/Details/Users”界面,将grid的Acount Type设置为Administrator, 将赋与Password (或者通过root身份,用passwd grid命令给grid帐号设置密码)。

      5、辅助工具rlwrap-0.37.tar.gz的安装过程

      工具软件rlwrap,用于支持在sqlplus环境下,记录历史命令,并可使用上下箭头来提取前面已执行过的命令,重新执行,以减少输入,提高工作效率。

将rlwrap-0.37.tar.gz通过文件管理器,利用smb协议,从Windows系统中获取,放入oracle帐号的Downloads目录下,如下图所示:

在Downloads目录中,打开一个Terminal界面,使用su命令,进入root用户环境,执行下列命令,用于准备rlwrap软件需要使用的软件环境:

    # yum -y install libtermcap-devel

将readline-5.0.tar.gz复制到Downloads中,完成readline软件的解压,编译、安装过程(./configure, make, make install)。

以root身份,修改环境文件/etc/ld.so.conf, 增加下列两行:

include ld.so.conf.d/*.conf

/usr/local/lib

/usr/lib64

并执行下列命令:

# ldconfig

使用操作系统自带的tar解压缩软件,解压缩rlwrap安装包:

# tar zxpf rlwrap-0.37.tar.gz

软件rlwrap-0.37将解压缩到目录rlwrap-0.37中。进入到rlwrap-0.37,执行软件包的编译、安装过程:

cd /home/oracle/Downloads/rlwrap-0.37

# ./configure

确保过程成功完成。如果有任何错误,或缺失的依赖文件,需要做相应的处理。

# make

# make install

再一次执行下列命令:

# ldconfig

检查rlwrap软件是不是成功安装,需要执行下列命令:

# rlwrap –h

   如果能正常显示软件的帮助内容,即说明该软件成功安装,如下图所示:

   如何使用rlwrap软件?需要在oracle帐号的.bashrc启动文件中,添加下列别名,即可在sqlplus、rman等软件中使用历史命令:

alias sqlplus='rlwrap sqlplus'

alias rman='rlwrap rman'

alias adrci='rlwrap adrci'

alias ggsci='rlwrap ggsci'

    6、修改操作系统的防火墙设置

使用root身份,修改操作系统防火墙配置,禁用防火墙。修改配置文件:/etc/selinux/config 

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

SELINUX=disabled

# SELINUXTYPE= can take one of these three values:

#     targeted - Targeted processes are protected,

#     minimum - Modification of targeted policy. Only selected processes are protected.

#     mls - Multi Level Security protection.

SELINUXTYPE=targeted

关闭防火墙,并禁用防火墙(或者根据应用需要,开启必要的端口):

# systemctl stop firewalld.service

# systemctl disable firewalld.service

     7、准备grid、oracle帐号的软件安装、工作环境

     登录grid帐号环境,切换到root帐号,在系统根(/)目录下,创建下列目录:

# mkdir /oracle

# mkdir -p /oracle/grid

# mkdir -p /oracle/grid/app

# mkdir -p /oracle/grid/product

# mkdir -p /oracle/database

# mkdir -p /oracle/database/app

# mkdir -p /oracle/database/product

改变上述目录的拥有者:

      # cd /oracle

# chown -R oracle:oinstall database/

# chown -R grid:oinstall grid/  

# su - grid

    为grid帐号,创建工作环境(修改.bash_profile文件):

# User specific environment and startup programs

export CV_ASSUME_DISTID=OEL7

export ORACLE_HOME=/oracle/grid/product

export ORACLE_BASE=/oracle/grid/app

export ORACLE_SID=+ASM

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

export TEMP=/tmp

export TMPDIR=/tmp

umask 022

      为了将.bash_profile文件配置立即生效,可执行下列命令:

      $ source /home/grid/.bash_profile

     为oracle帐号,创建工作环境(修改.bash_profile文件):

$ nano /home/oracle/.bash_profile

export CV_ASSUME_DISTID=OEL7

export ORACLE_HOSTNAME=oralinuxsrv

export ORACLE_HOME=/oracle/database/product

export ORACLE_BASE=/oracle/database/app

export ORACLE_UNQNAME=orclcdb

export DB_NAME=orclcdb

export ORACLE_SID=orclcdb

export PDB_NAME=pdb

export   PATH=$ORACLE_HOME:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin:$PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

umask 022

     8、准备ASM裸磁盘

    在虚拟机Oracle Linux Server的设置中,添加磁盘类型选择:NVMe, 其中硬盘2(50G)用于承载+ASM实例数据,硬盘3(50G)用于承载Database 实例数据文件,硬盘4(50G)用于承载Fast Recovery Area数据文件。新添加的磁盘不要做分区设置。

    以grid帐号登录系统,将Grid软件的安装包,解压到$ORACLE_HOME(/oracle/grid/product)目录中:

   $ cd $ORACLE_HOME

   $ unzip -q /home/gird/Downloads/V982068-01.zip 

   $ su - root, 改变为root帐号,临时设置下列环境变量,用于创建ASM裸盘:

   # export ORACLE_HOME=/oracle/grid/product

   # export ORACLE_BASE=/tmp

   使用Oracle ASM command line tool (asmcmd)去置备带有Oracle ASM Filter Driver特性的磁盘设备:

   # cd $ORACLE_HOME/bin

   # asmcmd afd_label DATA1 /dev/nvme0n2 --init (注意:这里是2个“-”)

   # asmcmd afd_label DATA2 /dev/nvme0n3 --init

   # asmcmd afd_label DATA3 /dev/nvme0n4 --init

验证上述设备是否已被打上Oracle ASMFD标识,如下图:

   # asmcmd afd_lslbl /dev/nvme0n2

   # asmcmd afd_lslbl /dev/nvme0n3

   # asmcmd afd_lslbl /dev/nvme0n4

改变上述创建的ASM裸设备的拥有者:

# chown -R grid:oinstall /dev/nvme0n2 (注意:这里要设置为 grid:oinstall用户和组,设置为其它,有可能导致+ASM实例无法启动)

# chown -R grid:oinstall /dev/nvme0n3

# chown -R grid:oinstall /dev/nvme0n4

在/etc/rc.local文件中,添加上述命令,以确保/dev/nvme0n2p1,/dev/nvme0n3p1,/dev/nvme0n4p1所有者为grid:asmadmin

#!/bin/bash

# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES

#

# It is highly advisable to create own systemd services or udev rules

# to run scripts during boot instead of using this file.

#

# In contrast to previous versions due to parallel execution during boot

# this script will NOT be run after all other services.

#

# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure

# that this script will be executed during boot.

touch /var/lock/subsys/local

chown -R grid:oinstall /dev/nvme0n2

chown -R grid:oinstall /dev/nvme0n3

chown -R grid:oinstall /dev/nvme0n4

修改rc.local的文件特性,使其开机自动运行:

# chmod +x /etc/rc.local

删除root帐户下的ORACLE_BASE环境变量设置:

# unset ORACLE_BASE

    9、执行Grid 软件的单独安装

以帐号grid登录系统,执行下列命令,选择Set up Software Only Grid软件的设置,如下图:

$ cd $ORACLE_HOME

$ ./gridSetup.sh

输入允许自动执行的root.sh脚本的root密码。

安装完成后,重启一下系统。

    10、执行Grid 软件的Grid Restart安装设置

重新以grid帐号登录系统,执行下列命令,选择安装和配置Oracle Restart功能,如下图:

$ cd $ORACLE_HOME

$ ./gridSetup.sh

Change Discovery Path: /dev/nvme0*

Redundancy: 选择External

为+ASM实例,勾选/dev/nvme0n2p1磁盘,作用为存储空间。

为SYS、ASMSNMP帐号,创建同样的密码。

以root身份运行root.sh的结果:

   

以root身份,修改/etc/oratab文件, 将+ASM实例设置为允许自启动:

# the entry.  Lines beginning with a pound sign, '#', are comments.

#

# Entries are of the form:

#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:

#

# The first and second fields are the system identifier and home

# directory of the database respectively.  The third field indicates

# to the dbstart utility that the database should , "Y", or should not,

# "N", be brought up at system boot time.

#

# Multiple entries with the same $ORACLE_SID are not allowed.

#

#

+ASM:/oracle/grid/product:Y             # line added by Agent

以grid身份,运行asmca软件,创建业务数据库实例需要使用的数据空间,快速恢复区空间。

重启操作系统。

    11、执行Database软件的单独安装设置

   以oracle帐号登录系统,将Database软件的安装包,解压到$ORACLE_HOME(/oracle/database/product)目录中:

   $ cd $ORACLE_HOME

   $ unzip -q /home/oracle/Downloads/V982063-01.zip 

   运行数据库实例的安装程序(选择Set up Software Only),如下图:

   $ ./runInstaller

成功安装后,重启系统。

    12、运行dbca执行数据库实例的创建

以oracle身份,登录系统,运行dbca数据库实例创建工具:

$ dbca

选择Advanced configuration选择,如下图:

Global database name:orclcdb.localdomain

SID: orclcdb

勾选Create as Container database, 如下图:

选择Use following for the database storage attributes, 并选择Database files storage type为Automatic Storage Management (ASM), 选择Database files location: +DATA1/{DB_UNIQUE_NAME}

勾选Use Oracle-Managed Files (OMF), 如下图:

选择Fast Recovery Area为:+FRA1, Fast Recovery Area size: 40960 (分区空间的90%), 勾选Enable archiving, 如下图:

勾选Create a ne wlistener, Listener name: DBLISTENER, Listener port: 1522 (由于TCP 1521已用于Grid环境,故改用TCP 1522。要事先使用netstat –an | grep 1522, 确认TCP1522端口没有被其它应用占用),如下图:

为SYS, SYSTEM, PDBADMIN帐号,创建同样的密码。

使用root身份,修改/etc/oratab文件,允许+ASM、orclcdb数据库能自启动。

# the entry.  Lines beginning with a pound sign, '#', are comments.

#

# Entries are of the form:

#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:

#

# The first and second fields are the system identifier and home

# directory of the database respectively.  The third field indicates

# to the dbstart utility that the database should , "Y", or should not,

# "N", be brought up at system boot time.

#

# Multiple entries with the same $ORACLE_SID are not allowed.

#

#

+ASM:/oracle/grid/product:Y             # line added by Agent

orclcdb:/oracle/database/product:Y         # line added by Agent

     13、解决https://oralinuxsrv:5500/em界面无法访问的问题

使用https://oralinuxsrv:5500/em, 无法打开Enterprise Manager Express组件。

问题系由于$ORACLE_BASE/admin/orclcdb/xdb_wallet中文件访问权限不足导致。执行下列命令:

$ cd $ORACLE_BASE/admin/orclcdb/xdb_wallet

$ sudo chmod 640 *.*

重启一下系统,即可正常访问:https://oralinuxsrv:5500/em

使用下列命令,也可看到TCP 5500已处于侦听状态:

$ sudo netstat –an | grep 5500

修改数据库的界面,使用emx模式访问Enterprise Manager Express组件:

$ sqlplus / as sysdba

SQL> @?/rdbms/admin/execemx emx

用Firefox延长支持版访问:https://oralinuxsrv:5500/em

根据软件提示,下载并安装rpm版本的Flash Player插件包:

$ sudo rpm –ivh /home/oracle/Downloads/flash-player-npapi-release.x86_64.rpm

   再次打开:https://oralinuxsrv:5500/em, 如下图所示:

   

   

至此,成功完成所有的安装、配置过程。
————————————————
版权声明:本文为CSDN博主「applmanwx」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/applmanwx/article/details/120389476

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值