Oracle 19C 安装指引

31 篇文章 0 订阅

Oracle 19C 安装指引

18C新功能
1.简化的基于镜像的Oracle数据库安装
从18C开始,Oracle可以作为镜像文件来下载和安装,必须解压缩镜像文件到ORACLE_HOME目录,然后执行runInstaller安装。
有关更多信息,请参阅关于基于映像的Oracle数据库安装
2.基于RPM的Oracle数据库安装
rpm -ivh 命令安装,可以自动完成安装前检查,将提取的软件包分配给预分配的用户和组,完成其他所有操作。
有关更多信息,请参阅使用RPM软件包安装Oracle数据库
3.只读Oracle Home
从Oracle 18C 如果选择只读OracleHome,那么数据库工具和进程都会写入到OracleBase 目录下,而不是OracleHome下。通过这种将Oracle_Home 和配置,日志文件隔离,可以实现多个部署共享ORACLE_HOME
有关更多信息,请参阅配置只读Oracle主目录
4.用于打数据库补丁的本地切换Home 命令
从Oracle Database 18c开始,ORACLE_HOME包含一个内置工具,rhpctl 允许你从当前的ORACLE_HOME,切换到已经打了补丁的ORACLE_HOME,如果需要回退,则可以再切回来。rhpctl 执行切换目录的所有操作,该命令还提供选项,使用会话管理滚动或不滚动群集中的单个节点或节点集
有关更多信息,请参见“ Oracle Clusterware管理和部署指南”
Oracle数据库在发行版(19C)中的更改

新功能

oracle 数据库安装的root 脚本自动化支持。
基于镜像的Oracle客户端安装
不推荐的功能
clone.pl脚本在Oracle19C 中不推荐,将来可能会弃用。

1.Oracle数据库安装检查列表
显示器1024 x 768
RAMDB安装 至少1G,建议2G以上
Grid安装至少8G
OSRed Hat Enterprise Linux 7.4: 3.10.0-693.5.2.0.1.el7.x86_64 or later
SUSE Linux Enterprise Server 12 SP3: 4.4.162-94.72-default or later
HugePagesOracle建议禁用Transparent HugePages并使用标准HugePages以提高性能
/tmp至少1G,如果不足需配置TMP和TMPDIR变量指定位置
SWAPORACLE DB
1G<RAM<=2G 1.5倍RAM
2G<RAM<=16G 等于RAM
RAM>16G 16G
ORACLE RESTART
8G<RAM<16G 等于RAM
RAM>16G =16G
以上如果配置了HugePages,可以先减去分配给HugePages的内存,再计算SWAP。
UNSET环境变量如果已经安装的有Oracle 软件,且使用相同用户安装Oracle软件,需要取消所有相关环境变量配置。
unsetORACLE_HOME, ORACLE_BASE, ORACLE_SID, TNS_ADMIN,ORA_NLS10,ORA_CRS_HOME等
Root 脚本可使用root 执行,也可以使用sudo 执行
最小磁盘需求对于Linux x86-64,对于standalone 服务器安装,Grid 至少需要6.8G,Oracle Database 至少7.5G
License信息您只能使用购买了授权的组件,更多License信息参考Oracle Database Licensing Information
Oracle ORAchk建议在Fresh 安装或升级前都使用ORAchk检查,避免安装过程中出现问题。
Fresh 数据库安装 ./orachk -profile preinstall
升级数据库 ./orachk -u -o pre
GI 安装如果要使用ASM或Oracle Restart需要在安装数据库前先安装 Oracle Grid Infrastructure for a standalone server
关闭Oracle进程在不使用Oracle ASM的独立数据库上:安装Oracle Grid Infrastructure时无需关闭数据库,在使用Oracle ASM的独立数据库上:在安装期间会重启Oracle ASM实例,在Oracle RAC数据库节点上,安装需要升级Oracle Clusterware,您必须一次关闭一个节点,执行滚动升级。
Oracle数据库管理工具默认情况下,Oracle数据库由Oracle Enterprise Manager Database Express管理。如果您有Oracle Management Agent,并决定使用OEM Cloud Control集中管理数据库,那么请获取以下信息:OMS主机/OMS端口/EM管理员用户名/EM管理员密码/ASMSNMP用户的密码
内存管理建议使用ASMM,物理内存大于4G不能使用AMM,也不建议使用

Oracle 19C 下的几个小工具:

[oracle@orcl19c ~]$ ls $ORACLE_HOME/suptools
orachk oratop tfa

2.为Oracle检查和配置服务器硬件

检查硬件和内存
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo
df -h /tmp
free
uname -m
df -h /dev/shm

3 使用Oracle Preinstallation RPM自动配置Oracle Linux

4 为Oracle配置Linux操作系统

Oracle 18C RPM 包需求
RedHat 6:
SSH
Red Hat Enterprise Linux 6.4: 2.6.32-358.el6.x86_64 or later

yum install -y bc binutils compat-libcap1 compat-libstdc++ compat-libstdc++.i686 e2fsprogs e2fsprogs-libs glibc.i686 glibc
glibc-devel.i686 glibc-devel ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libX11.i686 libX11 libXau.i686 libXau libXi.i686
libXi libXtst.i686 libXtst libXrender.i686 libXrender libXrender-devel.i686 libXrender-devel libgcc.i686 libgcc libstdc++.i686 libstdc++
libstdc+±devel.i686 libstdc+±devel libxcb.i686 libxcb make net-tools nfs-utils smartmontools sysstat

RedHat 7:
SSH
Red Hat Enterprise Linux 7: 3.10.0-123.el7.x86_64 or later

yum install -y bc binutils compat-libcap1 compat-libstdc++.i686 compat-libstdc++ glibc.i686 glibc glibc-devel.i686 glibc-devel
ksh libaio.i686 libaio libaio-devel.i686 libaio-devel libX11.i686 libX11 libXau.i686 libXau libXi.i686 libXi libXtst.i686 libXtst
libXrender-devel.i686 libXrender-devel libXrender.i686 libXrender libgcc.i686 libgcc libstdc++.i686 libstdc++ libstdc+±devel.i686 libstdc+±devel
libxcb libxcb.i686 make nfs-utils net-tools python python-configshell python-rtslib python-six smartmontools sysstat targetcli gcc-c++

检查是否有遗漏

rpm -q bc binutils compat-libcap1 compat-libstdc+±33.i686 compat-libstdc+±33 glibc.i686 glibc glibc-devel.i686 glibc-devel
ksh libaio.i686 libaio libaio-devel.i686 libaio-devel libX11.i686 libX11 libXau.i686 libXau libXi.i686 libXi libXtst.i686 libXtst
libXrender-devel.i686 libXrender-devel libXrender.i686 libXrender libgcc.i686 libgcc libstdc++.i686 libstdc++ libstdc+±devel.i686 libstdc+±devel
libxcb libxcb.i686 make nfs-utils net-tools python python-configshell python-rtslib python-six smartmontools sysstat targetcli gcc-c++

操作系统RedHat7.6 不包含如下两个包,忽略:

package compat-libstdc++.i686 is not installed
package compat-libstdc++ is not installed

Oracle 19C需要的软件包
ssh
Red Hat Enterprise Linux 7.4: 3.10.0-862.11.6.el7.x86_64 or later

yum install -y bc binutils compat-libcap1 compat-libstdc++ elfutils-libelf elfutils-libelf-devel fontconfig-devel
glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc
librdmacm-devel libstdc++ libstdc+±devel libxcb make net-tools nfs-utils python python-configshell
python-rtslib python-six targetcli smartmontools sysstat

其他可能需要的包
yum install -y xorg-x11-xauth tigervnc-server zip unzip smartmontools lrzsz readline readline-devel
适用于Linux的其他驱动程序和软件包(略,一般不需要)
非必须安装,但您可以有选择的安装或配置这些包
在Linux上安装PAM用于登录身份
可插拔身份验证模块(PAM)是一个为应用处理用户身份认证任务的库系统。
OCFS2的安装需求
查看以下部分以安装OCFS2。
安装Oracle Messaging Gateway
Oracle Messaging Gateway随Oracle Database企业版一起安装。但是,您可能需要CSD或Fix Pack。
ODBC和LDAP的安装要求
查看这些主题以安装开放式数据库连接(ODBC)和轻量级目录访问协议(LDAP)。
Linux编程环境的安装要求
查看以下部分以安装编程环境:
Web浏览器的安装需求
仅当您打算使用Oracle Enterprise Manager Database Express和Oracle Enterprise Manager Cloud Control时才需要Web浏览器。Web浏览器必须支持JavaScript,以及HTML 4.0和CSS 1.0标准。
PAM Oracle 强烈建议安装最新的PAM库
OCFS2 包含在OEL6/OEL7中,您可以和GI 一起使用,但并不是必须使用,也没必要。
Oracle Messaging Gateway 和数据库一起安装了,其他组件通常不需要。
ODBC 是一系列数据库访问API,如果您要安装请安装最新的:http://www.unixodbc.org,最低版本要求:unixODBC-2.3.4 or later
LDAP 如果需要使用LDAP特性的功能,才需要装,略
编程环境,略
Web浏览器,略
安装适用于Linux的cvuqdisk RPM
如果没有cvuqdisk,Cluster Verification Utility无法发现共享磁盘,并且在运行Cluster Verification Utility时收到错误消息“Package cvuqdisk not installed”。
找到cvuqdiskRPM包,它位于Grid_home目录中/cv/rpm
将cvuqdisk程序包复制到群集上的每个节点。您应该确保每个节点都运行相同版本的Linux。
以root。登录。
CVUQDISK_GRP=oinstall; export CVUQDISK_GRP
rpm -iv cvuqdisk-1.0.10-1.rpm
确认主机名解析
如:ping myhostname 应该是可解析的
禁用透明HugePages
Oracle建议您在开始安装之前禁用Transparent HugePages。

透明HugePages内存和标准HugePages 内存不同,因为内核khugepaged 线程会在运行期间自动分配内存,而标准HugePages内存是在启动时预分配的,不会在运行期间调整。

透明HugePages可能导致运行期间内存分配延迟,Oracle建议禁用,改用标准HugePages以提升性能,检查是否开启透明大页:

RedHat内核:

#cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
其他内核:

#cat /sys/kernel/mm/transparent_hugepage/enabled
输出如下[always]表示启用了透明大页

[always] never
如果透明HugePages 被从内核中移除,则文件/sys/kernel/mm/transparent_hugepage 和 /sys/kernel/mm/redhat_transparent_hugepage 将不存在

禁用透明HugePagegs,在RedHat 7中,添加transparent_hugepage=never 参数到/etc/default/grub文件。例如:

RUB_TIMEOUT=5
GRUB_DISTRIBUTOR=" ( s e d ′ s , r e l e a s e . ∗ (sed 's, release .* (seds,release.,g’ /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT=“console”
GRUB_CMDLINE_LINUX=“crashkernel=auto rhgb quiet numa=off transparent_hugepage=never”
GRUB_DISABLE_RECOVERY=“true”
注意,不同操作系统可能文件名不同。

运行如下命令,重新生成grub.cfg文件

#grub2-mkconfig -o /boot/grub2/grub.cfg
重启操作系统使变更永久生效。

在安装期间使用自动SSH配置
集群环境下,每个节点都要配置ssh,在安装期间OUI通过ssh/scp 向远程节点copy 文件并在远程节点执行命令,Oracle EM 同样要使用SSH.
你可以在安装期间通过OUI为安装用户配置SSH,该自动配置将在集群节点间配置无需密码的 SSH连接,Oralce建议尽可能使用该自动化配置过程。
在极少数情况下,当远程节点关闭SSH连接时,Oracle Clusterware安装可能会在“AttachHome”操作期间失败。要避免此问题,请通过在所有群集节点上的SSH守护程序配置文件/etc/ssh/sshd_config中设置以下参数,将timeout wait设置为无限制:

vi /etc/ssh/sshd_config
LoginGraceTime 0
验证Linux上的磁盘I/O调度程序
为了获得Oracle ASM的最佳性能,Oracle建议您使用Deadline I/O 调度程序。
磁盘 I/O 调度程序对磁盘I/O的请求进行重新排序,延迟或合并,以实现更高的吞吐量和更低的延迟。Linux有多个磁盘I/O调度程序可用,包括Deadline,Noop,Anticipatory和Completely Fair Queuing(CFQ)。
在每个群集节点上,输入以下命令以验证是否已配置Deadline磁盘I/O调度程序以供使用:
#cat /sys/block/${ASM_DISK}/queue/scheduler
noop [deadline] cfq
在此示例中,默认磁盘I / O调度程序为Deadline,并且ASM_DISK是Oracle自动存储管理(Oracle ASM)磁盘设备。
在某些虚拟环境(VM)和特殊设备(如快速存储设备)上,上述命令的输出可能是none。操作系统或VM绕过内核I / O调度并将所有I / O请求直接提交给设备。请勿在此类环境中更改I / O计划程序设置。

如果默认磁盘I / O调度程序不是Deadline,则使用rules文件设置它:

