邪恶八进制信息安全团队技术讨论组's Archiver

pub!1c 2006-2-12 11:32

[转载]Oracle诊断案例-SGA与Swap

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376262 style="FONT-SIZE: 12px">信息来源:邪恶八进制信息安全团队 </SPAN></FONT></P>
<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script style="FONT-SIZE: 12px">最近工作非常的忙.白天很少有时间上来.<BR><BR>今天整理另外一个案例给大家参考<BR>同样的,希望对你有些帮助.<BR>也期待你的反馈与意见.<BR><BR>___________________________________________<BR><BR>案例描述:<BR><BR>用户报告,服务器启动一段时间以后,无法建立数据库连接<BR>重新启动几分钟以后,再次无法连接<BR><BR>系统无法正常使用.</SPAN></FONT></P>

pub!1c 2006-2-12 11:32

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376265 style="FONT-SIZE: 12px"><STRONG>1.登陆系统</STRONG><BR><BR>SunOS 5.8<BR><BR>login: root<BR>Password: <BR>Last login: Tue Mar 23 13:56:59 from 172.16.31.41<BR>Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001<BR>You have new mail.<BR><BR>2.su 为Oracle用户<BR>检查启动的Oracle进程<BR><BR>发现后台进程正常,有一定量的用户连接<BR><BR>wapplatform:/>su - oracle<BR>Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001<BR>You have new mail.<BR>/export/home1/oracle>ls<BR>admin codesyndealt31 exp.sh local.cshrc local.profile oraclebak oui v6_database<BR>app exp.log jre local.login nsmail oradata swan<BR>export/home1/oracle>cd admin<BR>/export/home1/oracle/admin>ps -ef|grep ora<BR>oracle 25269 25258 0 13:58:36 pts/3 0:00 grep ora<BR>oracle 25257 24906 0 13:58:31 pts/4 0:00 vi alert_HSWAPDB.log<BR>oracle 25267 1 1 13:58:34 ? 0:00 oracleHSWAPDB (LOCAL=NO)<BR>oracle 25184 1 0 13:56:57 ? 0:00 ora_p007_HSWAPDB<BR>oracle 25182 1 0 13:56:57 ? 0:00 ora_p006_HSWAPDB<BR>oracle 25193 1 0 13:57:03 ? 0:01 oracleHSWAPDB (LOCAL=NO)<BR>oracle 25209 1 0 13:57:09 ? 0:00 oracleHSWAPDB (LOCAL=NO)<BR>oracle 25176 1 0 13:56:57 ? 0:00 ora_p003_HSWAPDB<BR>oracle 25180 1 0 13:56:57 ? 0:00 ora_p005_HSWAPDB<BR>oracle 25172 1 0 13:56:56 ? 0:00 ora_p001_HSWAPDB<BR>oracle 25178 1 0 13:56:57 ? 0:00 ora_p004_HSWAPDB<BR>oracle 25170 1 0 13:56:56 ? 0:00 ora_p000_HSWAPDB<BR>oracle 24254 24240 0 12:08:25 pts/2 0:00 -ksh<BR>oracle 25174 1 0 13:56:56 ? 0:00 ora_p002_HSWAPDB<BR>oracle 25244 1 1 13:58:23 ? 0:00 oracleHSWAPDB (LOCAL=NO)<BR>oracle 25218 1 0 13:57:23 ? 0:00 oracleHSWAPDB (LOCAL=NO)<BR>oracle 25159 1 0 13:56:42 ? 0:02 ora_qmn0_HSWAPDB<BR>oracle 25230 1 0 13:57:40 ? 0:01 oracleHSWAPDB (LOCAL=NO)<BR>oracle 25161 1 0 13:56:42 ? 0:00 ora_s000_HSWAPDB<BR>oracle 25149 1 0 13:56:41 ? 0:01 ora_lgwr_HSWAPDB<BR>oracle 25157 1 0 13:56:42 ? 0:00 ora_cjq0_HSWAPDB<BR>oracle 24906 3698 0 13:47:47 pts/4 0:00 -ksh<BR>oracle 25153 1 0 13:56:42 ? 0:01 ora_smon_HSWAPDB<BR>oracle 25058 7464 0 13:55:14 pts/1 0:00 -ksh<BR>oracle 25163 1 0 13:56:42 ? 0:00 ora_d000_HSWAPDB<BR>oracle 25155 1 0 13:56:42 ? 0:00 ora_reco_HSWAPDB<BR>oracle 25151 1 0 13:56:41 ? 0:00 ora_ckpt_HSWAPDB<BR>oracle 25145 1 0 13:56:41 ? 0:00 ora_dbw0_HSWAPDB<BR>oracle 25199 1 15 13:57:04 ? 0:49 ora_j000_HSWAPDB<BR>oracle 4149 4146 0 12:05:11 pts/5 0:00 -ksh<BR>oracle 25232 1 0 13:57:41 ? 0:00 oracleHSWAPDB (LOCAL=NO)<BR>oracle 25119 1 0 13:56:29 ? 0:00 oraclehswapdb (LOCAL=NO)<BR>oracle 25075 1 0 13:55:34 ? 0:00 /export/home1/oracle/app/bin/tnslsnr LISTENER -inherit<BR>oracle 24374 4149 0 12:21:56 pts/5 0:00 sqlplus /nolog<BR>oracle 25143 1 0 13:56:41 ? 0:00 ora_pmon_HSWAPDB<BR>oracle 25258 25242 0 13:58:31 pts/3 0:00 -ksh<BR>/export/home1/oracle/admin>ps -ef|grep ora_<BR>oracle 25275 25258 0 13:58:42 pts/3 0:00 grep ora_<BR>oracle 25184 1 0 13:56:57 ? 0:00 ora_p007_HSWAPDB<BR>oracle 25182 1 0 13:56:57 ? 0:00 ora_p006_HSWAPDB<BR>oracle 25176 1 0 13:56:57 ? 0:00 ora_p003_HSWAPDB<BR>oracle 25180 1 0 13:56:57 ? 0:00 ora_p005_HSWAPDB<BR>oracle 25172 1 0 13:56:56 ? 0:00 ora_p001_HSWAPDB<BR>oracle 25178 1 0 13:56:57 ? 0:00 ora_p004_HSWAPDB<BR>oracle 25170 1 0 13:56:56 ? 0:00 ora_p000_HSWAPDB<BR>oracle 25174 1 0 13:56:56 ? 0:00 ora_p002_HSWAPDB<BR>oracle 25159 1 0 13:56:42 ? 0:02 ora_qmn0_HSWAPDB<BR>oracle 25161 1 0 13:56:42 ? 0:00 ora_s000_HSWAPDB<BR>oracle 25149 1 0 13:56:41 ? 0:01 ora_lgwr_HSWAPDB<BR>oracle 25157 1 0 13:56:42 ? 0:00 ora_cjq0_HSWAPDB<BR>oracle 25153 1 0 13:56:42 ? 0:01 ora_smon_HSWAPDB<BR>oracle 25163 1 0 13:56:42 ? 0:00 ora_d000_HSWAPDB<BR>oracle 25155 1 0 13:56:42 ? 0:00 ora_reco_HSWAPDB<BR>oracle 25151 1 0 13:56:41 ? 0:00 ora_ckpt_HSWAPDB<BR>oracle 25145 1 0 13:56:41 ? 0:00 ora_dbw0_HSWAPDB<BR>oracle 25199 1 13 13:57:04 ? 0:51 ora_j000_HSWAPDB<BR>oracle 25143 1 0 13:56:41 ? 0:00 ora_pmon_HSWAPDB</SPAN></FONT></P>

