c/s应用不定期的出现连接数据库极慢的现象,并且不能存储数据。

[复制链接]
查看11 | 回复9 | 2008-1-2 17:35:53 | 显示全部楼层 |阅读模式
操作系统环境:Redhat as5.4 x86 64bit
数据库:oracle10201 for linux 64
内存:8gb
现象:c/s应用不定期的出现连接数据库极慢的现象,并且不能存储数据。重新启动后会好一段时间。请大侠们帮忙分析一下,谢谢!
alter日志中有如下的信息:
Thu May5 04:00:55 2011
Thread 1 advanced to log sequence 44
Current log# 1 seq# 44 mem# 0:/URP/oracle/oradata/jw/redo01.log
Thu May5 09:58:41 2011
Process J000 died, see its trace file
Thu May5 09:58:41 2011
kkjcre1p: unable to spawn jobq slave process
Thu May5 09:58:41 2011
Errors in file /URP/oracle/admin/jw/bdump/jw_cjq0_4450.trc:
Thu May5 10:23:54 2011
Errors in file /URP/oracle/admin/jw/bdump/jw_ora_25341.trc:
ORA-00610: Internal error code
Thu May5 10:23:55 2011
Process J000 died, see its trace file
Thu May5 10:23:55 2011
kkjcre1p: unable to spawn jobq slave process
Thu May5 10:23:55 2011
Errors in file /URP /oracle/admin/jw/bdump/jw_cjq0_4450.trc:

trc文件信息:
cat /URP/oracle/admin/jw/bdump/jw_cjq0_4450.trc
/URP/oracle/admin/jw/bdump/jw_cjq0_4450.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
ORACLE_HOME = /URP/oracle/product/10.2.0/db_1
System name:Linux
Node name:jw
Release:2.6.18-164.el5
Version:#1 SMP Tue Aug 18 15:51:48 EDT 2009
Machine:x86_64
Instance name: jw
Redo thread mounted by this instance: 1
Oracle process number: 11
Unix process pid: 4450, image: oracle@jw (CJQ0)
*** 2011-05-05 09:56:44.973
*** SERVICE NAME

SYS$BACKGROUND) 2011-05-05 09:56:44.973
*** SESSION ID

