Oracle client 静默安装

目录

1、准备阶段

1.1、部署需求

1.2、硬件准备

1.3、软件准备

2、实施阶段

2.1、操作系统相关实施

2.1.1、关闭防火墙、SELINUX

2.1.2、安装依赖包

[2.1.3、创建oracle client相关用户、组](#2.1.3、创建oracle client相关用户、组)

[2.1.4、创建Oracle client相关目录](#2.1.4、创建Oracle client相关目录)

[2.1.5、设置Oracle client环境变量](#2.1.5、设置Oracle client环境变量)

2.1.6、绕过操作系统兼容性检查

[2.2、Oracle client相关实施](#2.2、Oracle client相关实施)

[2.2.1、上传并解压Oracle client软件压缩包](#2.2.1、上传并解压Oracle client软件压缩包)

2.2.2、配置响应文件

2.2.3、执行安装程序

[2.2.5、sqlplus 连接测试](#2.2.5、sqlplus 连接测试)


1、 准备阶段

1.1、部署需求

本次部署Oracle 客户端,客户端版本是LINUX.X64_193000_client.zip;可供选择的操作系统只有麒麟(Kylin V10),不可以调用图形界面,所以只能选择静默安装。

1.2、硬件准备

|--------|------------|------------------|
| /tmp | >415M | 先决条件检查,会用于存放安装日志 |
| swap内存 | >150M | 先决条件检查 |
| 磁盘 | 安装目录>100G | |

1.3、软件准备

从官方网站下载对应的Oracle client,需要有Oracle官网账号。如果不方便下载,可评论留言获取。

Oracle Database 19c Download for Linux x86-64 | Oracle 中国https://www.oracle.com/cn/database/technologies/oracle19c-linux-downloads.html

2、 实施阶段

2.1、操作系统相关实施

2.1.1、关闭防火墙、SELINUX

bash 复制代码
#禁用防火墙
systemctl stop firewalld
systemctl disable firewalld
#禁用SELINUX
setenforce 0
sed -i 's/^SELINUX=.*$/SELINUX=disabled/g' /etc/selinux/config

2.1.2、安装依赖包

bash 复制代码
# 基础依赖
yum install -y unzip 
yum install -y ksh 
yum install -y libaio 
yum install -y glibc-devel 
yum install -y binutils 
yum install -y elfutils-libelf 
yum install -y fontconfig-devel
yum install -y make
yum install -y libstdc++-devel 
bash 复制代码
rpm -ivh compat-libcap1-1.10-7.el7.x86_64.rpm 
rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm 

rpm -ivh libnsl-2.28-49.p02.ky10.x86_64.rpm
rpm -ivh libnsl2-1.3.0-1.ky10.x86_64.rpm
rpm -ivh libnsl2-devel-1.3.0-1.ky10.x86_64.rpm 

通过网盘分享的文件:kylinpkg

链接: https://pan.baidu.com/s/1jAoEUAh1BRtf44hsqpXSBg

提取码: abed

【上面5个rpm包的下载资源】

2.1.3、创建 oracle client相关 用户、组

bash 复制代码
groupadd oinstall
useradd -g oinstall -m oracle
echo "P@ssw0rd" | passwd --stdin oracle

2.1.4、创建Oracle client相关目录

bash 复制代码
#创建Oracle相关目录
mkdir -p /oracle/oraInventory
mkdir -p /oracle/app/oracle
mkdir -p /oracle/app/oracle/product/19/client
#目录权限调整
chown -R oracle:oinstall /oracle
chmod -R 775 /oracle

2.1.5、设置Oracle client环境变量

bash 复制代码
#切换到oracle用户
su - oracle

#vim编辑用户环境变量文件
vim ~/.bash_profile

#以下是编辑内容
export ORACLE_HOME=/oracle/app/oracle/product/19/client
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

#加载环境变量文件,使其生效
source ~/.bash_profile

2.1.6 、绕过操作系统兼容性检查

bash 复制代码
export CV_ASSUME_DISTID=RHEL7.6

2.2、Oracle client相关实施

2.2.1、上传并解压Oracle client软件压缩包

bash 复制代码
unzip LINUX.X64_193000_client.zip

2.2.2、配置响应文件

#响应文件位置按照如图去寻找。

#需要重点配置的响应文件如下

bash 复制代码
oracle.install.responseFileVersion=/oracle/install/rspfmt_clientinstall_response_schema_v19.0.0
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/oracle/oraInventory
ORACLE_HOME=/oracle/app/oracle/product/19/client
ORACLE_BASE=/oracle/app/oracle
oracle.install.client.installType=Administrator
oracle.install.client.customComponents="oracle.rdbms.util:19.0.0.0.0","oracle.sqlplus:19.0.0.0.0","oracle.network.client:19.0.0.0.0"

2.2.3、执行安装程序

bash 复制代码
cd /oracle/client/
./runInstaller -silent -ignorePrereq -responseFile /oracle/client/response/client_install.rsp

直接执行的话,会遇到如下错误

按照提示,去查看日志,会发现日志中有这么一串内容:"genclntsh: Failed to link libclntshcore.so.19.1"。这是因为系统缺少libpthread_nonshared.a文件,这和glibc版本有关系,在glibc2.28版本之后不再提供libpthread_nonshared.a文件,但oracle安装时缺依然需要它。

解决方法很简单,从其他环境拷贝一份libpthread_nonshared.a文件,粘贴至/usr/lib64目录下并赋权,然后重新执行安装程序,问题不会再出现。如果找不到此文件的,也可以评论留言找我获取。

bash 复制代码
cp libpthread_nonshared.a /usr/lib64/libpthread_nonshared.a
chmod 777 /usr/lib64/libpthread_nonshared.a


#安装程序执行完后,再以root用户执行提示出现的脚本

bash 复制代码
/oracle/oraInventory/orainstRoot.sh

2.2.5、sqlplus 连接测试

bash 复制代码
#查看sqlplus版本
sqlplus -V

#连接测试
sqlplus username/password@host:port/service_name
相关推荐
袋鼠云数栈1 小时前
实时湖仓如何真正做到“数据够新”?
大数据·数据库·人工智能·数据治理
ACP广源盛139246256731 小时前
M6/M5 Pro Mac mini 端侧 AI 落地@ACP#YLB3116 中端多盘存储扩展在 AI 服务中的机会与应用场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos
ACP广源盛139246256732 小时前
M6/M5 Pro Mac mini 端侧 AI 新形态@ACP#GSV5800 Serdes 长距离视频传输在 AI 服务中的机会与落地场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos·音视频
倔强的石头_4 小时前
事务边界与批量写入:避免长事务、锁等待和日志压力
数据库
努力努力再努力wz4 小时前
【Redis入门系列】从 KEYS 到 SCAN:渐进式遍历、Cursor 与位反转原理
数据库·redis·缓存
坐吃山猪4 小时前
【多线程】Lock与Condition
大数据·数据库
Lightpwd5 小时前
Spring Boot 多数据源落地:AbstractRoutingDataSource + 注解切面(附源码)
数据库·后端
LabVIEW开发5 小时前
LabVIEW 64位安装的位深陷阱:工具包、内存与工程兼容
数据库·labview·labview知识·labview功能·labview程序
寺中人5 小时前
MySQL 8.0 Windows 完整安装教程:环境配置、密码重置与常见报错排查
数据库·windows·mysql·环境搭建·mysql 安装
这个DBA有点耶5 小时前
同样48核配置TPS差1倍?高性价比数据库一体机的“软硬协同”才是分水岭
服务器·数据库·架构