pub!1c 2006-2-12 11:32

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java id=text1376273 style="FONT-SIZE: 12px" script><STRONG>3.检查Alert.log警报日志文件<BR></STRONG><BR>/export/home1/oracle/admin>ls<BR>hswapdb<BR>/export/home1/oracle/admin>cd *<BR>/export/home1/oracle/admin/hswapdb>ls<BR>bdump cdump create pfile udump<BR>/export/home1/oracle/admin/hswapdb>cd bdump<BR>/export/home1/oracle/admin/hswapdb/bdump><BR><BR>/export/home1/oracle/admin/hswapdb/bdump>ls -l *.log<BR><BR>-rw-r--r-- 1 oracle dba 813396 Mar 23 13:57 alert_HSWAPDB.log<BR>/export/home1/oracle/admin/hswapdb/bdump>vi *.log<BR>"alert_HSWAPDB.log" 18888 lines, 813396 characters (115 null) <BR>Tue Jun 24 21:17:14 2003<BR>Starting ORACLE instance (normal)<BR>LICENSE_MAX_SESSION = 0<BR>LICENSE_SESSIONS_WARNING = 0<BR>SCN scheme 3<BR>Using log_archive_dest parameter default value<BR>LICENSE_MAX_USERS = 0<BR>SYS auditing is disabled<BR>Starting up ORACLE RDBMS Version: 9.2.0.3.0.<BR>System parameters with non-default values:<BR>processes = 400<BR>timed_statistics = TRUE<BR>shared_pool_size = 117440512<BR>large_pool_size = 83886080<BR>java_pool_size = 33554432<BR>control_files = /export/home1/oracle/oradata/hswapdb/control01.ctl, <BR><BR>/export/home1/oracle/oradata/hswapdb/control02.ctl,<BR>/export/home1/oracle/oradata/hswapdb/control03.ctl<BR>db_block_size = 8192<BR>db_cache_size = 352321536<BR>compatible = 9.2.0.0.0<BR>db_file_multiblock_read_count= 16<BR>fast_start_mttr_target = 300<BR>undo_management = AUTO<BR>undo_tablespace = UNDOTBS1<BR>undo_retention = 10800<BR>remote_login_passwordfile= EXCLUSIVE<BR>db_domain = eygle.com<BR>instance_name = hswapdb<BR>dispatchers = (PROTOCOL=TCP) (SERVICE=hswapdbXDB)<BR>job_queue_processes = 10<BR>hash_join_enabled = TRUE<BR>background_dump_dest = /export/home1/oracle/admin/hswapdb/bdump<BR>user_dump_dest = /export/home1/oracle/admin/hswapdb/udump<BR>core_dump_dest = /export/home1/oracle/admin/hswapdb/cdump<BR>sort_area_size = 524288<BR>db_name = hswapdb<BR>open_cursors = 300<BR>star_transformation_enabled= FALSE<BR>query_rewrite_enabled = FALSE<BR>pga_aggregate_target = 154140672<BR>aq_tm_processes = 1<BR><BR>.................<BR><BR>Tue Mar 23 13:40:45 2004<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 11, op = fork, loc = skgpspawn5<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>Tue Mar 23 13:42:02 2004<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>Tue Mar 23 13:55:38 2004<BR>Starting ORACLE instance (normal)<BR>Shutting down instance: further logons disabled<BR>Tue Mar 23 13:56:20 2004<BR>Shutting down instance (abort)<BR>License high water mark = 26<BR>Instance terminated by USER, pid = 25112<BR>Tue Mar 23 13:56:37 2004<BR>Starting ORACLE instance (normal)<BR>LICENSE_MAX_SESSION = 0<BR>LICENSE_SESSIONS_WARNING = 0<BR>SCN scheme 3<BR>Using log_archive_dest parameter default value<BR>LICENSE_MAX_USERS = 0<BR>SYS auditing is disabled<BR>Starting up ORACLE RDBMS Version: 9.2.0.3.0.<BR>System parameters with non-default values:<BR>processes = 400<BR>timed_statistics = TRUE<BR>shared_pool_size = 117440512<BR>large_pool_size = 83886080<BR>java_pool_size = 33554432<BR>control_files = /export/home1/oracle/oradata/hswapdb/control01.ctl, <BR><BR>/export/home1/oracle/oradata/hswapdb/control02.ctl,<BR>/export/home1/oracle/oradata/hswapdb/control03.ctl<BR>db_block_size = 8192<BR>db_cache_size = 352321536<BR>compatible = 9.2.0.0.0<BR>db_file_multiblock_read_count= 16<BR>fast_start_mttr_target = 300<BR>undo_management = AUTO<BR>undo_tablespace = UNDOTBS1<BR>undo_retention = 10800<BR>remote_login_passwordfile= EXCLUSIVE<BR>db_domain = eygle.com<BR>instance_name = hswapdb<BR>dispatchers = (PROTOCOL=TCP) (SERVICE=hswapdbXDB)<BR>remote_dependencies_mode = SIGNATURE<BR>job_queue_processes = 10<BR>hash_join_enabled = TRUE<BR>background_dump_dest = /export/home1/oracle/admin/hswapdb/bdump<BR>user_dump_dest = /export/home1/oracle/admin/hswapdb/udump<BR>core_dump_dest = /export/home1/oracle/admin/hswapdb/cdump<BR>sort_area_size = 524288<BR>db_name = hswapdb<BR>open_cursors = 300<BR>star_transformation_enabled= FALSE<BR>parallel_automatic_tuning= TRUE<BR>query_rewrite_enabled = FALSE<BR>pga_aggregate_target = 154140672<BR>aq_tm_processes = 1<BR>PMON started with pid=2<BR>DBW0 started with pid=3<BR>LGWR started with pid=4<BR>CKPT started with pid=5<BR>SMON started with pid=6<BR>RECO started with pid=7<BR>CJQ0 started with pid=8<BR>QMN0 started with pid=9<BR>Tue Mar 23 13:56:42 2004<BR>starting up 1 shared server(s) ...<BR>Tue Mar 23 13:56:42 2004<BR>starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...<BR>Tue Mar 23 13:56:43 2004<BR>ALTER DATABASE MOUNT<BR>Tue Mar 23 13:56:47 2004<BR>Successful mount of redo thread 1, with mount id 3253076635.<BR>Tue Mar 23 13:56:47 2004<BR>Database mounted in Exclusive Mode.<BR>Completed: ALTER DATABASE MOUNT<BR>Tue Mar 23 13:56:47 2004<BR>Current log# 2 seq# 2136 mem# 0: /export/home1/oracle/oradata/hswapdb/redo02.log<BR>Successful open of redo thread 1.<BR>Tue Mar 23 12:24:54 2004<BR>SMON: enabling cache recovery<BR>Tue Mar 23 12:24:56 2004<BR>Undo Segment 1 Onlined<BR>Undo Segment 2 Onlined<BR>Undo Segment 3 Onlined<BR>Undo Segment 4 Onlined<BR>Undo Segment 5 Onlined<BR>Undo Segment 6 Onlined<BR>Undo Segment 7 Onlined<BR>Undo Segment 8 Onlined<BR>Undo Segment 9 Onlined<BR>Undo Segment 10 Onlined<BR>Successfully onlined Undo Tablespace 1.<BR>Tue Mar 23 12:24:56 2004<BR>SMON: enabling tx recovery<BR>Tue Mar 23 12:24:56 2004<BR>Database Characterset is ZHS16GBK<BR>Tue Mar 23 12:25:01 2004<BR>SMON: Parallel transaction recovery tried<BR>Tue Mar 23 12:25:01 2004<BR>replication_dependency_tracking turned off (no async multimaster replication found)<BR>Completed: ALTER DATABASE OPEN<BR>Tue Mar 23 12:28:26 2004<BR>/* OracleOEM */ ALTER DATABASE DATAFILE '/export/home1/oracle/oradata/hswapdb/users01.dbf' RESIZE 2501760K<BR>Tue Mar 23 12:28:26 2004<BR>ORA-3297 signalled during: /* OracleOEM */ ALTER DATABASE DATAFILE '/export/h...<BR>Tue Mar 23 12:28:32 2004<BR>/* OracleOEM */ ALTER DATABASE DATAFILE '/export/home1/oracle/oradata/hswapdb/users01.dbf' RESIZE 2501760K<BR>ORA-3297 signalled during: /* OracleOEM */ ALTER DATABASE DATAFILE '/export/h...<BR>Tue Mar 23 12:28:53 2004<BR>/* OracleOEM */ ALTER DATABASE DATAFILE '/export/home1/oracle/oradata/hswapdb/users01.dbf' RESIZE 3501760K<BR>Tue Mar 23 12:28:53 2004<BR>ORA-3297 signalled during: /* OracleOEM */ ALTER DATABASE DATAFILE '/export/h...<BR>Tue Mar 23 13:40:45 2004<BR><FONT color=red>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 11, op = fork, loc = skgpspawn5<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3</FONT><BR>Tue Mar 23 13:42:02 2004<BR>skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3<BR>:q<BR><BR>发现数据库多次重起,并记录了部分错误信息<BR><BR>该提示说明数据库无法<FONT color=red>spawn a new session. </FONT></SPAN></FONT></P>

