AIX下RAC巡检文档
2010年06月27日
现供职于计算机系统集成公司。 主要从事ORACLE数据库架构、迁移、备份、维护服务, UNIX平台小机、pcserver,存储的搭建、维护服务。 也负责提供BE、NBU、TSM等备份软件平台服务。
详细内容见我的资源(带图) 1> 查看操作系统(AIX 文件系统是否合理)
方式: " df -m ,查看所有的文件系统大小 是否>2G"
结果类似下面:
$df -m
Filesystem MB blocks Free %Used Iused %Iused Mounted on
/dev/hd4 2048.00 1980.01 4% 6837 2% /
/dev/hd2 10240.00 8068.59 22% 44971 3% /usr
/dev/hd9var 8192.00 7868.97 4% 7278 1% /var
/dev/hd3 4096.00 3496.39 15% 1019 1% /tmp
/dev/hd1 20480.00 15137.79 27% 3713 1% /home
/proc - - - - - /proc
/dev/hd10opt 20480.00 14830.66 28% 33118 1% /opt
/dev/arch1_lv 207360.00 207320.46 1% 5 1% /arch1
zzrac2:/arch2 208896.00 208858.72 1% 5 1% /arch2
解决方案:
如果不是,需要修改过小的fs
使用命令smitty chfs->change /show characteristic of an enhanced Journaled File System
修改对应的文件系统的大小
2> 查看操作系统是否打齐补丁( oslevel -s instfix -i )
方式:"oslevel s 或 insfix i |grep ML"
结果类似下面:
# oslevel -s 5300-10-02-0943 # instfix -i |grep ML All filesets for 5.3.0.0_AIX_ML were found. All filesets for 5300-01_AIX_ML were found. All filesets for 5300-02_AIX_ML were found. All filesets for 5300-03_AIX_ML were found. All filesets for 5300-04_AIX_ML were found. All filesets for 5300-05_AIX_ML were found. All filesets for 5300-06_AIX_ML were found. Not all filesets for 5300-07_AIX_ML were found. Not all filesets for 5300-08_AIX_ML were found. Not all filesets for 5300-09_AIX_ML were found. Not all filesets for 5300-10_AIX_ML were found. # oslevel -s 5300-06-12-0920 解决方案:
如果不是,则查看到目前版本需要哪些补丁包,(oslevel rl 5300-10,并通过smitty installp来升级补丁包)
oslevel -rl 5300-10
3>查看操作系统的rootvg 是否做了mirror ("lsvg -l rootvg"),查看LPS 和PPS是不是1对2的关系
方式:"lsvg -l rootvg"
类似结果:
# lsvg -l rootvg
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 1 1 closed/syncd N/A
hd6 paging 32 32 1 open/syncd N/A
hd8 jfs2log 1 1 1 open/syncd N/A
hd4 jfs2 8 8 1 open/syncd /
hd2 jfs2 40 40 1 open/syncd /usr
hd9var jfs2 32 32 1 open/syncd /var
hd3 jfs2 16 16 1 open/syncd /tmp
hd1 jfs2 80 80 1 open/syncd /home
hd10opt jfs2 80 80 1 open/syncd /opt
lg_dumplv sysdump 8 8 1 open/syncd N/A
解决方法:
如果不是1对2的关系(比如上面的列子),而主机的本地磁盘有2块以上,则需要做rootvg的 mirror镜像:
|||||||||||||||||||||||||||||
将两块系统磁盘做镜像:
#smitty extendvg 扩展rootvg,将hdisk1加入到rootvg中
/usr/sbin/extendvg 'rootvg' 'hdisk1'
按图中所示选择,将hdisk1加入到rootvg中,按回车
#smitty mirrorvg 对所选择的VG做镜像。
如上图,将要做镜像的两块硬盘选中,按回车,开始镜像。
上图所示,镜像成功完成。
#bosboot ad hdisk1 将启动扇区写入hdisk1
#bootlist m normal rmt0 cd0 hdisk0 hdisk1 改变启动顺序,将hdisk1加入启动序列。 到此镜像完成,两块硬盘将同时工作,互为镜像。
||||||||||||||||||||||||||||||||||||||||||||| 4、查看bootlist是否正常,推荐从硬盘开始引导:
方式:"# bootlist -m normal o" 查看是不是包含了镜像的两块本地硬盘
结果应该类似下面
# bootlist -m normal -o
hdisk0 blv=hd5
hdisk1 blv=hd5
否则需要修改bootlist:
修改方式:
如果和预期不符合,可以通过下面的方式来修改:
Diag->task selection->display or change Bootlist
5、查看AIX参数
原理
调整AIX上的文件缓存
在AIX上,可以通过vmtune命令中的MINPERM和MAXPERM参数,调整系统文件缓存来控制内存交换操作,MINPERM和MAXPERM参数的调整应遵照以下的原则:
当内存中的文件缓存页在MINPERM以下时,内存页交换算法同时交换文件缓存页和程序页(computational pages)。
当内存中的文件缓存页在MAXPERM以上时,内存页交换算法只交换文件缓存页。
当内存中的文件缓存页在MINPERM和MAXPERM之间时,内存页交换算法通常只交换文件缓存页,但如果文件缓存页的交换率大于程序页时,程序页也同样被交换。
MINPERM和MAXPERM参数的缺省值:
MINPERM = ((number of memory page) - 1024)*0.2
MAXPERM = ((number of memory page) - 1024)*0.8
可以用以下命令将MINPERM设为5%的内存页,而MAXPERM设为20%的内存页。
# vmtune -p 5 -P 20 缺省值分别为20%和80%。
在Oracle数据库应用的环境下,可以将MINPERM和MAXPERM分别设为5%和20%甚至更小,从而使内存更多地被用于Oracle的SGA而不是系统的文件缓存。
(查看文件系统内存占用的份额规定,如果oracle 采用裸设备方式存储文件,则文件系统内存分配比率建议为内存的5%-10%)
方式:"nmon"
结果类似下面:
nmon 查看内存的属性
着重关注,Min/Maxperm部分,这一块代表文件系统内存能够占用的部分,建议内存为5(min)-10(max)留给文件系统。
如果不符合:
通过下面的命令来修改文件系统内存使用的阈值:
|||||||||||||||||
修改内存参数:
minperm%=2 初始化把内存的2%给文件内存用 1.4G 归档,ftp 会使用
#vmo -r -o minperm%=5
#vmo -r -o maxclient%=10
#vmo -r -o maxperm%=10
重启后参数才能起作用
|||||||||||||||||||||
6、查看pagespace是否符合要求,"lsattr -El mem0" "lsps -a"
方式:(lsdev Cc memory ,lssattr El mem0,lsps -a)
结果类似下面,可以看到内存的大小为16G,而pagesize为8G
#
# lsdev -Cc memory
L2cache0 Available L2 Cache
mem0 Available Memory
# lsattr -El mem0 (物理内存大小)
goodsize 16384 Amount of usable physical memory in Mbytes False
size 16384 Total amount of physical memory in Mbytes False
如果内存内存的两倍
# lsps a (pagesize大小)
Page Space Physical Volume Volume Group Size %Used Active Auto Type
hd6 hdisk0 rootvg 8192MB 1 yes yes lv
解决方法:
如果和预期不一样,尝试修改pagesize大小:
||||||||||||||||||||||
修改以上几个参数。
修改Paging Space空间
#smitty lvm
选择 Paging Space
选择 Change / Show Characteristics of a Paging Space
选择 hd6
在NUMBER of additional logical partitions输入:60
将Paging Space空间扩展为8GB
检查页面空间大小
# lsps -a
Page Space Physical Volume Volume Group Size %Used Active Auto Type
hd6 hdisk0 rootvg 8192MB 1 yes yes lv
同样方式修改另一台主机的系统参数。
||||||||||||||||||||||||||| 查看CPU 参数,相关信息是否匹配 "prtconf"
方式:"prtconf"
类似结果如下:
# prtconf
System Model: IBM,8204-E8A
Machine Serial Number: *****
Processor Type: PowerPC_POWER6 (power 芯片类型,为power6)
Processor Implementation Mode: POWER 6
Processor Version: PV_6_Compat
Number Of Processors: 4 (CPU core 个数 4个,即2个双核的物理CPU)
Processor Clock Speed: 3503 MHz (CPU 主频 3.5G)
CPU Type: 64-bit
Kernel Type: 64-bit (内核版本 64位)
LPAR Info: 1 zzrac1
Memory Size: 16384 MB(内存大小16G)
Good Memory Size: 16384 MB
Platform Firmware level: EL350_049
Firmware Version: IBM,EL350_049
Console Login: enable
Auto Restart: true
Full Core: false
Network Information
Host Name: zzrac1
IP Address: 10.220.97.51
Sub Netmask: 255.255.255.0
Gateway: 10.220.97.254
Name Server:
Domain Name:
Paging Space Information
Total Paging Space: 8192MB
Percent Used: 1%
Volume Groups Information
================================================== ============================
rootvg:
PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION
hdisk0 active 546 248 79..00..00..60..109
================================================== ============================
0516-010 : Volume group must be varied on; use varyonvg command.
================================================== ============================
0516-010 : Volume group must be varied on; use varyonvg command.
================================================== ============================
arch1vg:
PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION
hdisk5 active 812 1 00..00..00..00..01
================================================== ============================
INSTALLED RESOURCE LIST
The following resources are installed on the machine.
+/- = Added or deleted from Resource List.
* = Diagnostic support not available.
解决方法:
如何和产品不符,咨询厂家实际情况并修复问题(更换内存?CPU?)
查看是否属于夏时制(不要是夏时制)[确认tz那行对应的不是TZ=1而是TZ=BEIST-8]
方法:"more /etc/environment"
类似结果:
# more /etc/environment
# @(#)18
1.25 src/bos/etc/environment/environment, cmdsh, bos53A, a2004_
35B6 8/23/04 04:13:11
# IBM_PROLOG_BEGIN_TAG
# This is an automatically generated prolog.
#
# bos53A src/bos/etc/environment/environment 1.25
#
# Licensed Materials - Property of IBM
#
# (C) COPYRIGHT International Business Machines Corp. 1989,1994
# All Rights Reserved
#
# US Government Users Restricted Rights - Use, duplication or
# disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
#
# IBM_PROLOG_END_TAG
#
# COMPONENT_NAME: (CMDSH) Shell related commands
#
# ORIGINS: 27
#
# (C) COPYRIGHT International Business Machines Corp. 1989, 1994
# All Rights Reserved
# Licensed Materials - Property of IBM
#
# US Government Users Restricted Rights - Use, duplication or
# disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
#
################################################## ##############
# System wide environment file. This file should only contain
# 1. comment lines which have a # in the first column,
# 2. blank lines, and
# 3. Lines in the form name=value.
#
# WARNING: This file is only for establishing environment variables.
# Execution of commands from this file or any lines other
# than specified above may cause failure of the initialization
# process.
#
# Searching the current directory last is usually a BIG time saver.
# If /usr/ucb is at the beginning of the PATH the BSD version of commands will
# be found.
#
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11 :/sbin:/usr/java14/jre/bin:/us
r/java14/bin
TZ=1
LANG=en_US
LOCPATH=/usr/lib/nls/loc
NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lib/nls/msg/%L /%N.cat
LC__FASTMSG=true
# ODM routines use ODMDIR to determine which objects to operate on
# the default is /etc/objrepos - this is where the device objects
# reside, which are required for hardware configuration
ODMDIR=/etc/objrepos
TERM=vt100
# 解决方法:
||||||||||||||||||
若时区不是"BEIST-8",则通过smitty chtz 改时区(改完时区之后需要重启才能生效)
Smitty chtz->Use DAYLIGHT SAVINGS TIME?(选择no)-> CUT (Coordinated Universal Time) Time Zone (选择"(BEIST-8) Peoples Rep. China (CUT +8)")
|||||||||||||||||||
检查rac两节点是否时间同步,用"date "命令查看(首先确认时区要一致)
结论,若不同步,通过smitty date改时间
数据库版本检查,是否为最新: 检查数据库版本和crs的版本是否打到最新(10.2.0.5):
方法:
"sqlplus -version", 查看software版本
"crsctl query crs softwareversion" 查看crs版本
类似结果
$ sqlplus -version
SQL*Plus: Release 10.2.0.5.0 Production
# crsctl query crs softwareversion
CRS software version on node [zzrac1] is [10.2.0.5.0]
解决方案:
||||||||||||||
如果补丁集较低,建议升级补丁:
1>、应用备份数据
2>、升级rac crs
3>、升级oracle software
4>、升级库版本
5>、编译无效的对象
||||||||||||||||
(数据文件如果采用裸设备的方式)检查是否数据库文件关闭了自动扩展(建议关闭自动扩展)(用toad上去观察)
方案:使用toad检查问价系统状态
类似结果:
解决方案:
关闭相应的数据文件的自动扩展:
ALTER DATABASE TEMPFILE '/dev/rrac_temp_2G' AUTOEXTEND OFF;
检查数据库文件是否已经和lv大小相近似(建议扩充文件系统,接近到可扩充的最大文件)
方法:使用toad检查
类似结果
解决方案:(rac_temp_2G对应了8个pp)
# lsvg -l oraclevg
oraclevg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
rac_ocr_raw_1G raw 4 4 1 open/syncd N/A
rac_vote_raw_1G raw 4 4 1 open/syncd N/A
rac_system_2G raw 8 8 1 open/syncd N/A
rac_sysaux_2G raw 8 8 1 open/syncd N/A
rac_undotbs1_2G raw 8 8 1 open/syncd N/A
rac_undotbs2_2G raw 8 8 1 open/syncd N/A
rac_temp_2G raw 8 8 1 open/syncd N/A
rac_users_2G raw 8 8 1 open/syncd N/A
rac_redo11_4G raw 16 16 1 open/syncd N/A
rac_redo12_4G raw 16 16 1 open/syncd N/A
rac_redo31_4G raw 16 16 1 open/syncd N/A
rac_redo32_4G raw 16 16 1 open/syncd N/A
rac_redo21_4G raw 16 16 1 open/syncd N/A
rac_redo22_4G raw 16 16 1 open/syncd N/A
rac_redo41_4G raw 16 16 1 open/syncd N/A
rac_redo42_4G raw 16 16 1 open/syncd N/A
rac_con1_512m raw 2 2 1 open/syncd N/A
rac_con2_512m raw 2 2 1 open/syncd N/A
rac_con3_512m raw 2 2 1 open/syncd N/A
rac_spfile_512m raw 2 2 1 closed/syncd N/A
查看pp大小(1个pp大小为256M)
# lsvg oraclevg
VOLUME GROUP: oraclevg VG IDENTIFIER: 00c976b500004c00000001296240e915
VG STATE: active PP SIZE: 256 megabyte(s)
VG PERMISSION: read/write TOTAL PPs: 6143 (1572608 megabytes)
MAX LVs: 256 FREE PPs: 5951 (1523456 megabytes)
LVs: 20 USED PPs: 192 (49152 megabytes)
OPEN LVs: 19 QUORUM: 2 (Enabled)
TOTAL PVs: 1 VG DESCRIPTORS: 2
STALE PVs: 0 STALE PPs: 0
ACTIVE PVs: 1 AUTO ON: no
Concurrent: Enhanced-Capable Auto-Concurrent: Disabled
VG Mode: Concurrent
Node ID: 1 Active Nodes:
MAX PPs per VG: 28448
MAX PPs per PV: 7112 MAX PVs: 4
LTG size (Dynamic): 1024 kilobyte(s) AUTO SYNC: no
HOT SPARE: no BB POLICY: relocatable
#
所以rac_temp_2G 可以扩展到2G(8*256M)
如果没有扩展到适应大小,用下面命令:(确认lv大小)
ALTERDATABASETEMPFILE'/dev/rrac_temp_2G'RESIZE2000M;
|||||||||||||||||||
查看rac两个节点是否做了时间同步:
方式:
1>"lssrc -ls xntpd"
2>查看同步的时间间隔(poll)
# xntpdc -c peers
具体命令
主节点情况:
# lssrc -ls xntpd
Program name: /usr/sbin/xntpd
Version: 3
Leap indicator: 00 (No leap second today.)
Sys peer: 127.127.1.0
Sys stratum: 4
Sys precision: -18
Debug/Tracing: DISABLED
Root distance: 0.000000
Root dispersion: 0.010010
Reference ID: 127.127.1.0
Reference time: cfd147ba.95c06000 Sun, Jun 27 2010 11:44:58.584
Broadcast delay: 0.003906 (sec)
Auth delay: 0.000122 (sec)
System flags: pll monitor filegen
System uptime: 2980 (sec)
Clock stability: 0.000000 (sec)
Clock frequency: 0.000000 (sec)
Peer: 127.127.1.0
flags: (configured)(refclock)(sys peer)
stratum: 3, version: 3
our mode: client, his mode: server
Subsystem Group PID Status
xntpd tcpip 127370 active
次节点的情况
:
# lssrc -ls xntpd
Program name: /usr/sbin/xntpd
Version: 3
Leap indicator: 00 (No leap second today.)
Sys peer: zzrac1
Sys stratum: 5
Sys precision: -18
Debug/Tracing: DISABLED
Root distance: 0.000305
Root dispersion: 0.010757
Reference ID: 10.220.97.51
Reference time: cfd147b0.aeda5000 Sun, Jun 27 2010 11:44:48.683
Broadcast delay: 0.003906 (sec)
Auth delay: 0.000122 (sec)
System flags: pll monitor filegen
System uptime: 2529 (sec)
Clock stability: 0.000000 (sec)
Clock frequency: 0.000000 (sec)
Peer: zzrac1
flags: (configured)(sys peer)
stratum: 4, version: 3
our mode: client, his mode: server
Subsystem Group PID Status
xntpd tcpip 180636 active
解决方案:
如果问题无法解决,配置时间服务器的过程如下:
|||||||| AIX配置时间服务器及客户机实战笔记收藏
xntpd是关于网络时间协议的守护进程,它遵循了因特网时间服务器的通用标准。在启动 xntpd 时, xntpd 会读取 /etc/ntp.conf 配置文件来确定网络中系统时钟服务器,以 ntp 服务器的系统时间为标准,来调整本机的系统时间。
可以用 ntpq 命令来显示 xntpd 进程的内部变量。使用 ntp 时应注意,xntpd 服务器和 xntpd 客户端的时钟不能相差超过1000秒。若有大于1000秒的偏移,在客户端启动 xntpd 守护进程前,用 data 命令或 ntpdate 命令调整本机的系统时间,使偏移量在1000秒之内。然后启动 xntpd.
1. 构造一个NTP环境的基本步骤:
1.1 设置NTP 服务器(以192.168.5.2为例), 其它NTP客户服务器以此服务器的时间为准,与其进行时间同步.
1.1.1编辑 /etc/ntp.conf 文件, 内容如下:
----------------------------
#broadcastclient
server 127.127.1.0
driftfile /etc/ntp.drift
tracefile /etc/ntp.trace
----------------------------
请注意文件中的 server 127.127.1.0 这一行, 此处的127.127.1.0 是一特殊的地址,表示NTP主服务器是与自身的系统时钟同步.
1.1.2编辑好 /etc/ntp.conf后, 启动xntpd守护进程
# startsrc -s xntpd
也可通过调用smitty , 使 xntpd 在以后重启服务器时能自动启动.
# smitty xntpd
1.1.3 xntpd 状态查询 , 使用 #lssrc -ls xntpd
刚启动xntpd时, sys peer 为 'insane', 表明xntpd还没有完成同步, .
#lssrc -ls xntpd
Program name: --/usr/sbin/xntpd
Version: -------3
Leap indicator: 11 (Leap indicator is insane.) Sys peer: ------no peer, system is insane ...
等待 6 - 10 分钟后, sys peer 就不再是 'insane' 了.
#lssrc -ls xntpd
Program name: --/usr/sbin/xntpd
Version: -------3
Leap indicator: 00 (No leap second today.) Sys peer: ------127.127.1.0 ...
1.2. NTP客户端的设置
1.2.1编辑 NTP 客户端上的 /etc/ntp.conf文件, 内容如下:
----------------------------
#broadcastclient
server 192.168.5.2
driftfile /etc/ntp.、drift
tracefile /etc/ntp.trace
----------------------------
其中的 server 192.168.5.2 表明, 此客户端与IP地址为 192.168.5.2 的NTP服务器进行时间同步.
1.2.2在NTP客户端启动xntpd守护进程
# startsrc -s xntpd
也可通过调用smitty , 使 xntpd 在以后重启服务器时能自动启动.
# smitty xntpd
1.2.3查询xntpd的状态
当 system peer 不为 'insane' 时, 表明客户端已与服务器端成功地进行了同步.
# lssrc -ls xntpd
Program name: --/usr/sbin/xntpd
Version: -------3
Leap indicator: 00 (No leap second today.) Sys peer: ------192.168.5.2 ...
1.3. NTP客户端查询NTP服务器
ntp客户端使用 ntpdate 命令来确认是否可用指定的 ntp 服务器进行时间同步。
命令的结果会显示客户端与服务器的时间偏移。
#ntpdate -d 192.168.5.2 ... 18 Jan 15:49:57 ntpdate[98462]: adjust time server 192.168.5.2 offset -0.000868 2 sec 若时间间隔大于1000秒,使用ntpdate 进行手工调整, 如:
#date
Thu Jan 18 15:52:00 BEIST 2007
#ntpdate 192.168.5.2
18 Jan 15:49:57 ntpdate[23832]: step time server 9.185.43.189 offset 23.40260
7 sec
#date
Thu Jan 18 15:52:00 BEIST 2007
完成上述操作后 ntp 客户端与 ntp 服务器系统时钟完成同步,ntp 客户端得到了新的系统时间。
查看同步的时间间隔(poll)
# xntpdc -c peers
remote local st poll reach delay offset disp
================================================== =====================
*192.168.5.2 192.168.7.1 4 64 377 0.00230 -0.000426 0.00026
|||||||||||||||| 文件系统的RAC则要查询AIO设置:
原理:
异步IO的设置
操作系统中最常用的I/O模式是同步I/O。在同步中,当发出一个I/O请求之后,应用程序就会阻塞,知道I/O请求得到满足为止。
异步I/O(AIO)的基本思想是允许众多并发进程同时发起I/O操作,而不用阻塞或等待任何操作完成。在稍后接收到I/O
操作完成的通知时,进程就可以检索I/O操作的记结果。
显然,使用异步IO有助于构建在多用户运算模式下速度更快的I/O方式。在异步I/O的支持下,应用系统(如Oracle数据库),可以避免I/O的重叠操作,高效使用CPU资源。
Oracle数据库在AIX上运行时,完全支持AIO模型。如果能够正确和优化地使用AIO,则会对Oracle系统进行I/O写入操作带来非常正面的影响。它使Oracle在后台完成I/O操作的同时,继续进行计算和处理,大幅度提高性能。
在AIX 5L中,无论Oracle 数据文件采用的是JFS2文件系统方式存放,或者是采用裸设备方式存放,异步I/O都是支持的。如果Oracle采用裸设备形式存储数据库文件(数据文件、日志文件、控制文件),由于AIX对于AIO的支持已经完全集成在内核中,所以Oracle数据库的I/O操作本身即异步处理,无需做任何调整。
如果采用JFS2/JFS文件系统,则Oracle数据局库的I/O操作的异步化,必须由aioserver完成---由aioserver控制读写任务从启动到结束的全过程。因此,aioserver的进程数量也就决定了Oracle可同时读写的任务多少。
所以,在文件系统数据库模式下,调整AIO的参数是非常必要的。调整该参数可以在SMITTY环境下执行。设定后需要重新启动系统。当然也可以通过下面的命令修改AIO逻辑设备的属性来达到同样的目的:
方法:
Smitty chaio
修改方式:
#chdev -l aio0 -a maxservers='100' -a minservers='50'
原理: hard limits自AIX 4.1版本开始引入。hard limits 应由AIX系统治理员设置,只有security组的成员可以将此值增大,用户本身可以减小此限定值,但是其更改将随着该用户从系统退出而失效。使用下列命令可以查看hard limits的限定值:
ulimit -Ha
soft limits 是AIX核心使用的限制进程对系统资源的使用的上限值。此值可由任何人更改,但不能超出hard limits值。这里要注重的是只有security组的成员可使更改永久生效,普通用户的更改在其退出系统后将失效。使用以下命令可以查看soft limits的设置:
ulimit -a
下面为系统的soft limits的默认值:
3.2 4.1-4.3
=============== =================
fsize = 2097151 fsize = 2097151
core = 2048 core = 2048
cpu = 3600 cpu = -1
data = 131072 data = 262144
rss = 65536 rss = 65536
stack = 8192 stack = 65536
nofiles = 2000* nofiles=2000 *
* 该值(nofiles)只能在AIX 4.3.1 或以后的版本中更改。
上述定义作为默认值存放在文件 /etc/security/limits 中,在新用户被加进系统后生效。直接更改此文件中的定义值需要将系统重新启动以便使更改生效。将相应值该为"-1" 表示不受 soft limits的限制(unlimited)。
下面我们将就各字段逐一进行介绍:
fsize 用户创建的文件大小限制。此定义值(512字节为单位)为该用户可以生成的最大文件的大小。
core 生成的core文件大小的限制(512字节为单位)。
cpu 用户进程可用cpu的限定值(以秒为单位)。普通用户只能将此值减小,root可以将此值增大。这里要注重的是进程使用CPU的时间取决于AIX Kernel(核心程序)进程调度算法,该值在此仅做参考。
data 进程数据段大小的限定值(以字节为单位)。
stack 进程堆栈段大小的限定值(以字节为单位)。
rss 进程常驻内存段的限定值(以字节为单位)。AIX核心并不参考此限定。
nofiles 进程中打开文件的最大数量。此限定在AIX 4.3.1之前的版本中固定为2000。在AIX 4.3.1及其之后的版本中可将此值增大至32767。
方式:(ulimit a)
cat /etc/security/limits
理想结果:
cat /etc/security/limits
# more /etc/security/limits
* Sizes are in multiples of 512 byte blocks, CPU time is in seconds
* fsize - soft file size in blocks
* core - soft core file size in blocks
* cpu - soft per process CPU time limit in seconds
* data - soft data segment size in blocks
* stack - soft stack segment size in blocks
* rss - soft real memory usage in blocks
* nofiles - soft file descriptor limit
* fsize_hard - hard file size in blocks
* core_hard - hard core file size in blocks
* cpu_hard - hard per process CPU time limit in seconds
* data_hard - hard data segment size in blocks
* stack_hard - hard stack segment size in blocks
* rss_hard - hard real memory usage in blocks
* nofiles_hard - hard file descriptor limit
* The following table contains the default hard values if the
* hard values are not explicitly defined:
*
* Attribute Value
* ========== ============
* fsize_hard set to fsize
* cpu_hard set to cpu
* core_hard -1
* data_hard -1
* stack_hard 8388608
* rss_hard -1
* nofiles_hard -1
*
* NOTE: A value of -1 implies "unlimited"
*
default: fsize = -1 core = -1 cpu = -1 data = -1 rss = -1 stack = -1 nofiles = -1 root: daemon: bin: sys: adm: uucp: guest: nobody: lpd: esaadmin: stack = 393216 stack_hard = 393216 oracle: nofiles = -1 data = -1 rss = -1 stack = -1 fsize = -1 注意,-1是无限制
解决办法:
要修改如上限制,可以采用命令如
chuser data='-1' rss='-1' stack='-1' fsize='-1' nofiles='-1' oracle 原理: 如何对操作系统进行调优,使操作系统支持最大连接数?
在solaris下,在安装oracle前必须要调整系统参数,该参数文件位于/etc/下,名为system,里面有一个参数 semsys:seminfo_semmns=1024,这个值是processor的最终控制值,这个参数表示unix系统总共可以分配的进程。当oracle的进程数超过操作系统的限制时,就会出现这样的错误。maximum number of processes(150) exceeded,现在,你可以检查根据你自己的操作系统检查一下看怎样找到该参数。
AIX操作系统下,smit chgsys 查看Maximum number of PROCESSES allowed per user
系统缺省128。如果连接数超过,也会有访问不了oracle的问题.
方式:
Smitty chgsys
结果类似下面:
Change / Show Characteristics of Operating System
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[TOP] [Entry Fields]
System ID 0X80000EBC36D00000
Partition ID 0X80000EBC36D00002
Maximum number of PROCESSES allowed per user [10000] +#
Maximum number of pages in block I/O BUFFER CACHE [20] +#
Maximum Kbytes of real memory allowed for MBUFS [0] +#
Automatically REBOOT OS after a crash true +
Continuously maintain DISK I/O history false +
HIGH water mark for pending write I/Os per file [33] +#
LOW water mark for pending write I/Os per file [24] +#
Amount of usable physical memory in Kbytes 16252928
State of system keylock at boot time normal
Enable full CORE dump false +
Use pre-430 style CORE dump false
解决方案
如果太小,可以修改
Smitty chgsys-> Maximum number of PROCESSES allowed per user 设置>1500
发表评论
-
Linux 编程段错误(segmentation error)总结
2012-01-20 10:47 722Linux 编程段错误(segmentation error) ... -
充分利用 Xerces-C++,第 1 部分
2012-01-20 10:47 558充分利用 Xerces-C++,第 1 ... -
Windows PowerShell 2.0之进程管理
2012-01-20 10:46 825Windows PowerShell 2.0之进程管理 20 ... -
MTD系列 - MTD User modules -- Raw block
2012-01-20 10:46 900MTD系列 - MTD User modules -- Raw ... -
Network Management Error Codes
2012-01-19 15:47 1108Network Management Error Codes ... -
[转载]C/C++/MFC 编译运行错误解决方法收集error
2012-01-19 15:47 1651[转载]C/C++/MFC 编译运行 ... -
ASP ERROR NUMBER
2012-01-19 15:47 934ASP ERROR NUMBER 2011年09月2 ... -
socket性能优化(上)
2012-01-19 15:47 419socket性能优化(上) 2012 ... -
诬凹沃官燠喷闳
2012-01-19 15:47 620诬凹沃官燠喷闳 2012年01月06日 U辙趴“ ... -
属狗的人2012年运程-易久堂风水精准预测
2012-01-17 05:29 929属狗的人2012年运程-易久堂风水精准预测 2012年01月 ... -
我的日志
2012-01-17 05:29 629我的日志 2012年01月12日 夏河城是夏河寨 ... -
导电粘合剂技术专题资料光盘
2012-01-17 05:29 603导电粘合剂技术专题资 ... -
不恨了
2012-01-17 05:29 545不恨了 2012年01月12日 ... -
2011-2-21
2012-01-16 04:25 8452011-2-21 2011年02月21日 ... -
八项十一处遗产
2012-01-16 04:25 671八项十一处遗产 2011年0 ... -
论文《浅谈中国古代建筑艺术》
2012-01-16 04:25 640论文《浅谈中国古代建 ... -
中国古代建筑
2012-01-16 04:24 652中国古代建筑 2010年06月11日 中国古代建筑是中华 ...
相关推荐
aix下RAC环境巡检, 查看操作系统(AIX 文件系统是否合理) 查看操作系统是否打齐补丁 等
AIX 下rac巡检修改版,包括操作系统检查及RAC检查
最详细的AIX Oracle 10g RAC实施文档,一册在手学习安装无忧!
aix-rac-1-aix操作系统必要文件集的安装与升级.pdf Oracle RAC集群aix
AIX下Oracle 10G RAC某项目超详细实施文档
Deploying Oracle 10g R2 RAC on AIX with ASM and SVC
AIX下oracle安装文档整理,很全面的整理,,,AIX下oracle安装文档整理,很全面的整理
oralce 11g RAC 安装文档
详细的rac安装文档,包括从头到尾的设置以及存储的规划
详尽的 AIX RAC 11G 新版数据库实施手册,亲自实施,步骤详尽
Oracle 11g RAC on AIX 搭建文档
本文档介绍了AIX系统中RAC数据库加数据文件步骤
oracle 搭建rac安装配置文档,生产环境多次使用过得文档。
oracle10g RAC for AIX6.1 安装文档
Oracle 11g Rac安装文档
AIX Oracle 10g RAC安装手册
自己做的vmware环境,三台虚拟机的rac安装详细文档,oracle版本为11.2.0.1 存储为iscsi
Oracle11GRAC安装文档,有需要的拿去
ORACLE 10g AIX RAC+OBackup安装文档
自己亲手写的文档,亲测可行,不懂得多交流。绝对可以的