Linux7 静默安装 Oracle 19c 客户端
Editor's Note
今天有同事让安装个 Oracle 客户端,说最好还是19c 的,那么这篇 Oracle19c 客户端安装就很及时,静默安装,也省去了图形化的麻烦,挺不错的,推荐给老铁们。
The following article is from 数据库江湖 Author DatabaseHobbyist
作者 | DatabaseHobbyist
来源 | 数据库江湖(ID: Database_Hobbyist)
Oracle 19c 客户端可以直接连接 11g 12c 19c 数据库,向后兼容,安装更简单,老铁们开干吧!
1.客户端下载
以下地址可下载 19c 客户端,我们选择 64 位的第一个或者第三个下载即可,这里我选择了第三个下载。软件如果没有下载权限的可私信我获取。
https://www.oracle.com/cn/database/technologies/oracle19c-linux-downloads.html
也可参考官方安装手册:https://docs.oracle.com/en/database/oracle/oracle-database/19/lacli/index.html
2.使用 root 创建用户和组
[root@t-tableau ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.6 (Maipo)
[root@t-tableau ~]# uname -a
Linux t-tableau-197 3.10.0-957.el7.x86_64 #1 SMP Thu Oct 4 20:48:51 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux[root@t-tableau ~]# id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(oper)
/usr/sbin/groupadd -g 54321 oinstall
/usr/sbin/groupadd -g 54322 dba
/usr/sbin/groupadd -g 54323 oper
/usr/sbin/useradd -u 54321 -g oinstall -G dba oracle
passwd oracle
# /usr/sbin/usermod -g oinstall -G dba,oper oracle --可修改组
# id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(oper)
3.创建文件夹并赋权限
mkdir -p /u01/app/oracle/product/19.0.0/client_1
mkdir -p /u01/soft #存放软件
chown -R oracle:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01
4.配置环境变量
-- Oracle用户vi .bash_profile增加以下配置
vi .bash_profile
umask 022
export PS1="`whoami`@`hostname`:"'[$PWD]$'
export HOST=`hostname | cut -f1 -d"."`
export PS1='${HOST}:$PWD(${ORACLE_SID})$ '
export LANG=en_US
# +---------------------------------------------+
# | SETUP ORACLE ENVIRONMENT |
# +---------------------------------------------+
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/client_1
export ORACLE_SID=test
export ORACLE_TERM=xterm;
export PATH=.:$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/bin
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
source ~/.bash_profile --使该文件有效
5.上传Oracle19c客户端软件并解压
从 Oracle Database 19c 开始,通过基于映像的安装简化了 Oracle Database Client 软件的安装和配置。
要安装 Oracle 数据库客户端,请创建新的 Oracle 主目录,将映像文件解压缩到新创建的 Oracle 主目录中,然后运行安装向导以注册 Oracle 数据库产品。必须将映像软件 ( client_home.zip) 解压缩到您希望 Oracle 数据库客户端主目录所在的目录中,然后运行安装向导以启动 Oracle 数据库客户端安装和配置。
在解压之前,需要验证文件完整性,防止因破损,修改,木马病毒等带来的严重问题,这里使用 sha256sum 来验证。
t-tableau-197:/u01/soft(test)$ sha256sum LINUX.X64_193000_client_home.zip
df3ef12bc19d03cb3331ccdf3490ec361b6ed5d243da32df583f02f0774e2315 LINUX.X64_193000_client_home.zip
--(987,216,967 bytes) (sha256sum - df3ef12bc19d03cb3331ccdf3490ec361b6ed5d243da32df583f02f0774e2315) --官网大小
t-tableau-197:/u01/soft(test)$
t-tableau-197:/u01/soft(test)$ cksum LINUX.X64_193000_client_home.zip
2828959120 987216967 LINUX.X64_193000_client_home.zip
t-tableau-197:/u01/soft(test)$ ll LINUX.X64_193000_client_home.zip
-rw-r--r-- 1 oracle oinstall 987216967 Aug 4 16:27 LINUX.X64_193000_client_home.zip
--解压到主目录 /u01/app/oracle/product/19.0.0/client_1
cd /u01/soft/
$ mkdir -p /u01/app/oracle/product/19.0.0/client_1
$ chgrp oinstall /u01/app/oracle/product/19.0.0/client_1
$ cd /u01/app/oracle/product/19.0.0/client_1
$ unzip -q /u01/soft/LINUX.X64_193000_client_home.zip
6.配置响应文件client_install.rsp
警告:
当您修改响应文件模板并保存文件以供使用时,响应文件可能包含纯文本密码。响应文件的所有权应仅授予 Oracle 软件安装所有者,响应文件的权限应更改为 600。Oracle 强烈建议数据库管理员或其他管理员在不使用响应文件时删除或保护响应文件。
响应文件在解压后的客户端软件里,路径如下
/u01/app/oracle/product/19.0.0/client_1/inventory/response
t-tableau-197:/u01/app/oracle/product/19.0.0/client_1(test)$ find ./ -name client_install.rsp
./inventory/response/client_install.rsp
t-tableau-197:/u01/app/oracle/product/19.0.0/client_1(test)$ cd ./inventory/response/
cd /u01/app/oracle/product/19.0.0/client_1/inventory/response
cp client_install.rsp /u01/soft/
cd /u01/soft/
cat client_install.rsp | grep -v ^# | grep -v ^$ > /u01/soft/new_client_install.rsp
vim /u01/soft/new_client_install.rsp
主要修改以下参数即可:
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME= /u01/app/oracle/product/19.0.0/client_1
ORACLE_BASE=/u01/app/oracle
oracle.install.client.installType=Administrator
chmod 600 /u01/soft/new_client_install.rsp
确保只有 Oracle 软件所有者用户才能查看或修改响应文件,或者在安装成功后考虑将其删除。
7.在解压的客户端路径下执行静默安装客户端软件
如果全路径当然在哪里都没有问题,以下是官方示例:
$ /directory_path/runInstaller [-silent] [-noconfig] \
-responseFile responsefilename
在这个例子中:
directory_path是您复制安装二进制文件的目录的路径。
-silent 以静默模式运行安装程序。
-noconfig 在安装过程中禁止运行配置助手,而是执行纯软件安装。
responsefilename 是您配置的安装响应文件的完整路径和文件名。
使用 Oracle 用户执行静默安装。
cd /u01/app/oracle/product/19.0.0/client_1
./runInstaller -silent -responseFile /u01/soft/new_client_install.rsp
$ /u01/app/oracle/product/19.0.0/client_1/runInstaller -silent -responseFile /u01/soft/new_client_install.rsp
Launching Oracle Database Client Setup Wizard...
[WARNING] [INS-13014] Target environment does not meet some optional requirements.
CAUSE: Some of the optional prerequisites are not met. See logs for details. installActions2021-08-04_06-16-00PM.log
ACTION: Identify the list of failed prerequisite checks from the log: installActions2021-08-04_06-16-00PM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually.
The response file for this session can be found at:
/u01/app/oracle/product/19.0.0/client_1/install/response/client_2021-08-04_06-16-00PM.rsp
You can find the log of this install session at:
/tmp/InstallActions2021-08-04_06-16-00PM/installActions2021-08-04_06-16-00PM.log
As a root user, execute the following script(s):
1. /u01/app/oraInventory/orainstRoot.sh
Execute /u01/app/oraInventory/orainstRoot.sh on the following nodes:
[t-tableau-197]
Successfully Setup Software with warning(s).
Moved the install session logs to:
/u01/app/oraInventory/logs/InstallActions2021-08-04_06-16-00PM
--根据提示执行 orainstRoot.sh 脚本
[root@t-tableau-197 ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
检查日志无任何错误!!!
8. 配置 tnsnames.ora文件
配置路径 $ORACLE_HOME/network/admin,在此路径下新建监听文件配置以下内容:
JIEKEXU =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.10)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = JiekeXu)
)
)
9. 连接测试
$ sqlplus /nolog
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Aug 4 18:34:12 2021
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
SQL>
--测试连接到远程19c数据库 scott 用户
$ sqlplus scott/scott@JIEKEXU
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Aug 4 18:38:42 2021
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Last Successful login time: Fri Jul 16 2021 10:38:58 +08:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> select table_name from tabs;
TABLE_NAME
--------------------------------------------------------------------------------
T
T_OGG_TEST
TEST
SALGRADE
BONUS
EMP
DEPT
7 rows selected.
SQL> show user;
USER is "SCOTT"
测试连接到11g 远程服务器
客户端安装完毕,一般都是其他用户需要连接,例如 weblogic、tableau 等其他用户连接,故将 Oracle 用户的环境变量 .bash_profile复制一份到其用户下 source 生效后即可连接使用。
10. Oracle 数据库客户端卸载示例
使用这些示例可以帮助您了解如何运行该deinstall命令。可以deinstall从$ORACLE_HOME/deinstall目录运行。卸载开始时不会提示您输入 Oracle 主路径。
$ ./deinstall
如果您有响应文件,则使用可选标志-paramfile提供响应文件的路径。
您可以通过运行deinstall带有-checkonly标志的命令来生成卸载响应文件。或者,您可以使用位于以下位置的响应文件模板$ORACLE_HOME/deinstall/response/deinstall.rsp.tmpl.
在以下示例中,deinstall 命令位于路径中 /u01/app/oracle/product/19.0.0/client_1/deinstall。它使用 my_db_paramfile.tmpl 在软件所有者位置调用的响应文件 /home/usr/oracle:
$ cd /u01/app/oracle/product/19.0.0/client_1/deinstall
$ ./deinstall -paramfile /home/usr/oracle/my_db_paramfile.tmpl
如果此文对您有帮助,欢迎点赞、在看与转发,写作不易,坚持写作更不易,您的点赞、转发,举手之劳,便是对作者最大的支持,也能让更多的人受益,感谢!
———————————————————————————
公众号:JiekeXu DBA之路
墨天轮:https://www.modb.pro/u/4347
CSDN :https://blog.csdn.net/JiekeXu
腾讯云:https://cloud.tencent.com/developer/user/5645107
———————————————————————————