pub!1c 2006-2-12 11:32

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376280 style="FONT-SIZE: 12px"><STRONG>4.尝试连接数据库</STRONG><BR><BR>收到错误信息,无法连接数据库<BR><BR>$ sqlplus "/ as sysdba"<BR><BR>SQL*Plus: Release 9.2.0.3.0 - Production on 星期二 3月 23 14:14:06 2004<BR><BR>Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.<BR><BR>ERROR:<BR><FONT color=red>ORA-12540: TNS: 超出内部限制</FONT><BR><BR><BR>请输入用户名: <BR>ERROR:<BR>ORA-12540: TNS: 超出内部限制<BR><BR><BR>请输入用户名: <BR>ERROR:<BR>ORA-12540: TNS: 超出内部限制<BR><BR><BR>SP2-0157: 在3次尝试之后无法 CONNECT 到 ORACLE, 退出 SQL*Plus<BR><BR><BR><FONT color=red>内部限制超过,通常说明某些系统资源不足.</FONT></SPAN></FONT></P>
<P><FONT face="verdana, arial, helvetica" size=2><BR></FONT></P>

pub!1c 2006-2-12 11:32

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376282 style="FONT-SIZE: 12px"><STRONG>5.检查监听器</STRONG><BR><BR>发现部分连接被拒绝<BR><BR><BR>/export/home1/oracle>lsnrctl services<BR><BR>LSNRCTL for Solaris: Version 9.2.0.3.0 - Production on 23-3月 -2004 14:37:23<BR><BR>Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.<BR><BR>正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))<BR>服务摘要..<BR>服务 "PLSExtProc" 包含 1 个例程。<BR>例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...<BR>处理程序:<BR>"DEDICATED" 已建立:0 已被拒绝:0<BR>LOCAL SERVER<BR>服务 "hswapdb.eygle.com" 包含 2 个例程。<BR>例程 "hswapdb", 状态 UNKNOWN, 包含此服务的 1 个处理程序...<BR>处理程序:<BR>"DEDICATED" 已建立:6 已被拒绝:0<BR>LOCAL SERVER<BR>例程 "hswapdb", 状态 READY, 包含此服务的 1 个处理程序...<BR>处理程序:<BR><FONT color=red>"DEDICATED" 已建立:21 已拒绝:6 状态:ready</FONT><BR>LOCAL SERVER<BR>服务 "hswapdbXDB.eygle.com" 包含 1 个例程。<BR>例程 "hswapdb", 状态 READY, 包含此服务的 1 个处理程序...<BR>处理程序:<BR>"D000" 已建立:0 已被拒绝:0 当前: 0 最大: 972 状态: ready<BR>DISPATCHER <machine: wapplatform, pid: 25839><BR>(ADDRESS=(PROTOCOL=tcp)(HOST=wapplatform)(PORT=32869))<BR>命令执行成功</SPAN></FONT></P>