使用文本编辑器为Oracle ASM设备创建UDEV规则文件:
#vi /etc/udev/rules.d/60-oracle-schedulers.rules
将以下行添加到规则文件并保存:
ACTION==“add|change”, KERNEL==“sd[a-z]”, ATTR{queue/rotational}==“0”, ATTR{queue/scheduler}=“deadline”
在群集系统上,将规则文件复制到群集上的所有其他节点。例如:
$ scp 60-oracle-schedulers.rules root@node2:/etc/udev/rules.d/
加载规则文件并重新启动UDEV服务。例如:
Oracle Linux和Red Hat Enterprise Linux
#udevadm control --reload-rules
SUSE Linux Enterprise Server
#/etc/init.d boot.udev restart
验证磁盘I/O调度程序是否设置为Deadline。

5 为Oracle Grid Infrastructure和Oracle数据库配置用户,组和环境

在安装之前,请创建操作系统组和用户,以及配置用户环境。

所需的操作系统组和用户
Oracle软件安装需要一个安装用户,一个Oracle Inventory组,它是所有Oracle安装所有者的主要组,并且至少需要一个组指定为系统特权组。
具有标准且角色分离的组和用户的Oracle安装
Oracle数据库和Oracle ASM的作业角色分离配置是一种配置,其中组和用户可以为操作系统身份验证提供单独的组。
创建操作系统权限组
以下各节介绍如何为Oracle Grid Infrastructure和Oracle数据库创建操作系统组:
创建操作系统Oracle安装用户帐户
在开始安装之前,请创建Oracle软件所有者用户帐户,并配置其环境。
创建Oracle Database Vault用户帐户
如果您打算默认使用Oracle Database Vault,则必须创建Oracle Database Vault用户帐户并配置该用户。
取消Oracle安装用户环境变量设置
开始安装之前,取消所有Oracle安装所有者的环境变量设置。
所需的操作系统组和用户
确定Oracle Inventory 和Oracle Inventory 组是否存在
确定是否存在Oracle中央目录,确保对所有Oracle软件安装使用相同的Oracle Inventory。并确保您打算用于安装的所有Oracle软件用户都有权写入此目录。
如果Oracle Inventry 不存在则从创建Oracle Inventry 组。
关于Oracle安装所有者帐户
识别Oracle软件所有者用户帐户
当您第一次在系统上安装Oracle软件时,OUI会创建该oraInst.loc文件。
使用此more命令确定您的系统上是否有Oracle中央库存。例如:

#more /etc/oraInst.loc
inventory_loc=/u01/app/oraInventory #当前的Oracle 中央目录路径
inst_group=oinstall #对中央目录具有写权限的操作系统组,默认oinstall
使用如下命令确认Oracle Inventory组仍存在于系统上。例如:

