- 1.首先需要确定Oracle数据库路径-查看数据库补丁情况
- 2.进入升级器安装目录
- 3.备份原有的升级器【后续会使用补丁包中的】
- 4.将上传的升级器copy到 /home/db/oracle/product/11.2.0目录下【确定自己上上传的目录】
- 5.修改上传的升级器权限
- 6.进入补丁文件夹-补丁版本31537677
- 7.检查补丁兼容性
- 8.关闭数据库
- 9.关闭监听器
- 10.补丁预演示
- 11.正式打补丁
- 12.启动监听器
- 13.访问数据库升级数据字典
- 14.查看补丁记录
- 15.查看已经修复漏洞
1.首先需要确定Oracle数据库路径-查看数据库补丁情况
针对检测机构发布的数据库漏洞修复报告书,对oracle数据库进行漏洞升级。
确定Oracle数据库安装路径,路径不同,操作步骤中的对应路径需要调整成自己的oracle数据库路径。例如如下路径:
/home/db/oracle/product/11.2.0/
使用opatch lsinventory
命令查看数据库相关漏洞修复情况
2.进入升级器安装目录
cd /home/db/oracle/product/11.2.0
3.备份原有的升级器【后续会使用补丁包中的】
mv OPatch OPatch.bak
4.将上传的升级器copy到 /home/db/oracle/product/11.2.0目录下【确定自己上上传的目录】
mv OPatch /home/db/oracle/product/11.2.0
5.修改上传的升级器权限
chmod -R 777 /home/db/oracle/product/11.2.0/OPatch
6.进入补丁文件夹-补丁版本31537677
解压补丁包
unzip 31537677.zip 解压工具包
unzip OPatch.zip 进入补丁包文件夹
cd /31537677
7.检查补丁兼容性
/home/db/oracle/product/11.2.0/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
8.关闭数据库
sqlplus / as sysdba
shutdown immediate;
exit;
9.关闭监听器
lsnrctl stop
10.补丁预演示
/home/db/oracle/product/11.2.0/OPatch/opatch apply -report
如果报错:Missing command :fuser
,执行如下命令
yum install -y psmisc
11.正式打补丁
/home/db/oracle/product/11.2.0/OPatch/opatch apply
如果报错:
Verifying environment and performing prerequisite checks...
Prerequisite check "CheckActiveFilesAndExecutables" failed.
The details are:
Following active executables are not used by opatch process :
/home/db/oracle/product/11.2.0/lib/libclntsh.so.11.1
Following active executables are used by opatch process :
执行如下命令查找相关进程:
fuser /home/db/oracle/product/11.2.0/lib/libclntsh.so.11.1
使用kill -9 xxx
命令结束掉进程,注意不要加m字符
12.启动监听器
lsnrctl start
13.访问数据库升级数据字典
进入如下目录
cd /home/db/oracle/product/11.2.0/rdbms/admin
依次执行如下命令
sqlplus / as sysdba
startup
@catbundle.sql psu apply
14.查看补丁记录
select * from dba_registry_history;
15.查看已经修复漏洞
opatch lsinventory