pub!1c 2006-2-12 11:33

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376288 style="FONT-SIZE: 12px"><STRONG>6.退出Oracle用户检查</STRONG><BR><BR>检查系统日志信息,发现大量失败的su操作<BR>有swap区不足的报告<BR><BR>/export/home1/oracle/admin/hswapdb/bdump>exit<BR>wapplatform:/>dmesg<BR><BR>2004年03月23日 星期二 14时00分32秒 CST<BR>Mar 22 22:52:36 wapplatform elfexec: [ID 700856 kern.notice] ps: Cannot find ^?ELF^A^B^A<BR>Mar 22 22:53:00 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 22:53:09 wapplatform elfexec: [ID 700856 kern.notice] w: Cannot find ^?ELF^A^B^A<BR>Mar 22 22:53:53 wapplatform last message repeated 4 times<BR>Mar 22 22:56:28 wapplatform elfexec: [ID 700856 kern.notice] ipnat: Cannot find ^?ELF^B^B^A<BR>Mar 22 22:58:00 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 22:59:54 wapplatform elfexec: [ID 700856 kern.notice] ipnat: Cannot find ^?ELF^B^B^A<BR>Mar 22 23:02:26 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 23:03:00 wapplatform last message repeated 1 time<BR>Mar 22 23:08:00 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 23:08:34 wapplatform elfexec: [ID 700856 kern.notice] ipnat: Cannot find ^?ELF^B^B^A<BR>Mar 22 23:10:27 wapplatform last message repeated 3 times<BR>Mar 22 23:11:49 wapplatform elfexec: [ID 700856 kern.notice] ipnat: Cannot find ^?ELF^B^B^A<BR>Mar 22 23:11:52 wapplatform last message repeated 1 time<BR>Mar 22 23:13:01 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 23:18:01 wapplatform last message repeated 1 time<BR>Mar 22 23:23:01 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 23:28:01 wapplatform last message repeated 1 time<BR>Mar 22 23:33:01 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 23:38:01 wapplatform last message repeated 1 time<BR>Mar 22 23:43:01 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 23:48:01 wapplatform last message repeated 1 time<BR>Mar 22 23:53:01 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 22 23:58:01 wapplatform last message repeated 1 time<BR>Mar 23 00:00:00 wapplatform ufs: [ID 213553 kern.notice] NOTICE: realloccg /export/home1: file system full<BR>Mar 23 00:00:00 wapplatform sendmail[3075]: [ID 702911 mail.crit] My unqualified host name (wapplatform) unknown; sleeping <BR><BR>for retry<BR>Mar 23 00:01:00 wapplatform sendmail[3075]: [ID 702911 mail.alert] unable to qualify my own domain name (wapplatform) -- <BR><BR>using short name<BR>Mar 23 00:02:36 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 23 00:03:02 wapplatform last message repeated 1 time<BR>Mar 23 00:08:02 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>....<BR><BR>Mar 23 10:18:15 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 23 10:20:41 wapplatform ufs: [ID 213553 kern.notice] NOTICE: realloccg /export/home1: file system full<BR>Mar 23 10:20:47 wapplatform last message repeated 1 time<BR>Mar 23 10:23:15 wapplatform ufs: [ID 845546 kern.notice] NOTICE: alloc: /export/home1: file system full<BR>Mar 23 10:24:38 wapplatform ufs: [ID 213553 kern.notice] NOTICE: realloccg /export/home1: file system full<BR>Mar 23 10:24:43 wapplatform last message repeated 1 time<BR>Mar 23 10:24:55 wapplatform ufs: [ID 213553 kern.notice] NOTICE: realloccg /export/home1: file system full<BR>Mar 23 10:25:06 wapplatform last message repeated 2 times<BR>Mar 23 11:09:31 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3118 (su)<BR>Mar 23 11:09:39 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3121 (su)<BR>Mar 23 11:10:48 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3137 (su)<BR>Mar 23 11:18:02 wapplatform sshd[3620]: [ID 800047 auth.error] error: grantpt: Not enough space<BR>Mar 23 11:18:02 wapplatform sshd[3620]: [ID 800047 auth.error] error: session_pty_req: session 0 alloc failed<BR>Mar 23 11:18:43 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3636 (su)<BR>Mar 23 11:19:47 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3672 (su)<BR>Mar 23 11:20:20 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3694 (su)<BR>Mar 23 11:22:23 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3736 (sshd)<BR>Mar 23 11:23:17 wapplatform tmpfs: [ID 518458 kern.warning] WARNING: /tmp: File system full, swap space limit exceeded<BR>Mar 23 11:23:40 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3804 (su)<BR>Mar 23 11:23:40 wapplatform last message repeated 8 times<BR>Mar 23 11:23:56 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3806 (ps)<BR>Mar 23 11:23:56 wapplatform last message repeated 12 times<BR>Mar 23 11:24:01 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 3808 (w)<BR>Mar 23 11:24:01 wapplatform last message repeated 8 times<BR>Mar 23 13:40:56 wapplatform su: [ID 810491 auth.crit] 'su root' failed for root on /dev/pts/2<BR>Mar 23 13:46:26 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 24888 <BR><BR>(sqlplus)<BR><FONT color=red>Mar 23 13:49:18 wapplatform su: [ID 810491 auth.crit] 'su oracle' failed for root on /dev/pts/6<BR>Mar 23 13:54:03 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 25035 (su)<BR>Mar 23 13:54:08 wapplatform genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid 25036 (su)<BR></FONT><BR><BR>现在基本可以判断是交换区的问题,当然和Oracle SGA设置有关.</SPAN></FONT></P>
<P><FONT face="verdana, arial, helvetica" size=2><BR></FONT></P>

