ORACLE 10升级到10.2.0.5 Patch Set遇到的内核参数检测失败问题

简介:

在测试ORACLE 10.2.0.4升级到10.2.0.5 Patch Set的过程中,遇到一个内核参数检查失败的问题,具体错误信息如下所示

 

实验环境:

     操作系统:Oracle Linux Server release 5.7

         内存:4G

   数据库版本:10.2.0.4.0

clip_image001

Checking operating system requirements ...
Expected result: One of redhat-6,redhat-5,redhat-4,redhat-3,SuSE-11,SuSE-10,SuSE-9,asianux-3,asianux-2,asianux-1
Actual Result: redhat-5
Check complete. The overall result of this check is: Passed
=======================================================================
 
Checking operating system package requirements ...
Checking for make-3.81; found make-1:3.81-3.el5.    Passed
Checking for binutils-2.17.50.0.6; found binutils-2.17.50.0.6-14.el5.    Passed
Checking for gcc-4.1.1; found gcc-4.1.2-51.el5.    Passed
Checking for libaio-0.3.106; found libaio-0.3.106-5.    Passed
Checking for libstdc++-4.1.1; found libstdc++-4.1.2-51.el5.    Passed
Check complete. The overall result of this check is: Passed
=======================================================================
 
Checking kernel parameters
Checking for semmsl=250; found semmsl=250.    Passed
Checking for semmns=32000; found semmns=32000.    Passed
Checking for semopm=100; found semopm=100.    Passed
Checking for semmni=128; found semmni=128.    Passed
Checking for shmmax=1073741824; found shmmax=68719476736.    Passed
Checking for shmmni=4096; found shmmni=4096.    Passed
Checking for shmall=2097152; found shmall=4294967296.    Passed
Checking for file-max=101365; found file-max=65536.    Failed <<<<
Checking for VERSION=2.6.18; found VERSION=2.6.32-200.13.1.el5uek.    Passed
Checking for ip_local_port_range=9000 - 65500; found ip_local_port_range=1024 - 65000.    Failed <<<<
Checking for rmem_default=1048576; found rmem_default=262144.    Failed <<<<
Checking for rmem_max=1048576; found rmem_max=262144.    Failed <<<<
Checking for wmem_default=262144; found wmem_default=262144.    Passed
Checking for wmem_max=262144; found wmem_max=1048576.    Passed
Check complete. The overall result of this check is: Failed <<<<
Problem: The kernel parameters do not meet the minimum requirements (see above).
Recommendation: Perform operating system specific instructions to update the kernel parameters.
=======================================================================
 
Checking Recommended glibc version
Expected result: ATLEAST=2.5-12 NOT_EQUALS=2.5-18 
Actual Result: 2.5-65
Check complete. The overall result of this check is: Passed
=======================================================================
 
Checking physical memory requirements ...
Expected result: 922MB
Actual Result: 3956MB
Check complete. The overall result of this check is: Passed
=======================================================================
 
Checking available swap space requirements ...
Expected result: 3956MB
Actual Result: 13987MB
Check complete. The overall result of this check is: Passed

有点纳闷,为什么这些参数在10.2.0.1安装和升级到10.2.0.4的时候都通过检测,但是在应用补丁10.2.0.5时反而不能通过了呢?我们先看看原先的值

clip_image002

 

1:Checking for file-max=101365; found file-max=65536. Failed <<<<