2196.1) 2011-05-05 09:56:44.973
Waited for process J000 to initialize for 60 seconds
*** 2011-05-05 09:56:44.973
Dumping diagnostic information for J000:
*** 2011-05-05 09:56:58.927
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so...(no debugging symbols found)...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so'
*** 2011-05-05 09:57:16.264
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocr10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocr10.so'
*** 2011-05-05 09:57:28.937
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so'
OS pid = 24936
loadavg : 0.91 0.56 0.33
memory info: free memory = 0.00M
swap info: free = 0.00M alloc = 0.00M total = 0.00M
F S UIDPIDPPIDC PRINI ADDR SZ WCHANSTIME TTY
TIME CMD
0 R oracle 24936 1 9985 0 - 637801 - 09:55 ?00:01:00 ora_j000_jw
(no debugging symbols found)
Attaching to program: /proc/24936/exe, process 24936
skgpgpstack: fgets() timed out after 60 seconds
*** 2011-05-05 09:58:41.954
*** 2011-05-05 09:58:41.954
Process J000 is dead (pid=24936, state=5):
*** 2011-05-05 10:16:30.134
Waited for process J000 to initialize for 60 seconds
*** 2011-05-05 10:16:30.134
Dumping diagnostic information for J000:
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so...(no debugging symbols found)...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocr10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocr10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so'
OS pid = 25261
loadavg : 0.88 0.60 0.44
memory info: free memory = 0.00M
swap info: free = 0.00M alloc = 0.00M total = 0.00M
F S UIDPIDPPIDC PRINI ADDR SZ WCHANSTIME TTY
TIME CMD
0 R oracle 25261 1 9985 0 - 638494 - 10:15 ?00:01:00 ora_j000_jw
(no debugging symbols found)
Attaching to program: /proc/25261/exe, process 25261
skgpgpstack: fgets() timed out after 60 seconds
*** 2011-05-05 10:18:37.131
*** 2011-05-05 10:22:52.606
Waited for process J000 to initialize for 60 seconds
*** 2011-05-05 10:22:52.614
Dumping diagnostic information for J000:
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so...(no debugging symbols found)...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocr10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocr10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so'
*** 2011-05-05 10:23:54.454
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libjox10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libjox10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libclsra10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libclsra10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libdbcfg10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libdbcfg10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libnnz10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libnnz10.so'
skgpgcmdout: read 'Reading symbols from /usr/lib64/libaio.so.1...done.'
skgpgcmdout: read 'Loaded symbols for /usr/lib64/libaio.so.1'
skgpgcmdout: read 'Reading symbols from /lib64/libdl.so.2...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libdl.so.2'
skgpgcmdout: read 'Reading symbols from /lib64/libm.so.6...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libm.so.6'
skgpgcmdout: read 'Reading symbols from /lib64/libpthread.so.0...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libpthread.so.0'
skgpgcmdout: read 'Reading symbols from /lib64/libnsl.so.1...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libnsl.so.1'
skgpgcmdout: read 'Reading symbols from /lib64/libc.so.6...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libc.so.6'
skgpgcmdout: read 'Reading symbols from /lib64/ld-linux-x86-64.so.2...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/ld-linux-x86-64.so.2'
OS pid = 25341
loadavg : 0.91 0.74 0.55
memory info: free memory = 0.00M
swap info: free = 0.00M alloc = 0.00M total = 0.00M
F S UIDPIDPPIDC PRINI ADDR SZ WCHANSTIME TTY
TIME CMD
0 R oracle 25341 1 9985 0 - 34763 -10:21 ?00:01:00 ora_j000_jw
(no debugging symbols found)
Attaching to program: /proc/25341/exe, process 25341
[Thread debugging using libthread_db enabled]
[New Thread 0x2afe5c780c30 (LWP 25341)]
0x0000000003470c49 in slxdfsync ()
#00x0000000003470c49 in slxdfsync ()
#10x000000000343113d in lxlinit ()
#20x0000000000749ef0 in opiinit ()
#30x00000000007103a0 in opimai_real ()
#40x000000000071028c in main ()
The program is running.Quit anyway (and detach it)? (y or n) [answered Y; input not from terminal]
*** 2011-05-05 10:23:54.531
*** 2011-05-05 11:46:30.822
Waited for process J000 to initialize for 60 seconds
*** 2011-05-05 11:46:30.822
Dumping diagnostic information for J000:
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so...(no debugging symbols found)...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxp10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libhasgen10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libskgxn2.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocr10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocr10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrb10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libocrutl10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libjox10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libjox10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libclsra10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libclsra10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libdbcfg10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libdbcfg10.so'
skgpgcmdout: read 'Reading symbols from /URP/oracle/product/10.2.0/db_1/lib/libnnz10.so...done.'
skgpgcmdout: read 'Loaded symbols for /URP/oracle/product/10.2.0/db_1/lib/libnnz10.so'
skgpgcmdout: read 'Reading symbols from /usr/lib64/libaio.so.1...done.'
skgpgcmdout: read 'Loaded symbols for /usr/lib64/libaio.so.1'
skgpgcmdout: read 'Reading symbols from /lib64/libdl.so.2...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libdl.so.2'
skgpgcmdout: read 'Reading symbols from /lib64/libm.so.6...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libm.so.6'
skgpgcmdout: read 'Reading symbols from /lib64/libpthread.so.0...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libpthread.so.0'
skgpgcmdout: read 'Reading symbols from /lib64/libnsl.so.1...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libnsl.so.1'
skgpgcmdout: read 'Reading symbols from /lib64/libc.so.6...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/libc.so.6'
skgpgcmdout: read 'Reading symbols from /lib64/ld-linux-x86-64.so.2...done.'
skgpgcmdout: read 'Loaded symbols for /lib64/ld-linux-x86-64.so.2'
OS pid = 26618
loadavg : 0.96 0.61 0.38
memory info: free memory = 0.00M
swap info: free = 0.00M alloc = 0.00M total = 0.00M
F S UIDPIDPPIDC PRINI ADDR SZ WCHANSTIME TTY
TIME CMD
0 R oracle 26618 1 9985 0 - 34767 -11:45 ?00:01:00 ora_j000_jw
(no debugging symbols found)
Attaching to program: /proc/26618/exe, process 26618
[Thread debugging using libthread_db enabled]
0x000000349e80a715 in _dl_relocate_object ()
from /lib64/ld-linux-x86-64.so.2
#00x000000349e80a715 in _dl_relocate_object ()
from /lib64/ld-linux-x86-64.so.2
#10x000000349e80368b in dl_main () from /lib64/ld-linux-x86-64.so.2
#20x000000349e81334b in _dl_sysdep_start () from /lib64/ld-linux-x86-64.so.2
#30x000000349e801388 in _dl_start () from /lib64/ld-linux-x86-64.so.2
#40x000000349e800a78 in _start () from /lib64/ld-linux-x86-64.so.2
#50x0000000000000001 in ?? ()
#60x00007fffc290fa1e in ?? ()
#70x0000000000000000 in ?? ()
The program is running.Quit anyway (and detach it)? (y or n) [answered Y; input not from terminal]
*** 2011-05-05 11:46:39.470
-bash-3.2$