pub!1c 2006-2-12 11:33

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376293 style="FONT-SIZE: 12px"><STRONG>7.检查系统内存及交换区使用</STRONG><BR><BR>$ top<BR><BR>last pid: 25456; load averages: 0.67, 0.70, 0.69 <BR><BR>14:10:03<BR>93 processes: 91 sleeping, 2 on cpu<BR>CPU states: 72.7% idle, 14.9% user, 2.7% kernel, 9.7% iowait, 0.0% swap<BR><FONT color=red>Memory: 1024M real, 34M free, 752M swap in use, 10M swap free</FONT><BR><BR>PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND<BR>25199 oracle 1 40 0 674M 631M cpu/2 8:03 16.32% oracle<BR>25209 oracle 1 30 0 675M 630M sleep 0:03 0.13% oracle<BR>25159 oracle 1 48 0 674M 628M sleep 0:03 0.06% oracle<BR>25384 oracle 1 58 0 2632K 1736K cpu/0 0:01 0.05% top<BR>25145 oracle 143 58 0 682M 630M sleep 0:01 0.03% oracle<BR>25446 oracle 1 58 0 674M 628M sleep 0:00 0.03% oracle<BR>25149 oracle 15 58 0 682M 626M sleep 0:00 0.02% oracle<BR>25075 oracle 1 48 0 17M 7208K sleep 0:00 0.01% tnslsnr<BR>25151 oracle 11 58 0 676M 624M sleep 0:00 0.01% oracle<BR>25366 oracle 1 10 0 674M 628M sleep 0:00 0.00% oracle<BR>25356 oracle 1 18 0 674M 628M sleep 0:00 0.00% oracle<BR>25360 oracle 1 20 0 674M 628M sleep 0:00 0.00% oracle<BR>25364 oracle 1 20 0 674M 628M sleep 0:00 0.00% oracle<BR>25362 oracle 1 20 0 674M 628M sleep 0:00 0.00% oracle<BR>25330 oracle 1 28 0 674M 628M sleep 0:00 0.00% oracle<BR><BR><BR>发现物理内存仅为1G,free部分为34M,交换区使用了752M,仅10M free<BR>系统内存严重不足,Swap区不足</SPAN></FONT></P>