这个失败,很好理解,因为processes为 150,而参数65536 = 512*128 , 我们的进程数为150,大于128(fs.file-max = 512 x processes (for example 65536 for 128 processes) ,所以系统给了一个推荐值(具体怎么计算,还没弄清楚)

SQL> show parameter processes;
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes                      integer     0
db_writer_processes                  integer     1
gcs_server_processes                 integer     0
job_queue_processes                  integer     0
log_archive_max_processes            integer     2
processes                            integer     150

 

2:Checking for ip_local_port_range=9000 - 65500; found ip_local_port_range=1024 - 65000. Failed <<<<

这个参数,官方文档推荐就是 net.ipv4.ip_local_port_range = 9000 65500 ,也没啥好说的。 The runInstaller (OUI) checks may expect this to be the old guidance of "1024 65000". The new guidance from Oracle development is "9000 65500". Please allow the runInstaller (OUI) to proceed with the new guidance from Oracle development.

 

3:关键是下面这几个参数为啥会失败,有点纳闷?

Checking for rmem_default=1048576; found rmem_default=262144. Failed <<<<

Checking for rmem_max=1048576; found rmem_max=262144. Failed <<<<

Check complete. The overall result of this check is: Failed <<<<

 

在官方文档Requirements For Installing Oracle10gR2 On RHEL 5/OEL 5 (x86_64) (文档 ID 421308.1)里面有下面介绍,也是上面的配置值

4. Set the kernel parameters 

Add the following the lines in the file /etc/sysctl.conf

kernel.shmall = physical RAM size / pagesize For most systems, this will be the value 2097152. See Note 301830.1 for more information.

kernel.shmmax = 1/2 of physical RAM. This would be the value 2147483648 for a system with 4Gb of physical RAM. See Note 567506.1 for more information.

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 512 x processes (for example 65536 for 128 processes)

Development recommends a minimum of 327679 for active systems.

net.ipv4.ip_local_port_range = 9000 65500

(The runInstaller (OUI) checks may expect this to be the old guidance of 1024 65000.

The new guidance from Oracle development is 9000 65500.

Please allow the runInstaller (OUI) to proceed with the new guidance from Oracle development.)

net.core.rmem_default = 262144

net.core.rmem_max = 2097152

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

clip_image003

后面在官方文档 Requirements For Installing Oracle10gR2 On RHEL 5/OEL 5 (x86_64) (文档 ID 421308.1) 里面看到,这个是ORACLE的一个bug来的,可以忽略这个错误,具体见截图

clip_image004

  

相关文章
|
存储 Oracle 关系型数据库
Oracle中“ORA-00060: 等待资源时检测到死锁” 或存储过程编译卡死的一种解决方法
Oracle中“ORA-00060: 等待资源时检测到死锁” 或存储过程编译卡死的一种解决方法
775 0
|
4月前
|
SQL 分布式计算 前端开发
MaxCompute操作报错合集之SQL脚本设置参数set odps.mapred.reduce.tasks=18;没有生效,是为什么
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
137 5
|
5月前
|
SQL Oracle 关系型数据库
Oracle SQL*Plus的SET命令:你的数据库会话“调色板”
【4月更文挑战第19天】Oracle SQL*Plus的SET命令是数据库会话的“调色板”,用于设置输出格式、反馈信息和各种偏好。它能调整PAGESIZE和LINESIZE以优化显示,控制ECHO和FEEDBACK开关以定制反馈,以及统计命令执行时间(TIMING)和调试SQL(VERIFY)。更高级的选项如HEADING和COLSEP可改善输出的可读性。通过灵活运用SET命令,能提升工作效率和体验,是数据库管理员和开发者的必备工具。
|
前端开发 JavaScript API
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(五)
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(五)
|
5月前
|
关系型数据库 PostgreSQL
PostgreSQL 的哪些参数不能通过ALTER SYSTEM SET 修改
在 PostgreSQL 中,有一些参数是不能通过 `ALTER SYSTEM SET` 语句进行动态修改的,这些参数通常需要在 PostgreSQL 的配置文件中进行手动修改。以下是一些不能通过 `ALTER SYSTEM SET` 修改的常见参数: 1. **track_activities** 2. **track_counts** 3. **track_io_timing** 4. **track_functions** 5. **track_activity_query_size** 6. **track_commit_timestamp** 7. **shared_preload
111 0
|
11月前
pd.set_option()参数详解
pd.set_option()参数详解
154 0
|
SQL Oracle 关系型数据库
Oracle中,UPDATE SET子句
Oracle中,UPDATE SET子句
496 1
|
前端开发 API 网络架构
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(六)
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(六)
|
前端开发 网络架构
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(四)
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(四)
|
前端开发 JavaScript 网络架构
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(三)
ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map(三)

推荐镜像

更多