spfile导出后如下所示
-bash-3.2$ cat pfile12.ora
jw.__db_cache_size=1811939328
jw.__java_pool_size=67108864
jw.__large_pool_size=16777216
jw.__shared_pool_size=553648128
jw.__streams_pool_size=0
*.audit_file_dest='/URP/oracle/admin/jw/adump'
*.background_dump_dest='/URP/oracle/admin/jw/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/URP/oracle/oradata/jw/control01.ctl','/URP/oracle/oradata/jw/control02.ctl','/URP/oracle/oradata/jw/control03.ctl'
*.core_dump_dest='/URP/oracle/admin/jw/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='jw'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=jwXDB)'
*.job_queue_processes=500
*.open_cursors=60000
*.optimizer_features_enable='9.2.0'
*.pga_aggregate_target=819986432
*.processes=2000
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=2461007872
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/URP/oracle/admin/jw/udump'
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
内存耗尽
.open_cursors=60000
.job_queue_processes=500
晕你这个系统跑什么的
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
原来这几个参数都不是这么大 的,是我新修改的
原本
.open_cursors=300
.job_queue_processes=10
这个系统跑一个访问量很小的,客户端就是录入一些数据。
并且我将SGA、pga调大也不行。
[ 本帖最后由 guyeh 于 2011-5-5 12:41 编辑 ]
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
你这情况还调大sga啊,先看看内存被谁占了
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
看看JOB具体做什么的
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
系统物理内存有很大的空闲

SQL> select * from dba_jobs_running;
未选定行
SQL>
[ 本帖最后由 guyeh 于 2011-5-5 13:47 编辑 ]
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
看看内存使用情况
free
或者vmstat看一下
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
memory info: free memory = 0.00M
swap info: free = 0.00M alloc = 0.00M total = 0.00M
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
你不能看正在运行的,现在已经运行完了~得看那JOB具体调的什么操作
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
SQL> select * from user_jobs;
未选定行
SQL> select * from all_jobs;
未选定行
SQL> select * from dba_jobs;

JOB
LOG_USER
PRIV_USER
SCHEMA_USER
LAST_DATE
LAST_SEC
THIS_DATE
THIS_SEC
NEXT_DATE
NEXT_SEC
TOTAL_TIME
BROKEN
INTERVAL
FAILURES
WHAT
NLS_ENV
MISC_ENV
INSTANCE
1
1
SYSMAN
SYSMAN
SYSMAN
2011/5/6 9:50:42
09:50:42
2011/5/6 9:51:42
09:51:42
23769
N
sysdate + 1 / (24 * 60)
0
EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS();
NLS_LANGUAGE='SIMPLIFIED CHINESE' NLS_TERRITORY='CHINA' NLS_CURRENCY='¥' NLS_ISO_CURRENCY='CHINA' NLS_NUMERIC_CHARACTERS='.,' NLS_DATE_FORMAT='DD-MON-RR' NLS_DATE_LANGUAGE='SIMPLIFIED CHINESE' NLS_SORT='BINARY'
0102000000000000
0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行