pub!1c 2006-2-12 11:36

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376296 style="FONT-SIZE: 12px"><STRONG>8. 检查数据库的SGA设置<BR></STRONG><BR>发现SGA设置为: 622299344 bytes<BR>接近600M<BR><BR>wapplatform:/>su - oracle<BR>Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001<BR>You have new mail.<BR>/export/home1/oracle>sqlplus "/ as sysdba"<BR><BR>SQL*Plus: Release 9.2.0.3.0 - Production on 星期二 3月 23 14:02:30 2004<BR><BR>Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.<BR><BR><BR>连接到: <BR>Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production<BR>With the Partitioning, OLAP and Oracle Data Mining options<BR>JServer Release 9.2.0.3.0 - Production<BR><BR>SQL> show sga<BR><BR>Total System Global Area 622299344 bytes<BR>Fixed Size 731344 bytes<BR>Variable Size 268435456 bytes<BR>Database Buffers 352321536 bytes<BR>Redo Buffers 811008 bytes<BR>SQL> <BR><BR><FONT color=red>对于RAM小于1G的系统,Dedicated模式下,Oracle的SGA一般不应超过1/2物理内存.</FONT></SPAN></FONT></P>
<P><FONT face="verdana, arial, helvetica" size=2><BR></FONT></P>

pub!1c 2006-2-12 11:36

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java id=text1376303 style="FONT-SIZE: 12px" script><STRONG>9.第一步调整<BR></STRONG>减小SGA,为系统保留足够的内存.<BR><BR><STRONG>10.增加swap区<BR></STRONG><BR>wapplatform:/>df -k<BR>文件系统 千字节 用了 可用 容量 挂接在<BR>/dev/dsk/c0t1d0s0 3099093 105421 2931691 4% /<BR>/dev/dsk/c0t2d0s0 10325760 8359637 1862866 82% /usr<BR>/proc 0 0 0 0% /proc<BR>fd 0 0 0 0% /dev/fd<BR>mnttab 0 0 0 0% /etc/mnttab<BR>/dev/dsk/c0t1d0s3 1018382 285914 671366 30% /var<BR>swap 3904 24 3880 1% /var/run<BR>swap 3936 56 3880 2% /tmp<BR>/dev/dsk/c0t1d0s5 1671823 459202 1162467 29% /opt<BR>/dev/dsk/c0t2d0s7 7087473 6068462 948137 87% /export/home<BR>/dev/dsk/c2t1d0s7 17413250 15900222 1338896 93% /export/home2<BR>/dev/dsk/c0t3d0s7 17413250 13749782 3489336 80% /export/home1<BR>/dev/dsk/c0t1d0s1 771110 382410 334723 54% /usr/openwin<BR>/export/home/wapgw/luke<BR>7087473 6068462 948137 87% /home/wap<BR><BR>wapplatform:/var/swap>cd /export/home1<BR>wapplatform:/export/home1>ls<BR>TT_DB lost+found oracle oracli9<BR>wapplatform:/export/home1>mkdir swap<BR>wapplatform:/export/home1>cd swap<BR><FONT color=red>wapplatform:/export/home1/swap>mkfile -v 1g swapfile1</FONT><BR>swapfile1 1073741824 bytes<BR>wapplatform:/export/home1/swap>id<BR>uid=0(root) gid=1(other)<BR><FONT color=red>wapplatform:/export/home1/swap>swap -a /export/home1/swap/swapfile1</FONT><BR>wapplatform:/export/home1/swap>swap -s<BR>总数:分配了 623160k 字节 + 保留 162704k = 已使用 785864k,1010936k 可用</SPAN></FONT></P>