$ grep oinstall /etc/group
oinstall❌54321:grid,oracle
不要把oraInventory 放在Oracle base 目录下,因为这可能导致其他安装的用户权限错误。
如果Oracle Inventory组不存在,则添加
#/usr/sbin/groupadd -g 54321 oinstall
你只能拥有一个GI安装所有者grid,负责Oracle Clusterware 和Oracle ASM.
但你可以为多个不同的安装,有多个Oracle 用户。
Oracle软件所有者必须将Oracle Inventory组作为其主要组,以便每个Oracle软件安装所有者都可以写入中央目录(oraInventory),以便正确设置OCR和Oracle Clusterware资源权限。数据库软件所有者还必须具有OSDBA组和OSOPER,OSBACKUPDBA,OSDGDBA,OSRACDBA和OSKMDBA组作为辅助组(如果您创建它们。如:

/usr/sbin/groupadd -g 54321 oinstall
/usr/sbin/groupadd -g 54322 dba #管理数据库
/usr/sbin/groupadd -g 54323 oper #数据库启停
/usr/sbin/groupadd -g 54324 backupdba #备份恢复dba
/usr/sbin/groupadd -g 54325 dgdba #管理和监视dg
/usr/sbin/groupadd -g 54326 kmdba #加密密钥管理
/usr/sbin/groupadd -g 54327 asmdba #访问Oracle ASM
/usr/sbin/groupadd -g 54328 asmoper #启动和关闭Oracle ASM
/usr/sbin/groupadd -g 54329 asmadmin
/usr/sbin/groupadd -g 54330 racdba #rac管理
/usr/sbin/useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba oracle
useradd -g oinstall -G dba,asmdba,asmoper,asmadmin,racdba grid

对于Oracle Restart安装,要成功安装Oracle数据库,请确保grid用户是racdba组的成员。
Oracle数据库有两个标准管理员组:OSDBA(必需)和OSOPER(可选)。
扩展的Oracle数据库组
Oracle Database 12c第1版(12.1)及更高版本提供了系列扩展的数据库组,用于授予基于特定任务的系统特权。
创建ASMSNMP用户
ASMSNMP 是一个具有监控Oracle ASM权限的ASM用户,安装过程中要求您提供其密码。OEM使用它监控Oracle ASM 实例。
您可以创建asmsnmp数据库用户,授予他ASM的sysdba权限。用来监控ASM运行状态。
Oracle ASM组
Oracle GI 组为其成员提供访问和管理Oracle ASM的权限。
如果您不想使用角色分配组,那么Oracle强烈建议您至少使用两个组.dba 和 oinstall
dba 负责所有的系统管理权限
oinstall (oraInventory 组)具有所有Oracle软件安装权限

创建操作系统权限组
/usr/sbin/groupadd -g 54327 asmdba #具有访问ASM权限

/usr/sbin/groupadd -g 54328 asmoper #具有启动关闭ASM权限

/usr/sbin/groupadd -g 54322 dba #SYSDBA权限
/usr/sbin/groupadd -g 54323 oper #启动和关闭数据库

/usr/sbin/groupadd -g 54324 backupdba #通过RMAN 或 SQLPLUS 执行备份恢复

/usr/sbin/groupadd -g 54325 dgdba #管理和监控DG

/usr/sbin/groupadd -g 54326 kmdba #加密密钥管理

/usr/sbin/groupadd -g 54330 racdba #RAC集群下的Oracle DB 日常管理

创建操作系统Oracle安装用户
/usr/sbin/useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba oracle
对于Oracle Grid Infrastructure安装,所有节点上的用户ID和组ID必须相同。
为grid/oracle 用户设置umask 022, 确保创建的文件权限为644
echo umask 022 >>~/.bash_profile
设置grid/oracle 用户descriptors and processes
vi ~/.bash_profile 移除环境变量设置ORACLE_SID, ORACLE_HOME, or ORACLE_BASE 等
如果/tmp 不足1G,设置TMP,TMPDIR 变量指向空间足够的位置,/tmp 不能指向共享文件系统

检查Oracle软件安装用户的资源限制
vi /etc/security/limits.conf

oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
oracle soft memlock (使用HugePage:90%Mem,单位KB.不使用HuagePages:3145728 (3G))
oracle hard memlock (使用HugePage:90%Mem,单位KB.不使用HuagePages:3145728 (3G))

设置远程显示和X11转发配置
远程显示:
export DISPLAY=hostname:0
X11转发
配置用户级ssh客户端配置文件
vi ~/.ssh/config
Host *
ForwardX11 no
防止终端输出命令引起的安装错误
Grid Infrastructure 安装期间需要通过ssh在远程运行命令,scp 复制文件。如果系统隐藏文件包含stty 命令可能导致安装错误。
为了避免这个问题,你需要修改每个oracle 软件安装用户家目录的隐藏文件,抑制STDOUT or STDERR,如下:
if [ -t 0 ]; then
stty intr ^C
fi
创建Oracle Database Vault用户帐户
如果您打算默认使用Oracle Database Vault,则必须创建Oracle Database Vault用户帐户并配置该用户。

您必须先创建Database Vault Owner帐户,然后才能使用Oracle Database Vault。您还可以创建Database Vault Account Manager管理帐户。

Oracle Database Vault安装基准数据库审计策略。此策略涵盖存储在Oracle Database Vault数据库表中的访问控制配置信息,存储在Oracle Catalog中的信息(回滚段,表空间等),系统权限的使用以及Oracle Label Security配置。安装Oracle Database Vault时,将使用默认值初始化特定于安全性的数据库初始化参数。

参考:

Oracle Database Vault管理员指南

取消Oracle安装用户环境变量
在开始安装之前,请取消设置Oracle安装所有者环境变量。如果环境变量设置与安装所需的值冲突,则可能会导致问题。
unset ORA_CRS_HOME ORACLE_HOME ORA_NLS10 TNS_ADMIN以及为Oracle安装用户设置的任何其他环境变量。
确保将$ORACLE_HOME/bin 从环境变量PATH 中移除

6 配置Oracle数据库网络

在安装期间分配全局数据库名
输入的数据库名用于设置DB_NAME,DB_UNIQUE_NAME和DB_DOMAIN参数。
Oracle数据库软件通过其全局数据库名称标识数据库。全局数据库名称由数据库名称和数据库域组成。通常,数据库域与网络域相同,但不一定如此。全局数据库名称唯一的区分数据库与同一网络中的任何其他数据库。在安装期间或使用Oracle Database Configuration Assistant创建数据库时,可以指定全局数据库名称。

例如:
sales.us.example.com
这里:

sales.us是数据库的名称。数据库名称(DB_UNIQUE_NAME)部分是一个不超过30个字符的字符串,可以包含字母数字字符,下划线(),美元符号($)和井号(#),但必须以字母字符开头。数据库名称中不允许使用其他特殊字符。
sales.us也是DB_NAME。DB_NAME初始化参数指定最多八个字符的数据库识别符。
example.com是数据库所在的数据库域。在此示例中,数据库域等于网络域。数据库名称和数据库域一起使全局数据库名称唯一。域部分是一个不超过128个字符的字符串,可以包含字母数字字符,下划线(
)和井号(#)。该DB_DOMAIN初始化参数指定数据库的域名。
但是,DB_NAME参数不一定是DB_UNIQUE_NAME的前八个字符。

DB_UNIQUE_NAME和DB_DOMAIN结合起来,构成全局数据库名SERVICE_NAMES。

系统标识符(SID)标识特定的数据库实例。同一台电脑上SID唯一标记一个实例。每个数据库实例都需要唯一的SID和数据库名称。在大多数情况下,SID等于全局数据库名称的数据库名称部分。

设置ORACLE_HOSTNAME环境变量
$ ORACLE_HOSTNAME=somehost.example.com
$ export ORACLE_HOSTNAME
安装数据库在包含多个主机别名的服务器上,必须指定变量ORACLE_HOSTNAME 。(同一个IP地址注册到naming service,解析为多个主机名),命名服务将任何这些别名解析为同一台计算机。设置Oracle安装用户环境变量ORACLE_HOSTNAME为你想要使用的主机名。

7 OracleDB和GI支持的存储选项
存储选项二进制文件数据文件恢复文件
oracle ASM(环回设备不支持使用Oracle ASM)NoYesYes
Oracle ACFSYesYes (12.1以后)Yes (12.1以后)
本地文件系统YesYes (不推荐)Yes (不推荐)
NAS(network-attached storage)上的NFSYesYesYes

选择存储选项时,请遵循以下准则:

Oracle强烈建议您为Oracle ASM使用一系列专用磁盘。
如果满足所选存储选项的所有要求,则可以为每种文件类型选择受支持的存储选项的任意组合。
您可以使用Oracle ASM存储Oracle Clusterware文件。
不支持直接使用原始或块设备。您只能在Oracle ASM下使用原始设备或块设备。
关于Standalone Server的Oracle GI
如果您计划使用Oracle ASM,则必须在安装数据库之前安装Oracle Restart。
Oracle GI for a standalone server 是一个支持单实例数据库的Oracle GI版本。此支持包括卷管理,文件系统和自动重启功能。用于standalone server 的Oracle GI包括Oracle Restart和Oracle ASM.Oracle将这两种基础架构产品组合成一组安装在Oracle Restart主目录中的二进制文件。
Oracle Restart是作为Oracle Grid Infrastructure的一部分提供的功能。Oracle Restart监视并可以重新启动Oracle数据库实例,Oracle Net Listeners和Oracle ASM实例。Oracle Restart目前仅限于管理单实例Oracle数据库和Oracle ASM实例。
Oracle ASM 是一个卷管理器也是文件系统,用来存储Oracle 数据文件,它支持单实例Oracle数据库和Oracle RAC配置。Oracle ASM还支持通用文件系统,包括Oracle二进制文件。Oracle ASM是Oracle推荐的存储管理解决方案,可替代传统的卷管理器和文件系统。
Oracle Restart通过提供以下服务来提高Oracle数据库的可用性:

当出现硬件或软件故障时,Oracle Restart会自动启动所有Oracle组件,包括Oracle数据库实例,Oracle Net Listener,数据库服务和Oracle ASM。
重新启动数据库主机时,Oracle Restart以正确的顺序启动组件。
Oracle Restart会定期检查以监视Oracle组件的状态。如果组件的检查操作失败,则组件将关闭并重新启动。
Oracle ACFS的限制和指南
Oracle ACFS 提供通用文件系统。
配置Oracle ASM的情况下,才能使用Oracle ACFS。
请注意以下有关在Oracle ACFS上放置Oracle数据库和Oracle Grid Infrastructure文件的一般准则和限制:
您可以在Oracle ACFS上放置Oracle数据库二进制文件,数据文件和管理文件(例如,跟踪文件)。
Oracle ACFS不支持对Oracle数据库数据文件,表空间文件,控制文件和重做日志进行加密。
仅当数据库版本为Oracle Database 11g第2版或更新版本时,才能将Oracle数据库主目录置于Oracle ACFS上。您无法在Oracle ACFS上安装早期版本的Oracle数据库。
您无法将Oracle Clusterware文件放在Oracle ACFS上。
Oracle Restart不支持基于root的Oracle Clusterware资源。因此,如果在Oracle Restart 配置上运行Oracle ACFS,则以下限制适用:
从Oracle Database 18c开始,配置助手不允许在Oracle Restart配置中的Oracle ACFS上创建Oracle数据库主目录。
Oracle Restart 在所有平台都不支持Oracle ACFS资源。
从Oracle Database 12c开始,Oracle Restart配置不支持Oracle ACFS注册。
在Linux上,Oracle ACFS提供了一种自动机制,用于在系统重新启动和关闭时加载和卸载驱动程序以及装载和卸载Oracle ACFS文件系统。但是,Oracle ACFS在系统运行时不提供已装入文件系统的自动恢复。除Linux之外,Oracle ACFS不在其他操作系统上提供此自动机制。
不支持在Oracle Restart配置的Oracle ACFS文件系统上创建Oracle数据文件。支持在GI for RAC 的ACFS 上创建数据文件。
IBM AIX Workload Partitions(WPAR)不支持Oracle ACFS和Oracle ADVM。
Oracle数据库的文件系统选项
如果在文件系统上安装Oracle数据库文件,Oracle建议将文件系统与操作系统或Oracle数据库软件使用的文件系统分开。
标准Oracle数据库创建选项
如果要在非逻辑卷或RAID设备的基本磁盘上创建数据库,建议将数据文件分散到多个磁盘
如果在LVM或RAID配置中使用多个磁盘,则Oracle建议您使用Stripe and Mirror Everything(SAME)方法来提高性能和可靠性。使用此方法,您不必为数据库存储指定多个文件系统挂载点。
从认证的NAS 设备挂载的NFS,您还可以选择使用Direct NFS Client,它简化了NFS配置的管理并提高了性能。
高级Oracle数据库创建选项

标准Oracle数据库安装可用的三个文件系统选项。
使用Oracle Managed Files,您可以指定文件系统目录,数据库在对象级别自动创建,命名和管理文件。
如果使用OMF特性,则在创建或删除数据库文件时,必须仅指定数据库对象名而不是文件名。

NFS 是一种共享文件系统协议,因此NFS 支持单实例和RAC数据库
存储在NAS设备上的Oracle软件和数据库的性能取决于服务器与NAS设备之间的网络连接性能。为了获得更好的性能,Oracle建议您使用专用网络将服务器连接到NAS设备。应使用千兆以太网或更好。
在开始安装之前,NFS文件系统必须已经mount 并可供服务器使用。

关于挂载到NFS存储设备的Direct NFS客户端
Direct NFS Client直接在Oracle软件中集成NFS客户端功能,以优化Oracle和NFS服务器之间的I / O路径。这种集成可以显着提高性能。
Direct NFS Client支持NFSv3,NFSv4,NFSv4.1和pNFS协议来访问NFS服务器。Direct NFS Client还简化了数据库工作负载的NFS客户端配置的性能优化,并在许多情况下实现了自动化。
从Oracle Database 12c第2版开始,启用Direct NFS时,还可以启用Direct NFS dispatcher。Direct NFS调度程序可以将创建的从数据库实例到NFS服务器的TCP连接合并。在大型数据库部署中,使用Direct NFS调度程序可提高可伸缩性和网络性能。并行NFS部署同样需要大量连接。因此,也建议使用Direct NFS调度程序进行并行NFS部署。
Direct NFS Client可以从操作系统挂载点或oranfstab文件获取NFS挂载点。
直接NFS客户端要求

NFS服务器的写入大小值(wtmax)必须为32768或更高才能与Direct NFS Client一起使用。
NFS挂载点必须由操作系统内核NFS客户端和Direct NFS Client同时挂载,即使您配置了Direct NFS Client提供文件服务。
如果Oracle数据库无法使用Direct NFS Client连接到NFS服务器,则Oracle Database将使用操作系统内核NFS客户端连接到NFS服务器。当Oracle数据库无法通过Direct NFS Client连接到NAS存储时,它会在Oracle Alert log和trace files中记录有关Direct NFS客户端连接错误的信息性消息。

遵循标准指南,以维护操作系统NFS和Direct NFS客户端安装的Oracle数据库文件的完整性。
直接NFS挂载点搜索顺序

Direct NFS Client按以下顺序搜索挂载点:

$ORACLE_HOME/dbs/oranfstab
/etc/oranfstab
/etc/mtab
Direct NFS Client使用第一个匹配条目作为挂载点。

注意:

每个实例只能有一个活动的Direct NFS客户端。在实例上使用Direct NFS Client会阻止另一个Direct NFS Client实施。

Oracle Database Reference 设置enable_dnfs_dispatcher 参数启用 Direct NFS dispatcher
Oracle Database Performance Tuning Guide 了解启用Parallel NFS and Direct NFS dispatcher的性能优势
Oracle Automatic Storage Management Administrator’s Guide 使用Direct NFS Client 或 kernel NFS创建的数据文件管理指导

8 配置Oracle数据库文件系统存储

为了获得最佳的数据库组织和性能,Oracle建议您将数据文件和Oracle数据库软件安装在不同的磁盘中。
如果计划将存储放在网络文件系统(NFS)设备,Oracle建议您使用Oracle Direct NFS(dNFS)来利用Oracle Direct NFS客户端内置的性能优化。
为Oracle数据库配置NFS缓冲区大小参数
设置NFS buffer size参数: rsize和wsize的值设置为至少32768。
检查Direct NFS客户端的TCP网络协议Buffer
检查TCP 网络Buffer Size ,以确保它满足服务器的速度要求。
为Direct NFS Client创建oranfstab文件
Direct NFS使用配置文件oranfstab来确定可用的挂载点。
启用和禁用NFS的Direct NFS客户端控制
默认情况下,在单实例Oracle数据库安装时,Direct NFS Client以禁用模式同时安装。在启用Direct NFS之前,您必须配置oranfstab文件。
在直接NFS客户端上启用混合列压缩
执行以下步骤以在直接NFS客户端上启用混合列压缩(HCC):
Related Topics

My Oracle Support note 1496040.1

为Oracle数据库配置NFS Buffer Size 参数
设置NFS buffer size参数rsize 和wsize为至少 32768.
例如, 为一个Oracle 数据文件挂载点设置buffer size 为32768, 设置类似如下:
nfs_server:/vol/DATA/oradata /home/oracle/netapp nfs
rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,actimeo=0,vers=3,timeo=600
Direct NFS Client 以wtmax 粒度向NFS 服务器写入

为Direct NFS Client检查TCP网络协议Buffer
默认情况下,TCP的network buffer size 设置为1 MB,UDP的network buffer size 设置为2 MB。TCP buffer size 可以对文件传输设置限制,这可能会对Direct NFS Client用户性能产生负面影响。
检查当前的TCP缓冲区大小,请输入以下命令:
#sysctl -a |grep -e net.ipv4.tcp_[rw]mem
此命令的输出类似于以下内容:

net.ipv4.tcp_rmem = 4096 87380 1056768
net.ipv4.tcp_wmem = 4096 16384 1056768
Oracle建议您根据服务器的链接速度设置值。例如,执行以下步骤:

因为root,使用文本编辑器打开/etc/sysctl.conf,添加或更改以下内容:
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
运行以下命令应用您的更改:
#sysctl -p
重启网络:
#/etc/rc.d/init.d/network restart
为Direct NFS客户端创建oranfstab文件
Direct NFS通过配置文件oranfstab来确定可用的挂载点。
为你要通过Direct NFS Client连接的每台NFS 服务器,创建具有如下属性的oranfstab 文件:

server
NFS服务器名称。

local
数据库主机上最多指定四个路径,可使用IP地址或名称,在数据库主机上使用ifconfig的命令显示。

path
最多四个到NFS服务器的网络路径,由IP地址或名称指定,在NFS服务器上使用ifconfig的命令显示。

export
NFS服务器上的导出路径。

mount
导出卷的相应本地挂载点。

mnt_timeout
指定(以秒为单位)Direct NFS Client在超时之前应等待成功挂载的时间。此参数是可选的。默认超时为10分钟(600)。

nfs_version
指定Direct NFS Client使用的NFS协议版本。可能的值包括NFSv3,NFSv4,NFSv4.1和pNFS。默认版本为NFSv3。如果选择NFSv4.x,则必须配置oranfstab 的值nfs_version。如果要将Direct NFS与并行NFS一起使用,请指定nfs_version为pNFS。

security_default
指定服务器访问的所有导出的NFS服务器路径都适用的默认安全模式。此参数是可选的。sys是默认值。请参考security 参数描述,了解security_default参数支持的安全级别。

security
指定安全级别,为Direct NFS Client使用Kerberos认证协议保证安全性。该可选参数可为每个export-mount 对分别指定。security_default和security参数支持的安全级别为:

sys:UNIX级别安全性基于UID和GID的AUTH_UNIX认证。这是安全参数的默认值。
krb5:Direct NFS在Kerberos认证下运行。服务器被认证为真实服务器,就如它声称的一样。
krb5i:Direct NFS在Kerberos认证和NFS完整性下运行。对服务器进行身份验证,并检查每个消息传输的完整性。
krb5p:Direct NFS在Kerberos认证和NFS隐私下运行。服务器都要通过身份验证,并且所有数据都是完全加密的。
该安全参数,如果指定,优先于security_default参数。如果这些参数都未指定,则sys是默认身份验证。

对于NFS服务器Kerberos安全设置,请查看相关的NFS服务器文档。对于Kerberos客户端设置,请查看相关的操作系统文档。

dontroute
指定传出消息不应由操作系统路由,而是使用它们绑定的IP地址发送。

注意:

该dontroute选项是POSIX选项,在同一subnet中具有多个路径的Linux系统上有时不起作用。

management
使Direct NFS Client能够使用管理接口进行SNMP查询。如果SNMP在NFS服务器上的单独管理接口上运行,则可以使用此参数。默认值是服务器参数值。

community
指定用于SNMP查询的社区字符串。默认值是public。

以下示例显示了oranfstab三个可能的NFS服务器访问。单个oranfstab可以有多个NFS服务器访问条目。

示例8-1 使用 Local 和 Path 的服务器访问条目

以下示例同时使用了local和path。因为它们位于不同的子网中,所以您不必指定dontroute。

server: MyDataServer1
local: 192.0.2.0
path: 192.0.2.1
local: 192.0.100.0
path: 192.0.100.1
export: /vol/oradata1 mount: /mnt/oradata1
示例8-2 在同一子网中使用 local 和path,指定dontroute

local和path在同一子网,指定dontroute:

server: MyDataServer2
local: 192.0.2.0
path: 192.0.2.128
local: 192.0.2.1
path: 192.0.2.129
dontroute
export: /vol/oradata2 mount: /mnt/oradata2
示例8-3使用名称代替IP地址,具有多个Exports,management和community

server: MyDataServer3
local: LocalPath1
path: NfsPath1
local: LocalPath2
path: NfsPath2
local: LocalPath3
path: NfsPath3
local: LocalPath4
path: NfsPath4
dontroute
export: /vol/oradata3 mount: /mnt/oradata3
export: /vol/oradata4 mount: /mnt/oradata4
export: /vol/oradata5 mount: /mnt/oradata5
export: /vol/oradata6 mount: /mnt/oradata6
management: MgmtPath1
community: private
示例8-4使用Direct NFS Exports的Kerberos身份认证

security参数覆盖security_default:

server: nfsserver
local: 192.0.2.0
path: 192.0.2.2
local: 192.0.2.3
path: 192.0.2.4
export: /private/oracle1/logs mount: /logs security: krb5
export: /private/oracle1/data mount: /data security: krb5p
export: /private/oracle1/archive mount: /archive security: sys
export: /private/oracle1/data1 mount: /data1
security_default: krb5i
启用和禁用NFS的Direct NFS客户端控制
默认情况下,Direct NFS Client 以禁用状态和单实例数据库一起安装,启用之前,您必须配置oranfstab 文件
通过以下步骤启用或禁用。
启用

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk dnfs_on

禁用1. oracle 用户执行

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk dnfs_off

  1. 删除oranfstab 文件
    注意:

如果删除Oracle数据库正在使用的NFS路径,则必须重新启动数据库才能使更改生效。

在Direct NFS客户端上启用混合列压缩
执行以下步骤以在Direct NFS客户端上启用混合列压缩(HCC):

确保在NFS存储服务器上启用了SNMP。例如:
$ snmpget -v1 -c public server_name .1.3.6.1.4.1.42.2.225.1.4.2.0
SNMPv2-SMI::enterprises.42.2.225.1.4.2.0 = STRING: “Sun Storage 7410”
如果在NFS服务器以外的接口上启用了SNMP,则配置oranfstab使用management参数。
如果使用public之外的社区字符串配置SNMP,则配置oranfstab使用community参数。
检查snmpget是否可用来 确保libnetsnmp.so已经安装。

9 为Standalone Server配置Oracle Grid Infrastructure存储

https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/configuring-storage-for-oracle-grid-infrastructure-for-a-standalone-server.html#GUID-B832D62F-CC58-446E-818A-677E894A9BBA

10 为Standalone Server安装和配置Oracle Grid Infrastructure

https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/installing-and-configuring-oracle-grid-infrastructure-for-a-standalone-server.html#GUID-DA3B90BE-EE1F-4347-8A5E-ED1BBFF29D93

11 安装Oracle数据库

Oracle数据库和Oracle Grid Infrastructure安装软件在多种介质中以基于映像的zip文件的形式提供,可以使用多个选项进行安装。

在大多数情况下,您使用Oracle Universal Installer提供的图形用户界面(GUI)来安装软件。但是,您也可以使用Oracle Universal Installer完成静默模式安装。

注意:

要在Oracle自动存储管理(Oracle ASM)上安装Oracle数据库文件,必须首先为standalone server安装完成Oracle Grid Infrastructure。用于standalone server的Oracle Grid Infrastructure包含了Oracle Restart和Oracle ASM。

要升级现有Oracle ASM,请通过运行Oracle Grid Infrastructure升级来升级。

您不能使用早期版本的Oracle Universal Installer来安装此版本的组件。

关于基于镜像的Oracle数据库安装
从Oracle Database 18c开始,通过基于镜像的安装简化了Oracle数据库软件的安装和配置。
关于使用Oracle 迅捷打补丁和准备来部署Oracle数据库
您可以使用Oracle Fleet修补和配置(Oracle FPP)配置Oracle数据库软件。
访问安装软件
您可以从Oracle Technology Network网站或Oracle Software Delivery Cloud门户下载Oracle数据库软件。在某些情况下,Oracle数据库软件也可能在安装介质上可用。
关于安装期间的字符集选择
创建数据库之前,请确定要使用的字符集。
关于自动内存管理安装选项
确定是否要在安装期间配置自动内存管理。
在不同的语言运行安装程序
介绍如何运行其他语言的安装程序。
安装Oracle数据库软件
该主题说明如何运行Oracle Universal Installer来执行大部分数据库安装。
使用RPM软件包安装Oracle数据库
了解如何利用和利用RPM框架轻松部署Oracle数据库。
关于基于映像的Oracle数据库安装
从18C 开始Oracle提供了镜像形式的Oracle 软件,创建Oracle Home(建议符合OFA建议)后,解压软件包到ORACLE_HOME,然后运行runInstaller注册数据库软件。
单实例和集群都可以通过这种方式部署。
使用此方法可以实现自定义镜像的部署,比如打过补丁或升级后,创建黄金镜像部署到其他服务器。
关于使用Oracle Fleet Patching和Provisioning部署Oracle数据库
从Oracle 19C 开始, Rapid Home Provisioning被重命名为Oracle Fleet Patching and Provisioning (Oracle FPP).。
通过Oracle Fleet Patching和Provisioning,您可以Oracle软件镜像方式创建,存储和管理OracleHome模板(这称为gold images)。比如数据库,中间件和应用。您可以制作任何黄金映像的工作副本,然后您可以将该工作副本提供给数据中心或云计算环境中的任何节点。
无论集群还是单节点还是OracleRestart 上,无论是否安装有GI 都可以通过Oracle FPP部署,打补丁和升级。
Microsoft Windows和HP-UX Itanium系统不支持Oracle Fleet Patching和Provisioning

挂载镜像到操作系统
#mount -t iso9660 /dev/dvd /mnt/dvd
关于安装期间的字符集选择
创建数据库后,更改其字符集通常在时间和资源方面非常昂贵。此类操作可能需要通过导出导入来转换所有字符数据。因此,在安装时仔细选择数据库字符集非常重要。
Oracle在以下地方使用字符集:

字符数据类型(CHAR,VARCHAR2,CLOB,和LONG)。
表名,列名和PL / SQL变量等标识符。
存储的SQL和PL / SQL源代码,包括嵌入在此代码中的文本文字
从Oracle Database 12c第2版(12.2)开始,从通用/事务处理或数据仓库模板创建的数据库的缺省数据库字符集是Unicode AL32UTF8。
Unicode是通用字符集,支持世界上大多数当前使用的语言。它还支持许多历史脚本(字母表)。Unicode是许多技术的默认编码,包括Java,XML,XHTML,ECMAScript和LDAP。Unicode非常适合支持互联网和全球化。
AL32UTF8是一个多字节字符集,字符操作相比单字节字符集(如WE8ISO8859P1或WE8MSWIN1252)可能会稍微慢一些。存储空间AL32UTF8与支持该语言的传统字符集相比要求更高一些。英文数据只有存储在CLOB列中时,才可能需要更多空间。非字符数据类型(如NUMBER or DATE)的存储不依赖于字符集。Unicode的普遍性和灵活性通常超过了这些额外的成本。
多租户容器数据库(CDB)的数据库字符集决定以后可以插入哪些数据库。确保你的容器数据库与要插拔的PDB字符集兼容。如果你选择AL32UTF8, 则可插拔任何Oracle 数据库支持的字符集(基于EBCDIC的字符集除外)。

关于AMM
如果物理内存大于4GB,则安装过程中不能选择AMM,可以选择ASMM
安装Oracle数据库软件
安装向导创建镜像选项
在启动Oracle数据库或Grid 安装向导之前,请确定是否要使用任何可用的镜像创建选项。
运行安装向导安装Oracle数据库
提取数据库镜像文件并运行runInstaller命令开始安装。
安装向导用于创建镜像的安装选项
基于镜像的安装你可以安装数据库或Grid通过运行runInstaller 和 gridSetup.sh ,他们都提供了镜像创建选项:
表11-1安装向导的映像创建选项

选项
描述
-createGoldImage 从当前的Oracle Home创建黄金镜像
-destinationLocation 指定要创建黄金镜像的完整路径或位置。
-exclFiles 指定要从新创建的黄金镜像中排除的文件的完整路径。
—help 帮助。

例如:

./runInstaller -createGoldImage -destinationLocation /tmp/my_db_images
./gridSetup.sh -createGoldImage -destinationLocation /tmp/my_grid_images

运行Oracle数据库安装向导以安装Oracle数据库
Oracle 给出的安装步骤:
Oracle用户执行:
$ mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
$ chgrp oinstall /u01/app/oracle/product/19.0.0/dbhome_1
$ cd /u01/app/oracle/product/19.0.0/dbhome_1
$ unzip -q /tmp/db_home.zip
$ cd /u01/app/oracle/product/19.0.0/dbhome_1
$ ./runInstaller
配置选项选择:Create and configure a single instance database.
你可以提供信息自动运行root脚本,也可以手工运行。如果自动运行该失败,你可以修复问题后重新执行。
使用RPM软件包安装Oracle数据库
关于基于RPM的Oracle数据库安装
从Oracle Database 18c开始,您可以使用RPM软件包安装单实例Oracle数据库或Oracle Database Instant Client软件。
基于RPM的安装的限制和准则
RPM包命名约定
RPM包命名约定包括诸如版本,发行版和体系结构之类的信息。
运行RPM软件包以安装Oracle数据库
执行以下步骤以使用RPM软件包安装和配置Oracle数据库。
关于基于RPM的Oracle数据库安装
从Oracle Database 18c开始,您可以使用RPM软件包安装单实例Oracle数据库或Oracle Database Instant Client软件。

基于RPM的安装执行预安装检查,提取数据库软件,将提取的软件的所有权重新分配给预配置的用户和组,维护Oracle清单,并执行为单实例Oracle配置Oracle数据库软件所需的所有根操作数据库创建和配置。

基于RPM的安装过程会检测何时不满足安装的最低要求,并提示您完成这些最低预安装要求。

基于RPM的安装执行仅限软件的Oracle数据库安装并创建Oracle Home。创建Oracle Home后,您可以使用 DBCA 创建Oracle数据库。

基于RPM的安装过程为您提供了使用/etc/init.d/oracledb_ORCLCDB-19c服务配置脚本使用默认设置创建数据库的选项。

基于RPM的安装的限制和指南
不支持使用RPM为Oracle数据库软件打补丁。请使用OPatch并按照常规修补过程应用Oracle数据库补丁。
基于RPM的Oracle数据库安装不适用于Standard Edition 2。
不支持使用 rpm -Uvh 升级数据库。对于Oracle数据库升级,请遵循常规升级过程。
支持RPM安装在同一台计算机上将多个Oracle数据库软件版本安装到不同的Oracle主目录中。
运行RPM软件包以安装Oracle数据库
手动安装Oracle Database RPM

以root。登录。
下载并安装OracleRPM包:
在Oracle Linux上
#yum -y install oracle-database-preinstall-19c
在Red Hat Enterprise Linux上
#curl -o oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
#yum -y localinstall oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
成功安装后,您可以删除下载的RPM文件:

#rm oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
也可以从以下位置访问基于Oracle Database RPM的安装的软件下载页面,下载RPM包
Oracle技术网
http://www.oracle.com/technetwork/indexes/downloads/index.html
坚不可摧的Linux网络(ULN)
https://linux.oracle.com/
下载后通过如下命令安装
# yum -y localinstall oracle-database-ee-19c-1.0-1.x86_64.rpm
创建和配置Oracle数据库
以默认配置安装示例数据库:
# /etc/init.d/oracledb_ORCLCDB-19c configure
如果需要修改参数请编辑:/etc/sysconfig/oracledb_ORCLCDB-19c.conf
该脚本创建包含一个PDB(ORCLPDB1)的容器数据库(ORCLCDB),并配置好监听(1521)

12 Oracle数据库安装后续任务

安装Oracle数据库后,Oracle建议您立即完成其他任务。在使用这些产品之前,还必须完成特定于产品的配置任务。

注意:

本章仅介绍基本配置。有关更详细的配置和调整信息,请参阅特定于产品的管理和调整指南。
必需的安装后任务:
1.打补丁 Release Updates (RU) and Release Update Revisions (RUR) patch
从Oracle Database 18c开始,Oracle以Release Updates(RU)和Release Update Revisions(RUR)的形式提供季度更新。Oracle不再发布补丁集。有关更多信息,请参阅My Oracle Support说明2285040.1。
登陆Mos,搜索你需要的补丁版本号,点击ReadMe,它包含了补丁信息和如何打补丁。
补丁升级成功后不要删除$ORACLE_HOME/.patch_storage目录,因为它包含了补丁信息。
2.除了SYS, SYSTEM, 和 DBSMP 用户外,其他的系统管理员账户密码均被收回,如果要使用请解锁并重设密码。
Oracle 默认账户描述说明
https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/oracle-database-system-privileges-accounts-and-passwords.html#GUID-7513171C-1055-48BB-8C79-B27EECC9B7E9
但运行各种cat*.sql脚本时,你可能会自动创建大部分的账户。检查哪些账户是Oracle 创建并维护的,查询ALL_USERS 表的USERNAME 和 ORACLE_MAINTAINED 列。如果RACLE_MAINTAINED 是Y
那么一定不要修改账户,除非运行创建他的脚本
建议的安装后任务
1.建议安装后,备份root.sh脚本,因为如果你之后在相同ORACLE HOME下通过OUI安装其他oracle 产品,将会更新root.sh的内容。
2.Oracle 建议安装/升级/打补丁后,运行utlrp.sql脚本,查找并重新编译失效对象。
3.升级ORAchK 工具。
ORAchk 检查覆盖所有Oralce软件栈,识别并定位top问题,ORAch’k 主动扫描软件,部署等已知问题。,包括如下:
独立的Oracle数据库
Oracle Grid Infrastructure
Oracle Real Application Clusters
最高可用性架构(MAA)验证
升级准备验证
Oracle GoldenGate
Oracle正在继续根据客户要求扩展检查。

Oracle ORAchk需要Python 3.6软件和库。运行时提供了确切需要哪些库的信息。
ORAchk预安装在 $ORACLE_HOME/suptools/orachk 目录,Oracle建议升级导最新版,也可以从Mos(note 1268927.2)下载独立软件。

关于Oracle数据库的默认SGA权限的更改
从Oracle 12.2.0.1开始,默认情况下,读写SGA的权限仅限于Oracle软件安装所有者,以前版本OSDBA 用户组成员也具有该权限。采用这种设定提高了安全性,但也阻止了没有oracle安装账号(通常oracle)的DBA 管理数据库。Oracle 提供了参数 ALLOW_GROUP_ACCESS_TO_SGA =FALSE 来控制是否允许OSDBA组成员访问SGA, 12.2.0.1 之后默认值是FALSE。Oracle 强烈建议使用默认值。
检查已安装的Oracle数据库内容和目录位置
$ cd $ORACLE_HOME/oui/bin
$ ./runInstaller
检查安装组件,然后关闭退出该OUI.
安装后启用和禁用Oracle数据库选项
安装Oracle数据库时,会启用或禁用某些选项。要为OracleHome启用或禁用某些特定功能,请关闭数据库并使用chopt工具。
语法:chopt[ enable| disable] db_option
该工具在 ORACLE_HOME/bin 目录下
选项
命令选项 描述
oaa
Oracle Advanced Analytics

olap
Oracle OLAP

partitioning
Oracle分区

rat
Oracle Real Application Testing

使用该工具必须先关闭数据库,修改选项后再启动数据库,用法示例:
cd $ORACLE_HOME/bin
srvctl stop database -d Sales
chopt enable oaa
srvctl start database -d Sales
启动Oracle Enterprise Manager Database Express
参考:Oracle数据库2天DBA
为EM Express配置HTTPS端口
创建快速恢复区
Oracle Restart安装过程中,您只能创建一个磁盘组。在Oracle Clusterware安装过程中,您可以创建多个磁盘组。如果计划为独立服务器或Oracle RAC添加Oracle数据库,则应为数据库文件创建快速恢复区。
关于快速恢复区和快速恢复区磁盘组
快速恢复区是与恢复相关的所有Oracle数据库文件的统一存储位置。为最近的数据启用快速备份可以减少向系统管理员请求检索备份带库以进行恢复操作的请求。
设定 DB_RECOVERY_FILE_DEST参数指定快速恢复区,Oracle会将所有RMAN备份,归档,控制文件自动备份和数据库副本写入FRA。RMAN通过删除不再需要的过时备份和归档文件自动管理FRA中的文件。
Oracle建议您创建FRA磁盘组。Oracle Clusterware文件和Oracle数据库文件可以放在同一磁盘组,您也可以将快速恢复文件放在同一磁盘组中。但是,Oracle建议您创建单独的FRA磁盘组以减少存储争用。
设定DB_RECOVERY_FILE_DEST 启用快速恢复区,通过DB_RECOVERY_FILE_DEST_SIZE设定快速恢复区大小,一般规则来说,FRA越大月有用,为了方便使用,Oracle建议创建FRA磁盘组至少 能保留3天恢复信息。理想情况下,FRA 应该能够包含所有的文件副本(数据恢复所需要的所有的数据文件,控制文件,在线日志和归档文件)。
多个数据库可以指向同一个FRA,根据数据库的重要性通过DB_RECOVERY_FILE_DEST_SIZE参数分别指定其对应的大小。
创建快速恢复区磁盘组
$ cd /u01/app/oracle/product/19.0.0/grid/bin
$ ./asmca
克隆Oracle Home
克隆Oracle主目录涉及创建OracleHome的copy,然后针对新环境进行配置。
如果你需要安装多套Oracle 数据库,那么您可能想要克隆Oracle Home,因为克隆比重新安装要节省时间,如果你已经打了补丁,那么此方法同样有用。新的OracleHOME已经打了补丁。
执行以下步骤以克隆Oracle主目录:
1.验证你要克隆的数据库是成功的。
cat /u01/app/oracle/oraInventory/logs/installActionsdate_time.log
如果打了补丁,检查
$ORACLE_HOME/OPatch/opatch lsinventory
2. 停止与Oracle home.有关的所有进程
3. 创建Oracle Home的压缩文件(不是Oracle Base)
如:
#zip -r dbhome_1.zip /u01/app/oracle/product/19.0.0/dbhome_1

#tar -cvf dbhome_1.tar /u01/app/oracle/product/19.0.0/dbhome_1
不要包含Oracle Base 下的admin, fast_recovery_area, 和oradata 目录,这些目录会在安装新库的时候创建。
4. Copy 文件导目标库,如果使用FTP,请使用Binary模式传输
5. 使用如下命令抽取压缩包
#unzip -d / dbhome_1.zip
#tar -xvf dbhome_1.tar
6.修改目录拥有者
#chown -R oracle:oinstall /u01/app/oracle/product/19.0.0/dbhome_1
7. 移除解压缩的ORACLE HOME 下不需要的文件
#cd $ORACLE_HOME
#rm -rf network/admin/*.ora
#rm dbs/old_database_entries
9. 运行 $ORACLE_HOME/clone/bin/clone.pl 脚本,使用如下语法,你也可以添加其他组。
$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/clone/bin/clone.pl ORACLE_BASE="/u01/app/oracle" ORACLE_HOME="/u01/app/oracle/product/19.0.0/dbhome_1"
OSDBA_GROUP=dba OSOPER_GROUP=oper OSBACKUPDBA_GROUP=backupdba OSDGDBA_GROUP=dgdba OSKMDBA_GROUP=kmdba OSRACDBA_GROUP=racdba -defaultHomeName

如果此命令中未指定操作系统组,clone.pl使用源ORACLE HOME 的操作系统组
运行$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/clone/bin/clone.pl -help 获取更多选项
clone.pl 在19C中已弃用,将来会被移除。所以Oracle 建议您使用仅安装软件选项代替clone.pl克隆数据库

OUI启动,然后将克隆操作记录在cloneActionstimestamp.log文件中。此日志文件通常位于/u01/app/oracle/oraInventory/logs目录中。
使用以下命令运行Net Configuration Assistant以配置新数据库的连接信息:
Oracle卸载选项
$ cd $ORACLE_HOME/bin
$ ./netca
使用以下命令运行Database Configuration Assistant以为新克隆的oracle主目录创建新的Oracle数据库:
$ cd $ORACLE_HOME/bin
$ ./dbca

13删除Oracle数据库软件

执行Oracle HOME 下的 deinstall 删除Oracle 软件。
注意:如果您在集群中某个节点上安装了单实例数据库,或者你有多个数据库使用了相同的Global Name(GDN),您不能使用deinstall只移除一个数据库
您可以通过deinstall 来停止和删除数据库软件和组件。包括:
Oracle Database
Oracle Grid Infrastructure, which includes Oracle Clusterware and Oracle Automatic Storage Management (Oracle ASM)
Oracle Real Application Clusters (Oracle RAC)
Oracle Database Client
deinstall 命令位于 $ORACLE_HOME/deinstall 目录

-checkonly 选项,你可以创建响应文件,您也可以编辑默认响应文件。

卸载Grid, RAC 下以root 执行rootcrs.sh; Oracle Gi for Standalone 下以root执行roothas.sh 替代deinstall 删除Grid Infrastracture

如果Oracle Home 中的软件未运行(比如安装失败),那么deinstall 不能确定配置文件,您需要交互或通过响应文件提供。

在卸载Oracle GI前,您需要卸载ACFS且禁用ADVM.

如果您在使用GNS,通知管理员移除DNS相关子域名

运行时deinstall,如果中央目录(oraInventory)中不包含其他已注册的oracle 软件,则将以下文件和目录:

admin
cfgtoollogs
checkpoints
diag
oradata
fast_recovery_area
Oracle强烈建议您使用Optimal Flexibl

deinstall 删除Oracle 配置文件,数据文件和FRA 文件。即使他们不在ORACLE BASE下。卸载语法:

./deinstall [-silent] [-checkonly] [-paramfile complete path of input response file]
[-params name1=value name2=value . . .]
[-o complete path of directory for saving files]
[-tmpdir complete path of temporary directory to use]
[-logdir complete path of log directory to use] [-local] [-skipLocalHomeDeletion] [-skipRemoteHomeDeletion] [-help]
参考:https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/oracle-deinstallation-tool-deinstall.html#GUID-71E860C5-4E1E-4D2F-AFD1-141709A172C0
Oracle数据库的卸载示例
cd O R A C L E H O M E / d e i n s t a l l . / d e i n s t a l l 执 行 卸 载 你 可 以 加 上 − c h e c k o n l y 用 来 创 建 响 应 文 件 , 也 可 以 编 辑 响 应 文 件 模 板 : ORACLE_HOME/deinstall ./deinstall 执行卸载 你可以加上-checkonly 用来创建响应文件,也可以编辑响应文件模板: ORACLEHOME/deinstall./deinstallcheckonlyORACLE_HOME/deinstall/response/deinstall.rsp.tmpl
通过参数 -paramfile 指定响应文件位置
案例1,卸载Oracle
$ cd /u01/app/oracle/product/19.0.0/dbhome_1/deinstall
$ ./deinstall -paramfile /home/usr/oracle/my_db_paramfile.tmpl
案例2,卸载Grid Infrostrucure
$ cd /u01/app/oracle/product/19.0.0/grid/deinstall
$ ./deinstall -paramfile /home/usr/oracle/my_grid_paramfile.tmpl
降级Oracle Restart
如果在安装期间收到错误,请使用此过程取消配置和降级Oracle Restart,或者对Oracle Restart进行故障排除。

要降级Oracle Restart,必须首先降级Oracle数据库,取消配置Oracle Restart,然后重新配置Oracle Restart。

此外,roothas.sh-deconfig -force 可以在不删除已安装的二进制文件的情况下取消配置Oracle Restart。如果在为独立服务器安装Oracle Grid Infrastructure期间遇到错误,则此功能非常有用。

例如,运行root.sh命令时,您发现缺少操作系统软件包。通过运行roothas.sh -deconfig -force,您可以取消配置Oracle Restart,修正错误,然后再次运行root.sh。

注意:

在取消配置或降级Oracle Restart之前,停止所有正在运行的数据库,服务和侦听器。
以oracle用户身份创建PFILE的备份:
CREATE PFILE=’/u01/app/oracle/product/19.0.0/dbhome_1/dbs/test_init.ora’
FROM SPFILE=’/u01/oracle/dbs/test_spfile.ora’;
以root用户身份登录。
降级Oracle数据库。
降级Oracle Restart资源:
#srvctl downgrade database -d db_unique_name -o $ORACLE_HOME -t to_version
切换到Grid_home/crs/install目录:
#cd /u01/app/oracle/product/19.0.0/grid/crs/install
取消配置Oracle Restart。
#roothas.sh -deconfig -force
以grid用户身份执行deinstall卸载Oracle Restart :
$ cd /u01/app/19.0.0/grid/deinstall/
$ ./deinstall
deinstall工具将Oracle Grid Infrastructure home分离,更新OraInventory并清空目录。
在早期版本的Oracle Restart home中以root用户身份手动运行root.sh以配置Oracle Restart。
如果您的系统上没有早期版本的Oracle Restart,则安装相应版本的Oracle Grid Infrastructure for standalone server 以安装Oracle Restart。
以grid用户将组件添加回Oracle Restart 。
将Oracle数据库添加到Oracle Restart配置:
$ srvctl add database -db db_unique_name -o $ORACLE_HOME
将监听添加到Oracle Restart配置:
$ srvctl add listener -l listener_name -o $ORACLE_HOME
使用srvctl add service命令将每个服务添加到数据库。例如:
$ srvctl add service -db mydb -service myservice
将Oracle主目录连接到Oracle Restart配置:
$ ./runInstaller -silent -ignoreSysPrereqs -attachHome ORACLE_HOME="/u01/app/oracle/product/19.0.0/dbhome_1" ORACLE_HOME_NAME="Ora19c_home
删除基于RPM的Oracle数据库安装
#yum -y remove oracle-database-ee-19c
yum命令检测OracleHome中的默认配置组件,例如数据库(ORCLCDB)和监听(LISTENER),并为您删除这些组件。
yum命令检测到Oracle主目录中的其他已配置组件(如其他数据库或监听),则会停止卸载过程。将显示一条消息,指示您手动删除这些已配置的组件。 要删除这些已配置的组件:

$ cd $ORACLE_HOME/bin
$ ./dbca
要删除与安装关联的任何监听,请运行Oracle Net Configuration Assistant(Oracle NETCA)。
$ cd $ORACLE_HOME/bin
$ ./netca
再次登录root执行yum命令以删除基于rpm的数据库安装。
#yum -y remove oracle-database-ee-19c
卸载以前的版本Grid Home
对于以前版本的升级,如果要卸载以前版本的Grid home,请执行以下步骤:
以root用户身份登录。
手动更改先前版本Grid home的权限。
#chmod -R 775 /u01/app/oracle/product/18.0.0/grid
#chown -R oracle:oinstall /u01/app/oracle/product/18.0.0/grid
#chown oracle /u01/app/oracle/product/18.0.0
在这个例子中:

/u01/app/oracle/product/18.0.0/grid 是以前版本的Oracle Grid Infrastructure,用于独立服务器Home
oracle 是Oracle Grid Infrastructure安装所有者用户
oinstall 是Oracle Inventory组的名称(OINSTALL组)
/u01/app/oracle/product/18.0.0 是前一个Grid Home的父目录。
以Oracle Grid Infrastructure软件所有者user(oracle)身份登录并运行deinstall命令。
A 手工完成预安装任务
Oracle建议您使用Oracle Universal Installer和Cluster Verification Utility修复脚本来完成最小配置设置。如果您无法使用修复脚本,请手动完成最低系统设置。
为Linux配置内核参数
使用Oracle ASMLIB配置存储设备路径持久性
手动配置存储设备路径持久性
配置Linux内核参数
这些主题说明了如果无法使用修复脚本完成它们,如何为Linux手动配置内核参数。

最小参数设置
更改内核参数值
为SUSE Linux配置其他内核设置
手动设置UDP和TCP内核参数
安装的最小参数设置
如果无法使用修正脚本,请使用此表手动设置参数

注意:

除非另行指定,否则下表中显示的内核参数和shell限制值仅为最小值。对于生产数据库系统,Oracle建议您调整这些值以优化系统性能。有关调整内核参数的更多信息,请参阅操作系统文档。
如果任何参数的当前值大于此表中列出的值,则Fixup脚本不会更改该参数的值。
表A-1最低操作系统资源参数设置

参数 值 文件
SEMMSL

SEMMNS

SEMOPM

SEMMNI

250

32000

100

128

/proc/sys/kernel/sem
SHMALL
大于或等于shmmax的值,以页为单位。

/proc/sys/kernel/shmall
SHMMAX
物理内存大小的一半(以字节为单位)

有关配置shmmax的其他信息,请参阅My Oracle Support说明567506.1。

/proc/sys/kernel/shmmax
SHMMNI
4096

/proc/sys/kernel/shmmni
panic_on_oops
1

/proc/sys/kernel/panic_on_oops
file-MAX
6815744

/proc/sys/fs/file-max
AIO-MAX-NR
1048576

注意:此值限制并发高峰的请求,应设置为避免I/O子系统故障。

/proc/sys/fs/aio-max-nr
ip_local_port_range
最低:9000

最大值:65500

/proc/sys/net/ipv4/ip_local_port_range
rmem_default
262144

/proc/sys/net/core/rmem_default
rmem_max
4194304

/proc/sys/net/core/rmem_max
wmem_default
262144

/proc/sys/net/core/wmem_default
wmem_max
1048576

/proc/sys/net/core/wmem_max
更改内核参数值
如果内核参数值与最小建议值不同,请使用这些说明显示和更改内核参数值。

使用以下命令显示内核参数的当前值:

表A-2显示内核参数值的命令

参数 命令
semmsl,semmns,semopm和semmni # /sbin/sysctl -a | grep sem
此命令显示信号量参数的值。

shmall,shmmax和shmmni # /sbin/sysctl -a | grep shm
此命令显示共享内存段大小的详细信息。

file-MAX # /sbin/sysctl -a | grep file-max
此命令显示最大文件句柄数。

ip_local_port_range # /sbin/sysctl -a | grep ip_local_port_range
此命令显示端口号范围。

rmem_default # /sbin/sysctl -a | grep rmem_default
rmem_max # /sbin/sysctl -a | grep rmem_max
wmem_default # /sbin/sysctl -a | grep wmem_default
wmem_max # /sbin/sysctl -a | grep wmem_max
AIO-MAX-NR # /sbin/sysctl -a | grep aio-max-nr
如果您使用Oracle预安装RPM来完成预安装配置任务,那么Oracle预安装RPM会为您设置这些内核参数。但是,如果您未使用Oracle预安装RPM或内核参数与建议的最小值不同,则更改这些内核参数值:

使用任何文本编辑器,创建或编辑/etc/sysctl.d/97-oracle-database-sysctl.conf文件,添加或编辑类似于以下内容的行:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
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 = 1048576
更改内核参数的当前值:
#/sbin/sysctl --system
查看输出。如果值不正确,请编辑该/etc/sysctl.d/97-oracle-database-sysctl.conf文件,然后再次输入此命令。
确认值设置正确:
#/sbin/sysctl -a
重新启动计算机,或运行sysctl --system以使/etc/sysctl.d/97-oracle-database-sysctl.conf生效。
设置内核参数值的准则
如果您使用了Oracle预安装RPM,那么您的内核参数设置将驻留在/etc/sysctl.d/99-oracle-database-server-19c-preinstall-sysctl.conf文件中。
仅包含要更改的内核参数值的行。对于信号量参数(kernel.sem),您必须指定所有四个值。如果任何当前值大于最小值,则指定较大的值。
/etc/sysctl.conf文件已被弃用。
避免在/etc/sysctl.d/下的多个文件中设置内核参数值。具有词法后面名称的文件/etc/sysctl.d/优先,然后才是/etc/sysctl.conf。 Oracle建议您使用Oracle预安装RPM,除其他预安装任务外,还会为数据库安装设置内核参数值。
配置SUSE Linux的其他内核设置
SUSE Linux Enterprise Server系统上需要其他内核参数设置配置。

仅在SUSE Linux Enterprise Server系统上执行以下步骤:
输入以下命令以使系统/etc/sysctl.conf 在重新启动时读取文件:
#/sbin/chkconfig boot.sysctl on
输入oinstall组的GID作为参数/proc/sys/vm/hugetlb_shm_group.的值。
例如,oinstall组GID是501:

#echo 501 > /proc/sys/vm/hugetlb_shm_group
使用vi 添加下面的文本/etc/sysctl.conf,并使boot.sysctl 脚本在系统重新启动后运行:
vm.hugetlb_shm_group=501
注意:

只能将一个组定义为vm.hugetlb_shm_group。

手动设置UDP和TCP内核参数
如果不使用Fixup脚本或CVU设置临时端口,则设置TCP / IP临时端口范围参数,以便为预期的服务器工作负载提供足够的临时端口。

确保将较低范围设置为至少9000或更高,以回避Well Known端口,并回避Oracle和其他服务器端口常用的Registered Ports范围。将端口范围设置得足够高,以为您打算使用的任何应用程序保留端口。

如果您所拥有的范围的较低值大于9000,并且该范围足以满足您的预期工作负载,那么您可以忽略有关临时端口范围的Oracle Universal Installer警告。

例如,使用IPv4,使用以下命令检查临时端口的当前范围:
$ cat /proc/sys/net/ipv4/ip_local_port_range
32768 61000
在前面的示例中,最低端口(32768)和最高端口(61000)设置为默认范围。

如有必要,请将UDP和TCP临时端口范围更新到足以满足预期系统工作负载的范围,并确保临时端口范围从9000及更高开始。例如:
#echo 9000 65500 > /proc/sys/net/ipv4/ip_local_port_range
Oracle建议您永久保留这些设置。例如,root使用文本编辑器打开/etc/sysctl.conf,添加或更改以下内容:net.ipv4.ip_local_port_range = 9000 65500,然后重新启动网络:
#/etc/rc.d/init.d/network restart
使用Oracle ASMLIB配置存储设备路径持久性
要使用Oracle ASMLIB配置Oracle ASM设备,请完成以下任务:

注意:

要创建在安装期间使用Oracle ASM驱动程序的数据库,必须选择以交互模式运行ASMCA的安装方法。您还必须将磁盘发现字符串更改为ORCL:*。

IBM不支持Oracle ASMLIB:System z上的Linux。

关于Oracle ASM与Oracle ASMLIB
安装和配置Oracle ASMLIB
配置磁盘设备以使用Oracle ASMLIB
管理Oracle ASMLIB和磁盘
在Oracle数据库上卸载Oracle ASMLIB
参考:https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/configuring-storage-device-path-persistence-using-oracle-asmlib.html#GUID-BBD347D1-17D2-422A-879F-07FD189A4A2D
因使用ASMLIB不太方便,此处略过
手动配置存储设备路径持久性
您可以通过创建规则文件来维护存储文件路径持久性。

默认情况下,设备文件命名方案udev在服务器启动时动态创建设备文件名,并将其所有权分配给root。如果udev应用默认设置,则会为磁盘修改Oracle设备文件名和所有者,导致服务器重新启动时无法访问磁盘。

例如,在重新启动服务器之后拥有者为grid 的表决盘/dev/sdd,可能变成拥有者为root 的设备/dev/sdf。

如果使用Oracle ASMFD,则无需确保udev权限和设备路径持久性。

如果不使用Oracle ASMFD,则必须创建自定义规则文件。Linux供应商自定义其udev配置并使用不同的顺序来读取规则文件。例如,在某些Linux发行版udev启动时,它会依次执行规则文件中定义的规则(配置指令)。

这些文件位于路径中/etc/udev/rules.d/。规则文件以词法顺序读取。例如,文件10-wacom.rules中的规则在90-ib.rules之前被解析和执行。

在udev规则文件中指定设备信息时,请确保指定OWNER,GROUP和MODE在显示的顺序中的所有其他特征之前。例如,要在UDEV行上包含特征ACTION,请在OWNER,GROUP和MODE之后指定ACTION。

如果规则文件指向了相同设备,在受支持的Linux内核版本上,最后读取的文件生效。

为Oracle ASM手动配置设备持久性
在现有系统(单实例或群集)上,要获取当前挂载路径,请在服务器上的存储设备上运行命令scsi_id(/sbin/scsi_id)以获取其唯一的设备标识符。 scsi_id使用-s参数运行命令时,您提供的设备路径和名称应该相对于sysfs目录/sys,(例如/block/device)对于/sys/block/device。 例如:
  # /sbin/scsi_id -g -s /block/sdb/sdb1
    360a98000686f6959684a453333524174
    # /sbin/scsi_id -g -s /block/sde/sde1
   360a98000686f6959684a453333524179
  记录唯一的SCSI标识符,以便在需要时提供它们。

注意:

无论scsi_id命令从哪个节点运行,该命令都应返回给定设备的相同设备标识符值。

通过编辑/etc/scsi_id.config文件并添加options=-g到文件,将SCSI设备配置为可信设备(列为白名单)。例如:
#cat > /etc/scsi_id.config
vendor=“ATA”,options=-p 0x80
options=-g
使用文本编辑器为Oracle ASM设备创建UDEV规则文件,为安装所有者和您指定OSASM组的操作系统组设置权限0660,其成员是Oracle Grid Infrastructure软件的管理员。 例如,在Oracle Linux上,要创建rules.d安装所有者所在的基于角色的配置文件grid和OSASM组asmadmin,请输入类似于以下内容的命令:
#vi /etc/udev/rules.d/99-oracle-asmdevices.rules

KERNEL==“sdb1, OWNER=“grid”, GROUP=“asmadmin”, MODE=“0660”,
BUS==“scsi”, PROGRAM==”/sbin/scsi_id", RESULT==“14f70656e66696c00000000”
KERNEL==“sdc1”, OWNER=“grid”, GROUP=“asmadmin”, MODE=“0660”,
BUS==“scsi”, PROGRAM=="/sbin/scsi_id", RESULT==“14f70656e66696c00000001”
KERNEL==“sdd1”, OWNER=“grid”, GROUP=“asmadmin”, MODE=“0660”,
BUS==“scsi”, PROGRAM=="/sbin/scsi_id", RESULT==“14f70656e66696c00000002”
在群集系统上,将rules.d文件复制到群集上的所有其他节点。例如:
#scp 99-oracle-asmdevices.rules root@node2:/etc/udev/rules.d/99-oracle-asmdevices.rules
以root用户身份,运行partprobe命令。
#/sbin/partprobe /dev/sdc1
#/sbin/partprobe /dev/sdd1
#/sbin/partprobe /dev/sde1
#/sbin/partprobe /dev/sdf1
运行命令udevtest(/sbin/udevtest)以测试您创建的UDEV规则配置。输出应指示设备可用且规则按预期应用。例如,对于/dev/ssd1:
#udevtest /block/sdd/sdd1
main: looking at device ‘/block/sdd/sdd1’ from subsystem ‘block’
udev_rules_get_name: add symlink
‘disk/by-id/scsi-360a98000686f6959684a453333524174-part1’
udev_rules_get_name: add symlink
‘disk/by-path/ip-192.168.1.1:3260-iscsi-iqn.1992-08.com.netapp:sn.887085-part1’
udev_node_mknod: preserve file ‘/dev/.tmp-8-17’, because it has correct dev_t
run_program: ‘/lib/udev/vol_id --export /dev/.tmp-8-17’
run_program: ‘/lib/udev/vol_id’ returned with status 4
run_program: ‘/sbin/scsi_id’
run_program: ‘/sbin/scsi_id’ (stdout) ‘360a98000686f6959684a453333524174’
run_program: ‘/sbin/scsi_id’ returned with status 0
udev_rules_get_name: rule applied, ‘sdd1’ becomes ‘data1’
udev_device_event: device ‘/block/sdd/sdd1’ validate currently present symlinks
udev_node_add: creating device node ‘/dev/data1’, major = ‘8’, minor = ‘17’,
mode = ‘0640’, uid = ‘0’, gid = ‘500’
udev_node_add: creating symlink
‘/dev/disk/by-id/scsi-360a98000686f6959684a453333524174-part1’ to ‘…/…/data1’
udev_node_add: creating symlink
‘/dev/disk/by-path/ip-192.168.1.1:3260-iscsi-iqn.1992-08.com.netapp:sn.84187085
-part1’ to ‘…/…/data1’
main: run: ‘socket:/org/kernel/udev/monitor’
main: run: ‘/lib/udev/udev_run_devd’
main: run: ‘socket:/org/freedesktop/hal/udev_event’
main: run: ‘/sbin/pam_console_apply /dev/data1
/dev/disk/by-id/scsi-360a98000686f6959684a453333524174-part1
/dev/disk/by-path/ip-192.168.1.1:3260-iscsi-iqn.1992-08.com.netapp:sn.84187085-
part1’
在示例输出中,请注意应用规则会将OCR设备/dev/sdd1重命名为/dev/data1。

加载规则并重新启动UDEV服务。例如:
Oracle Linux和Red Hat Enterprise Linux
#udevadm control --reload-rules
SUSE Linux Enterprise Server
#/etc/init.d boot.udev restart
验证是否正确设置了设备权限和拥有者。
B使用响应文件安装和配置Oracle数据库
查看以下主题以使用响应文件安装和配置Oracle产品。

响应文件的工作原理
响应文件可以帮助您在多台计算机上多次安装Oracle产品。
使用静默模式或响应文件模式的原因
查看本节以了解在静默模式或响应文件模式下运行安装程序的用例。
使用响应文件
查看此信息以使用响应文件。
准备响应文件
查看此信息以准备响应文件,以便在静默模式或响应文件模式安装期间使用。
使用响应文件运行Oracle Universal Installer
创建响应文件后,在命令行运行Oracle Universal Installer,指定您创建的响应文件,以执行安装。
使用响应文件运行配置助手
您可以在响应文件或静默模式下运行配置助手,以便在系统上安装Oracle软件后对其进行配置和启动。要在响应文件或静默模式下运行配置助手,您必须复制和编辑响应文件模板。
使用安装期间创建的
响应文件进行安装后配置使用响应文件在安装后配置Oracle软件。您可以使用在安装期间创建的相同响应文件来完成安装后配置。
使用ConfigToolAllCommands脚本进行安装后配置
您可以在安装Oracle软件后创建并运行响应文件配置。该configToolAllCommands脚本要求用户创建第二个响应文件,其格式与用于安装产品的格式不同。
响应文件的工作原理
响应文件可以帮助您在多台计算机上多次安装Oracle产品。

启动Oracle Universal Installer(OUI)时,您可以使用响应文件自动安装和配置Oracle软件的全部或部分。OUI使用响应文件中包含的值来提供部分或全部安装提示的答案。

通常,安装程序以交互模式运行,这意味着它会提示您在图形用户界面(GUI)中提供信息。使用响应文件提供此信息时,可以使用以下任一模式从命令提示符运行安装程序:

静默模式
如果响应文件中包含所有提示的响应,在启动安装程序时指定-silent选项,则它将以静默方式运行。在静默模式安装期间,安装程序不显示任何屏幕,而是在您用于启动它的终端中显示进度信息。

响应文件模式
如果在响应文件中包含部分或全部提示的响应并省略-silent选项,则安装程序将以响应文件模式运行。在响应文件模式安装期间,安装程序将显示所有屏幕,包括在响应文件中为其指定信息的屏幕,以及未在响应文件中指定所需信息的屏幕。

您可以通过输入响应文件中列出的变量的值来定义静默或响应文件安装的设置。例如,要指定Oracle主目录名,请提供ORACLE_HOME环境变量的Oracle主路径:

ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
使用静默模式或响应文件模式的原因
有关在静默模式或响应文件模式下运行安装程序的用例,请查看本节。

模式 用途
静默模式

使用静默模式进行以下安装:

完成无人参与安装,您可以使用操作系统 at 实用程序进行安排。
在多个系统上完成几个类似的安装,无需用户交互
在没有安装X Window System软件的系统上安装软件。
安装程序会在您用于启动它的终端上显示进度信息,但不会显示任何安装程序屏幕。

响应文件模式

在多个系统上使用响应文件模式完成类似的Oracle软件安装,为某些提示提供默认答案,但不是所有提示。

使用响应文件

使用以下常规步骤在静默或响应文件模式下使用安装程序安装和配置Oracle产品:

注意:

在以静默或响应文件模式运行安装程序之前,必须在系统上完成所有必需的预安装任务。

准备响应文件。
以静默或响应文件模式运行安装程序。
根据Oracle Universal Installer的提示运行 root 脚本。
如果您完成了纯软件安装,则以静默或响应文件模式运行Net Configuration Assistant和Oracle DBCA,以分别创建数据库侦听器和Oracle数据库实例。
准备响应文件
编辑响应文件模板
录制响应文件
Oracle为每个产品和每个配置工具都提供响应文件模板。
对于Oracle数据库,响应文件模板位于$ORACLE_HOME/install/response目录中。
对于Oracle Grid Infrastructure,响应文件模板位于Grid_home/install/response目录中。
表B-1 Oracle数据库和Oracle Grid Infrastructure的响应文件

响应文件 描述
db_install.rsp

无声安装Oracle数据库。

dbca.rsp

使用Oracle DBCA静默创建和配置Oracle数据库。

netca.rsp

使用Oracle NETCA静默配置Oracle Net。

gridsetup.rsp

Oracle Grid Infrastructure安装的静默配置。

警告:

修改响应文件模板并保存文件以供使用时,响应文件可能包含纯文本密码。响应文件的所有权应仅提供给Oracle软件安装所有者,响应文件的权限应更改为600. Oracle强烈建议数据库管理员在不使用时删除或保护响应文件。

要复制和修改响应文件:

将响应文件从响应文件目录复制到系统上的目录:
例如,对于Oracle数据库:

$ cp $ORACLE_HOME/install/response/db_install.rsp local_directory
在文本编辑器中打开响应文件:
$ vi /local_dir/db_install.rsp
按照文件中的说明进行编辑。
注意:

如果未正确配置响应文件,安装程序或配置助手将失败。另外,请确保您的响应文件名具有.rsp后缀。

通过将文件的权限更改为600来保护响应文件:
$ chmod 600 /local_dir/db_install.rsp
确保只有Oracle软件所有者用户可以查看或修改响应文件,或者在安装成功后考虑删除它们。

注意:

Oracle数据库安装的完全指定的响应文件包含数据库管理帐户的密码以及作为OSDBA组成员的用户的密码(自动备份所需)。

录制响应文件
您可以在交互模式下使用OUI来记录响应文件,然后您可以编辑并使用它们来完成静默模式或响应文件模式安装。此方法对于高级或纯软件安装非常有用。

在安装过程中通过在Summary page 点击 Save Response File 您可以保存所有安装步骤到响应文件,您可以将响应文件应用于稍后的静默安装。
保存响应文件后,您可以继续安装,也可以选择退出安装。
注意:

OUI在记录响应文件时不保存密码。

要记录响应文件:

完成标准安装的预安装任务。
当您运行安装程序以记录响应文件时,它会检查系统以验证它是否满足安装软件的要求。因此,Oracle建议您完成所有必需的安装前任务。

确保Oracle软件所有者用户(通常oracle)对指定的OracleHome 目录具有创建或写权限
在每个安装屏幕上,指定所需信息。
当安装程序显示“Smmary”屏幕时,请执行以下步骤:
单击保存响应文件。在窗口中,指定新响应文件的文件名和位置。
单击“ 完成”继续安装。
如果您不想继续安装,请单击“ 取消”。安装停止,但保留记录的响应文件。

注意:

确保您的响应文件名具有.rsp后缀。
在另一个系统上使用该响应文件之前,请编辑该文件并进行所需的更改。编辑时,请使用文件中的说明作为指导。
使用响应文件运行Oracle Universal Installer
获取帮助信息

对于Oracle数据库:
$ $ORACLE_HOME/runInstaller -help
对于Oracle Grid Infrastructure:
$ /u01/app/oracle/product/19.0.0/grid/gridSetup.sh -help
要使用响应文件运行安装程序:

完成正常安装的预安装任务。
以软件安装所有者用户身份登录。
如果要以响应文件模式安装,请设置DISPLAY环境变量,静默模式不需要。
要以静默或响应文件模式启动安装程序,请输入类似于以下内容的命令:
对于Oracle数据库:
$ $ORACLE_HOME/runInstaller [-silent]
-responseFile responsefilename
对于Oracle Grid Infrastructure:
$ /u01/app/oracle/product/19.0.0/grid/gridSetup.sh [-silent]
-responseFile responsefilename
注意:

不要指定响应文件的相对路径。如果指定相对路径,则安装程序将失败。

如果这是您第一次在系统上安装Oracle软件,则Oracle Universal Installer会提示您运行orainstRoot.sh脚本。
以root用户身份登录并运行orainstRoot.sh脚本:

$ su root
password:
#/u01/app/oraInventory/orainstRoot.sh
安装完成后,以root用户身份登录并运行root.sh脚本。例如:
$ su root
password:
#$ORACLE_HOME/root.sh
使用响应文件运行netca
$ cp /directory_path/assistants/netca/netca.rsp local_directory
$ vi /local_dir/netca.rsp
$ $ORACLE_HOME/bin/netca /silent /responsefile /local_dir/netca.rsp
使用响应文件运行Oracle DBCA

$ cp /directory_path/assistants/dbca/dbca.rsp local_directory
$ $ORACLE_HOME/bin/dbca -help
$ vi /local_dir/dbca.rsp
$ORACLE_HOME/bin/dbca [-silent] -responseFile /local_dir/dbca.rsp
您还可以在命令行上指定响应文件中的选项。安装前请设定ORACLE_HOME 环境变量,如果采用响应文件模式,您还需要设定DISPLAY 环境变量。
为安装后配置使用安装响应文件
从Oracle Database 12c第2版(12.2)开始,您可以使用在安装期间创建的响应文件来完成安装后配置。

使用参数-executeConfigTools 安装来配置配置助手。您可以使用位于$ORACLE_HOME/install/response/product_timestamp.rsp的响应文件来获取运行配置工具所需的密码。 在运行-executeConfigTools命令之前,必须更新响应文件中的密码。

Oracle强烈建议您使用密码响应文件来维护安全性:

响应文件的权限应设置为600。
响应文件的所有者应该是安装所有者用户,并将该组设置为中央inventory(oraInventory)组。
示例B-1 Oracle Grid Infrastructure的响应文件密码(grid用户)

grid.install.crs.config.ipmi.bmcPassword=password
grid.install.asm.SYSASMPassword=password
grid.install.asm.monitorPassword=password
grid.install.config.emAdminPassword=password
如果您没有BMC卡,或者您不想启用IPMI,请将ipmi.bmcPassword输入字段留空。

如果您不想启用Oracle Enterprise Manager进行管理,请将emAdminPassword密码字段留空。

示例B-2独立服务器(oracle用户)的 Oracle Grid Infrastructure的响应文件密码

oracle.install.asm.SYSASMPassword=password
oracle.install.asm.monitorPassword=password
oracle.install.config.emAdminPassword=password
如果您不想启用Oracle Enterprise Manager进行管理,请将emAdminPassword密码字段留空。

示例B-3 Oracle数据库的响应文件密码(oracle用户)

此示例说明了指定用于数据库配置助手的密码。

oracle.install.db.config.starterdb.password.SYS=password
oracle.install.db.config.starterdb.password.SYSTEM=password
oracle.install.db.config.starterdb.password.DBSNMP=password
oracle.install.db.config.starterdb.password.PDBADMIN=password
oracle.install.db.config.starterdb.emAdminPassword=password
oracle.install.db.config.asm.ASMSNMPPassword=password
您还可以指定oracle.install.db.config.starterdb.password.ALL=密码 以对所有数据库用户使用相同的密码。

DBCA需要SYS,SYSTEM和DBSNMP密码才能使用。您必须指定以下密码,具体取决于您的系统配置:

如果数据库使用Oracle自动存储管理(Oracle ASM)进行存储,则必须为ASMSNMPPassword指定密码。如果您未使用Oracle ASM,请将此密码变量的值保留为空。
如果创建有一个或多个可插拔数据库(PDB)的多租户容器数据库(CDB),则必须为PDBADMIN变量指定密码。如果您未使用Oracle ASM,请将此密码变量的值保留为空。
使用响应文件运行安装后配置
编辑响应文件并为配置设定所需的密码。安装期间创建的响应文件位于$ORACLE_HOME/install/response/product_timestamp.rsp。例如:
对于Oracle数据库(oracle用户)

oracle.install.asm.SYSASMPassword=password
oracle.install.config.emAdminPassword=password
对于Oracle Grid Infrastructure(grid用户)

grid.install.asm.SYSASMPassword=password
grid.install.config.emAdminPassword=password
切换目录到包含安装软件的Oracle Home。例如:
对于Oracle Grid Infrastructure:

cd Grid_home
Grid_home路径/u01/app/oracle/product/19.0.0/grid

对于Oracle数据库:

cd $ORACLE_HOME
使用以下语法运行配置脚本:
对于Oracle Grid Infrastructure:

$ ./gridSetup.sh -executeConfigTools -responseFile Grid_home/install/response/product_timestamp.rsp
对于Oracle数据库:

$ ./runInstaller -executeConfigTools -responseFile $ORACLE_HOME/install/response/product_timestamp.rsp
对于Oracle数据库,您还可以运行:

$ ./runInstaller -executeConfigTools -responseFile $ORACLE_HOME/inventory/response/db_install.rsp
安装后配置工具以图形界面运行,显示配置进度。指定 [-silent]在静默模式下运行安装后配置的选项。

例如,对于Oracle Grid Infrastructure:

$ ./gridSetup.sh -executeConfigTools -responseFile /u01/app/oracle/product/19.0.0/grid/response/grid_2016-01-09_01-03-36PM.rsp [-silent]
对于Oracle数据库:

$ ./runInstaller -executeConfigTools -responseFile /u01/app/oracle/product/19.0.0/dbhome_1/inventory/response/db_2016-01-09_01-03-36PM.rsp [-silent]

使用ConfigToolAllCommands脚本进行安装后配置
从Oracle Database 12c第2版(12.2)开始,configToolAllCommands不推荐使用,并且可能在将来的发行版中不支持该脚本。


C最佳灵活架构
Oracle Optimal Flexible Architecture(OFA)规则是一组配置指南,旨在确保组织良好的Oracle安装,从而简化管理,支持和维护。

关于最佳灵活体系结构标准
关于多个Oracle Homes支持
关于Oracle Inventory目录和安装
Oracle Base Directory命名约定
Oracle Home Directory命名约定
默认情况下,Oracle Universal Installer使用这些Oracle Optimal Flexible Architecture约定来配置Oracle主目录。
最佳灵活体系结构文件路径示例
表C-2最佳灵活体系结构分层文件路径示例

目录 描述
/
根目录

/u01/
用户数据挂载点1

/u01/app/
应用软件子目录

/u01/app/oraInventory
中央目录,用于维护服务器上的Oracle安装信息。设定OINSTALL组有写权限。所有Oracle软件安装用户必须将OINSTALL作为主组,并能够写入该组。

/u01/app/oracle/
用户Oracle的Oracle Base目录。服务器上可以安装许多Oracle数据库,以及许多Oracle数据库软件安装所有者。

Oracle软件主目录应位于Oracle软件安装所有者的Oracle Base目录中,除非该Oracle软件是为群集部署的Oracle Grid Infrastructure。

/u01/app/grid
用户grid的Oracle Base目录。用于群集安装的Oracle Grid Infrastructure的Oracle Home(Grid home)位于Grid用户之外。

服务器上只能有一个Grid Home,并且只有一个Grid软件安装所有者。GridHome包含日志文件和其他管理文件。

/u01/app/oracle/admin/
数据库管理文件子目录

/u01/app/oracle/admin/TAR
支持日志文件子目录

/u01/app/oracle/admin/db_sales/
名为“sales”的数据库的Admin子树

/u01/app/oracle/admin/db_dwh/
名为“dwh”的数据库的管理子目录

/u01/app/oracle/fast_recovery_area/
恢复文件子目录

/u01/app/oracle/fast_recovery_area/db_sales
名为“sales”的数据库的恢复文件

/u01/app/oracle/fast_recovery_area/db_dwh
名为“dwh”的数据库的恢复文件

/u02/app/oracle/oradata
/u03/app/oracle/oradata
/u04/app/oracle/oradata
Oracle数据文件目录

/u01/app/oracle/product/
除Oracle Grid Infrastructure之外的Oracle软件产品的通用目录

/u01/app/oracle/product/19.0.0/dbhome_1
Oracle数据库1的Oracle Home目录,由oracle帐户拥有

/u01/app/oracle/product/19.0.0/dbhome_2
Oracle数据库2的Oracle Home目录,由oracle帐户拥有

/u01/app/oracle2/product/19.0.0/dbhome_2
Oracle数据库2的Oracle Home目录,由oracle2帐户拥有

/u01/app/oracle/product/19.0.0/grid
适用于独立服务器的Oracle Grid Infrastructure的Oracle Home目录,由Oracle database和Oracle Grid Infrastructure的安装所有者oracle账户拥有。

/u01/app/19.0.0/grid
用于集群的Oracle Grid Infrastructure的Oracle Home(Grid home),在安装之前由grid用户拥有,在安装后由root拥有。
/u01/app/oracle/product/19.0.0/client_1
Oracle数据库客户端1的Oracle主目录,由Oracle数据库安装所有者帐户 oracle拥有

D 配置只读Oracle Homes
了解只读Oracle Home
了解只读
启用只读
将演示目录复制到Oracle Base Home
确定Oracle Home是否为只读
只读Oracle home中的文件路径和目录更改
关于只读Oracle Home
从Oracle Database 18c开始,您可以配置Oracle Home为只读模式。

在只读Oracle home模式下,所有配置数据和日志文件都位于只读Oracle home外。此功能允许您将只读Oracle home当作镜像可以分布到多个服务器

除了传统的ORACLE_BASE和ORACLE_HOME目录之外,以下目录包含以前在ORACLE_HOME中的文件:

ORACLE_BASE_HOME
ORACLE_BASE_CONFIG
只读Oracle Home的优点

不停机打补丁和更新数据库
简化打修补和批量部署,因为只需更新一个镜像即可将补丁分发到许多服务器。
通过实施安装和配置分离来简化配置。
安装和配置分离,简化配置
此特性不会影响数据库监控,诊断和性能调优。
关于 Oracle Base Homes
无论是只读Oracle Home 还是读写Oralce Home,用户文件,实例文件,日志文件都在ORACLE_BASE_HOME下.
在读写Oracle Home环境,ORACLE_BASE_HOME 路径和ORACLE_HOME 相同,在只读Oracle Home 模式下,ORACLE_BASE_HOME 位于ORACLE_BASE/homes/HOME_NAME.
其中HOME_NAME 是ORACLE_HOME 的内部名
例如network/{admin,trace,log }目录位于ORACLE_BASE_HOME ,读写环境下就在ORACLE_HOME下,只读环境下位于ORACLE_BASE/homes/HOME_NAME。
获取ORACLE_BASE_HOME 路径
$ setenv ORACLE_HOME /u01/app/oracle/product/19.0.0/dbhome_1
$ cd $ORACLE_HOME/bin
$ ./orabasehome
/u01/app/oracle/homes/OraDB19Home1
OraDB19Home1 就是HOME_NAME
关于 Oracle Base Config
ORACLE_BASE_CONFIG 读写环境下路径和ORACLE_HOME相同,在只读环境下与ORACLE_BASE路径相同
ORACLE_BASE_CONFIG/dbs 包含了ORACLE_HOME的配置文件,里面的每个文件都包含ORACLE_SID,所以这个目录是可以多个ORACLE_SID 共享的
获取ORACLE_BASE_CONFIG 路径
$ setenv ORACLE_HOME /u01/app/oracle/product/19.0.0/dbhome_1
$ cd $ORACLE_HOME/bin
$ ./orabaseconfig
/u01/app/oracle
关于 orabasetab
orabasetab 基于ORACLE_HOME 定义ORACLE_BASE,ORACLE_BASE_HOME和ORACLE_BASE_CONFIG
orabasetab 位于ORACLE_HOME/install/orabasetab,可用来确定ORACLE_HOME是只读还是读写,还用来定义ORACLE_BASE 和ORACLE_HOME
该文件最后一行由四部分组成,通过冒号分隔如:
$ cat /u01/app/oracle/product/19.0.0/dbhome_1/install/orabasetab
/u01/app/oracle/product/19.0.0/dbhome_1:/u01/app/oracle:OraDB19Home1:Y:
第一个字段匹配当前的$ ORACLE_HOME。
第二个字段定义当前ORACLE_HOME的ORACLE_BASE。
第三个字段定义了HOME_NAME,用于在只读ORACLE_HOME中构造ORACLE_BASE_HOME路径。
第四个字段在读/写ORACLE_HOME显示N和只读ORACLE_HOME中显示Y
在只读ORACLE_HOME中,ORACLE_BASE_HOME路径为ORACLE_BASE/homes/HOME_NAME,ORACLE_BASE_CONFIG与ORACLE_BASE相同。
在读/写ORACLE_HOME中,ORACLE_HOME,ORACLE_BASE_HOME和ORACLE_BASE_CONFIG都是相同的。
启用只读Oracle Home

  1. 执行仅限软件的Oracle安装
    $ mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
    $ chown oracle:oinstall /u01/app/oracle/product/19.0.0/dbhome_1
    $ cd /u01/app/oracle/product/19.0.0/dbhome_1
    $ unzip -q /tmp/db_home.zip
    然后执行runInstall ,选择仅安装软件,可根据需要有选择无图形界面

2.执行roohctl脚本
$ cd /u01/app/oracle/product/19.0.0/dbhome_1/bin
$ ./roohctl -enable
Rac环境以上脚本在每个节点都要执行,或通过参数–nodelist执行
$ ./roohctl –enable –nodelist comma_separated_list_of_nodes
3. DBCA 创建数据库
$ ./dbca
可选择有无图形界面安装

Copy demo目录到Oracle Base Home

在只读Oralce Home 模式下,你必须Copy demo目录从ORACLE_HOME 到ORACLE_BASE_HOME。
Oracle数据库包含各种demo目录,其中包含各种示例和产品演示,您可以使用它们来了解Oracle数据库的产品,选项和功能。这些目录通常用不到,只有在演示的时候才会用

默认情况下,许多演示目录不可用。您必须安装Oracle数据库示例才能查看和使用示例和产品演示。

将相应demo目录复制到ORACLE_BASE_HOME中的相应位置。现在,您可以使用该demo目录的副本。

您必须将以下demo目录从ORACLE_HOME 复制到ORACLE_BASE_HOME:

jdbc/demo
odbc/demo
ord/http/demo
precomp/demo
rdbms/demo
sqlj/demo
sqlplus/demo
xdk/demo
您还必须odbc/demo,precomp/demo,rdbms/demo,xdk/demo 目录创建符号链接。请参阅本主题中的“创建符号链接”部分。

Copy demo 目录

$ ls -l -d $(orabasehome)/rdbms/demo
$ mkdir -p $(orabasehome)/rdbms
$ cp -r $ORACLE_HOME/rdbms/demo $(orabasehome)/rdbms/demo
同样,将之前列出的所有demo目录从ORACLE_HOME 复制到ORACLE_BASE_HOME。

创建符号链接
您必须为odbc/demo, precomp/demo, rdbms/demo, xdk/demo创建符号链接
将原始的ORACLE_HOME下的demo 目录替换为指向copy 目录的软连接
$ ls -l -d $ORACLE_HOME/rdbms/demo
$ ls -l -d $ORACLE_HOME/odbc/demo
$ ls -l -d $ORACLE_HOME/precomp/demo
$ ls -l -d $ORACLE_HOME/xdk/include

$ mv $ORACLE_HOME/rdbms/demo $ORACLE_HOME/rdbms/demo.installed
$ mv $ORACLE_HOME/odbc/demo $ORACLE_HOME/odbc/demo.installed
$ mv $ORACLE_HOME/precomp/demo $ORACLE_HOME/precomp/demo.installed

$ ln -s $(orabasehome)/rdbms/demo $ORACLE_HOME/rdbms/demo
$ ln -s $(orabasehome)/odbc/demo $ORACLE_HOME/odbc/demo
$ ln -s $(orabasehome)/precomp/demo $ORACLE_HOME/precomp/demo
$ ln -s $ORACLE_HOME/xdk/include $(orabasehome)/xdk/include

注意:在只读Oracle Home 模式下 plsql/demo/ncmmpdemo.sql不可用。
复制init.ora文件
cp $ORACLE_HOME/init.ora $(orabasehome)/init.ora
确定Oracle Home是否只读
$ export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
$ cd $ORACLE_HOME/bin
$ ./orabasehome
/u01/app/oracle/homes/OraDB19Home1
如果orabasehome命令输出与$ORACLE_HOME相同,那么OracleHome处于读/写模式。如果显示路径为ORACLE_BASE/homes/HOME_NAME,则OracleHome处于只读模式。
只读Oracle Home 下的文件路径和目录变化
表D-1读/写和只读Oracle主文件路径示例

目录 读/写Oracle Home File Path 只读Oracle主文件路径
ORACLE_HOME

/u01/app/oracle/product/19.0.0/dbhome_1 /u01/app/oracle/product/19.0.0/dbhome_1
ORACLE_BASE

/u01/app/oracle/ /u01/app/oracle/
ORACLE_BASE_HOME

/u01/app/oracle/product/19.0.0/dbhome_1 /u01/app/oracle/homes/OraDB19Home1
ORACLE_BASE_CONFIG

/u01/app/oracle/product/19.0.0/dbhome_1
/u01/app/oracle/

network

/u01/app/oracle/product/19.0.0/dbhome_1/network

/u01/app/oracle/homes/OraDB19Home1/network

dbs
/u01/app/oracle/product/19.0.0/dbhome_1/dbs

/u01/app/oracle/dbs

E管理Oracle数据库端口号
查看默认端口号。如果需要,请在安装后使用这些步骤更改分配的端口。(略)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle19c是公司级别的数据中心解决方案,能够为企业提供可靠、稳定和安全的数据管理能力。它不仅可以高效地管理数据,还能够提供数据分析和报告功能。下面是Oracle19c安装教程,分为以下几步: 1. 下载Oracle19c软件包并解压缩 在Oracle官网下载Oracle19c软件包,解压缩到指定的目录。 2. 修改系统参数和安装Oracle需要的依赖软件 在安装Oracle之前,需要修改系统参数,例如设置内核参数,添加用户组等等。此外,还需要安装其他需要的依赖软件。 3. 安装Oracle19c 运行Oracle19c安装脚本。选择“安装选项”,如“典型安装”或“自定义安装”等。在安装过程中,需要填写一些必要的信息,例如安装目录、数据库名称、密码等等。 4. 配置Oracle19c 完成安装后,需要配置Oracle19c。在Oracle19c安装目录中,打开“dbca”命令,配置数据库的基本信息。在此过程中,你可以设置实例名称、监听器端口、网络配置等等。 5. 启动和测试Oracle19c 最后,启动Oracle19c数据库,并测试是否能够正常执行常见的操作,例如连接、查询、创建表等等。 总之,以上是Oracle19c安装教程,需要用户按照步骤来完成安装安装Oracle19c并不繁琐,虽然有些细节需要注意,但通过以上步骤,我们可以极快地成功搭建Oracle19c数据库,并能够高效地使用它来管理和处理公司的大量数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值