Oracle11gR2 for Linux安装--数据库补丁安装

下载补丁及opatch工具

-1)下载补丁及补丁opatch工具(需要官方购买或者公司购买)
p6880880_112000 Linux-86-64p24006111_112040_Linux-x86-64这两个用于测试的补丁
–2)上传补丁相关文件到服务器解压
2.1一定要上传到oracle用户,就是 su - oracle下cd /backup/目录下
在这里插入图片描述
用mv ➕tab键 给这个文件另起个名字。
然后进行解压
在这里插入图片描述
在这里插入图片描述
2.2 把数据库停了
另开一个命令终端(把监听lsnrctl stop、数据库等相关的业务停掉)
在这里插入图片描述
2.3 )停止所有的数据库服务、业务系统
把emctl停掉,是一个基于 web 的工具,用于管理和监控 Oracle 数据库。它提供了一个直观的用户界面。
在这里插入图片描述
2.4 把数据库停掉

[oracle@itpuxhsdb52:/home/oracle]$ sqlplus  / as sysdba   
SQL> shutdown immediate;     #正常停止数据库
SQL> exit
[oracle@itpuxhsdb52:/home/oracle]$ ps  -ef|grep  ora_ (查看是否有Oracle的进程在运行)

停止完数据,把oracle备份一下,要cd到backup tar zcvf oracle.tar /oracle
2.5 生产环境有已数据的,备份数据库的安装代码,一定要RMAN物理备份数据库。
2.6 安装opatch工具并打补丁
第一步 替换掉旧的opatch工具
在这里插入图片描述
先查一下opatch的版本是11.2.0.3.4,但是根据补丁的11.2.0.4.160719
在这里插入图片描述
在这里插入图片描述
这条命令将目录(或文件)名从 “Opatch” 更改为 “Opatch_old”。这样,原先名为 “Opatch” 的目录(或文件)会被重命名为 “Opatch_old”。相当于备份 如果出现问题把这个在改回来就可以了
接下来把上传服务器的p6880880_112000 Linux-86-64里面的Opatch替换到这里来
在这里插入图片描述
在命令中,cp -r /backup/psu/Opatch . 的意思是将 /backup/psu/Opatch 目录(或文件)复制到当前目录(.)下。这个命令会将 Opatch 目录从备份目录复制到当前工作目录中。
mv Opatch Opatch_,old #将目录 Opatch 重命名为 Opatch_old

[oracle@itpuxhsd52:/oracle/app/oracle/product/11.2.0/db_1]$cd OPatch     #进到opatch里面
Coracle@itpuxhsdb52:/oracle/app/oracle/product/11.2.0/db_1/0Patch]$./opatch version
opatch version: 11.2.0.4.16
#版本已经从11.2.0.3.4改为11.2.0.4.16
[oracle@itpuxhsdb52:/oracle/app/oracle/product/11.2.0/db_1/0Patch]$ vi~/.bash_ bash_history .bash_logout .bash_profile
Toracle@itpuxhsdb52:/oracle/ app/oracle/product/11.2.0/db_1/0Patch] $ vi ~/.bash profile
将这$ORACLE_BASE/product/11.2.0/db_1/bin:/oracle/app/oracle/product/11.2.0, b_1/0Patch:放到path环境变量里面

在这里插入图片描述
放到path环境变量里面的好处就是 :

  1. 更快速地访问它们,而无需每次都输入完整的路径。
  2. 避免重复性工作: 如果您在不同的目录中有许多可执行文件,将这些目录添加到 $PATH 可以避免您不断地切换目录以运行这些文件。
  3. 简化脚本: 如果编写了一些脚本,这些脚本中依赖于这些可执行文件,那么将这些目录添加到 $PATH 可以简化脚本,使其更易于维护。
  4. 提高工作效率: 通过将经常使用的目录添加到$PATH,可以更快速地访问这些文件,从而提高了工作效率。 现在开始打补丁:

打补丁教程

输入 opatch prereq CheckConflictAgainstOHWithDetail -ph ./ 是用于在 Oracle 数据库中预检查补丁冲突的命令。
再输入 opatch apply 就能完成打补丁。检查一下 opatch - help(没记住命令的情况下) 输入 opatch lsinventory进行检查就可以看到相关的补丁号接下来进去数据库 sqlplus / as sysdb启动数据库

SQL> startup SQL> @catbundle.sql psu apply SQL> QUIT

•	catbundle.sql 是一个脚本文件的名称,它会在当前会话中执行。
•	psu 是第一个参数,可能是指要应用的 PSU(Patch Set Update)的类型或标识。
•	apply 是第二个参数,可能是指要对这个 PSU 进行的操作,可能是“应用”。该命令的具体作用和影响取决于 catbundle.sql 脚本的内容和所使用的参数

2.2 然后输入 select action,comments from registry$history;
在这里插入图片描述
这条 SQL 查询语句将从数据库的 registry$history 表中检索 action 和 comments 列的数据。
action 列可能包含了对数据库执行的操作,比如安装、升级、打补丁等。
comments 列可能包含了与相应操作相关的额外说明或注释。
然后再次输入 SQL> @utlrp.sql
utlrp.sql 是 Oracle 数据库中一个用于重新编译无效对象的脚本。
当数据库中的对象由于某些原因变得无效时(比如说修改了相关的对象,或者升级了数据库),可以运行 utlrp.sql 来重新编译这些对象,使其变为有效状态。

启动数据库服务

打完补丁以后先正常停掉数据库
SQL> shutdown immediate; #关闭
SQL> exit
SQL> sqlplus / as sysdba
SQL> startup
SQL> exit

重启监听 lsnrctl start

(生产环境中如果要用到就开,没用的时候关闭,否则占用资源)打开控制器 [oracle@itpuxhsdb52:/oracle/app/oracle/product/11.2.0/db_1/rdbms/admin] $emctl start dbconsole

测试及应用场景

密码180天过期问题
关闭审计em监控与管理警告与日志
关闭所有数据库服务,备份一次安装代码
在root下,进入oracle后cd 到backup目录下cd /backuptar zcvf oracle.tar /oracle
备份完成以后重启数据库,需要手工操作。
在这里插入图片描述

配置客户端

上面的是服务器和补丁都打完了,接下来就是安装
在Windows平台Oracle客户端安装与配置

猜你喜欢

转载自blog.csdn.net/weixin_43798406/article/details/133969224