pub!1c 2006-2-12 11:36

<P><FONT face="verdana, arial, helvetica" size=2><SPAN class=java script id=text1376310 style="FONT-SIZE: 12px"><STRONG>11.连接测试</STRONG><BR><BR>系统恢复正常,问题解决<BR><BR>wapplatform:/export/home1/swap>su - oracle<BR>Sun Microsystems Inc. SunOS 5.8 Generic Patch October 2001<BR>You have new mail.<BR>/export/home1/oracle>sqlplus "/ as sysdba"<BR><BR>SQL*Plus: Release 9.2.0.3.0 - Production on 星期四 3月 25 11:56:28 2004<BR><BR>Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.<BR><BR><BR>连接到: <BR>Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production<BR>With the Partitioning, OLAP and Oracle Data Mining options<BR>JServer Release 9.2.0.3.0 - Production<BR><BR>SQL> exit<BR>从Oracle9i Enterprise Edition Release 9.2.0.3.0 - 64bit Production<BR>With the Partitioning, OLAP and Oracle Data Mining options<BR>JServer Release 9.2.0.3.0 - Production中断开<BR>/export/home1/oracle>top<BR><BR>last pid: 5372; load averages: 0.25, 0.22, 0.29 <BR><BR>11:57:58<BR>148 processes: 137 sleeping, 9 zombie, 2 on cpu<BR>CPU states: 98.8% idle, 0.2% user, 0.7% kernel, 0.2% iowait, 0.0% swap<BR>Memory: 1024M real, 17M free, 824M swap in use, 934M swap free<BR><BR>PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND<BR>5363 root 1 58 0 2680K 1736K sleep 0:00 0.24% top<BR>5370 oracle 1 58 0 514M 469M sleep 0:00 0.18% oracle<BR>5366 oracle 1 28 0 514M 469M sleep 0:00 0.11% oracle<BR>5341 oracle 1 58 0 2680K 1736K cpu/2 0:00 0.10% top<BR>5372 oracle 1 48 0 61M 3288K cpu/3 0:00 0.06% oracle<BR>1288 oracle 1 48 0 514M 468M sleep 5:33 0.05% oracle<BR>607 root 12 48 0 2768K 2312K sleep 1:48 0.03% mibiisa<BR>25075 oracle 1 48 0 17M 7208K sleep 0:16 0.02% tnslsnr<BR>1278 oracle 15 58 0 522M 466M sleep 0:49 0.02% oracle<BR>374 root 11 53 0 3504K 2888K sleep 0:16 0.01% nscd<BR>1280 oracle 19 58 0 518M 466M sleep 0:28 0.00% oracle<BR>5361 root 1 46 0 1024K 680K sleep 0:00 0.00% sleep<BR>5362 root 1 46 0 1024K 680K sleep 0:00 0.00% sleep<BR>5469 root 1 36 0 1952K 1176K sleep 30:09 0.00% monithttp<BR>4167 oracle 1 40 0 515M 471M sleep 29:38 0.00% oracle</SPAN></FONT></P>
<P><FONT face="verdana, arial, helvetica" size=2><BR></FONT></P>

pub!1c 2006-2-12 11:38

[b]问题总结:[/b]

Oracle数据库问题的解决从来就离不开操作系统

很多时候我们必须通过操作系统一级的手段来诊断并解决问题.

关于操作系统

一般Swap区的推荐值为2XRAM
如果Ram很大,不一定非要把Swap设置为2xSwap
但是通常至少设置Swap = Ram

如果Swap区过小,在系统繁忙期间
产生大量交换无法换到磁盘,就会出现问题.
如本案例就是这样。

另外,如果系统Ram较小
通常设置SGA < 1/2 Ram

要为Server process及OS保留足够的内存空间.

页: [1]
© 1999-2008 EvilOctal Security Team