数据库服务器的内存是1G,ORACLE占用400M左右。客户端在操作数据库时,速度很慢.这样的情况一般都会是什么原因?另外,22日时,对修改了数据库中一张表的扩展空间,修改语句如下:
ALTER TABLE tt.table STORAGE ( MAXEXTENTS UNLIMITED);将表的扩展空间修改成无限制,会影响数据库的速度么?谢谢各位先。
ALTER TABLE tt.table STORAGE ( MAXEXTENTS UNLIMITED);将表的扩展空间修改成无限制,会影响数据库的速度么?谢谢各位先。
如果shared_pool_size分配大量内存,则会导致系统性能整体下降厉害。另外,就是有没有根据系统IO吞吐量来设置db_multi_block_read_count。
具体的,就是检查会话等待事件,根据具体等待事件优化SQL等。这么简单的描述怎么会有对症的优化方法呢?ALTER TABLE tt.table STORAGE ( MAXEXTENTS UNLIMITED);
修改这个,不会对性能有太大的提高。如果扩展区已经分配太多的话,则rebuild表,
设计好pctfree,以及initial参数,自动increase可以不配的(9i以上版本默认)。
--看看系统在等待什么东西:
SELECT *
FROM (SELECT EVENT, TOTAL_WAITS
FROM V$SYSTEM_EVENT S
ORDER BY TOTAL_WAITS DESC)
WHERE ROWNUM < 10;
SELECT ADDRESS, SQL_TEXT, buffer_gets, executions, buffer_gets/executions AVG
FROM v$sqlarea
WHERE executions>0 AND buffer_gets > 100000看看是什么原因导致的
开另一个B窗口,执行:
select * from v$session_wait where sid=A窗口的session_id;看看在等待什么还有就是看你的sql执行计划
SELECT /*+ rule */ s.username,
decode(l.type,'TM','TABLE LOCK',
'TX','ROW LOCK',
NULL) LOCK_LEVEL,
o.owner,o.object_name,o.object_type,
s.sid,s.serial#,s.terminal,s.machine,s.program,s.osuser
FROM v$session s,v$lock l,dba_objects o
WHERE l.sid = s.sid
AND l.id1 = o.object_id(+)
AND s.username is NOT NULL