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
相关推荐
noravinsc3 分钟前
django filter 筛选 取出全部用户id
数据库·mysql
不恋水的雨25 分钟前
解决sql查询中in查询项过多时很慢的问题
数据库·sql·mysql
betazhou25 分钟前
Oracle goldengate参数:TRANLOGOPTIONS DBLOGREADER
数据库·oracle·dblogreader
云心雨禅1 小时前
Spring Boot热更新技巧:节省90%重启时间
java·数据库·spring boot
码上库利南1 小时前
详细讲解Redis为什么被设计成单线程
数据库·redis·缓存
.似水1 小时前
MySQL 索引和select优化
数据库·mysql
bbsh20992 小时前
WebFuture:ASP.NET启动失败报500.30错误
数据库·webfuture
胆大的2 小时前
SQL 盲注(Blind SQL Injection)
数据库·sql·安全性测试
数据库幼崽3 小时前
MySQL 排查全局锁
数据库·mysql
啃火龙果的兔子4 小时前
华为云二级、多级域名配置
数据库·华为云