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
相关推荐
马尔代夫哈哈哈3 小时前
Spring IoC&DI
数据库·sql
液态不合群5 小时前
[特殊字符] MySQL 覆盖索引详解
数据库·mysql
计算机毕设VX:Fegn08955 小时前
计算机毕业设计|基于springboot + vue蛋糕店管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
瀚高PG实验室5 小时前
PostgreSQL到HighgoDB数据迁移
数据库·postgresql·瀚高数据库
打码人的日常分享6 小时前
智能制造数字化工厂解决方案
数据库·安全·web安全·云计算·制造
三水不滴6 小时前
Redis 过期删除与内存淘汰机制
数据库·经验分享·redis·笔记·后端·缓存
-孤存-7 小时前
MyBatis数据库配置与SQL操作全解析
数据库·mybatis
2301_822366358 小时前
使用Scikit-learn构建你的第一个机器学习模型
jvm·数据库·python
万邦科技Lafite9 小时前
一键获取京东商品评论信息,item_reviewAPI接口指南
java·服务器·数据库·开放api·淘宝开放平台·京东开放平台
自可乐9 小时前
Milvus向量数据库/RAG基础设施学习教程
数据库·人工智能·python·milvus