Oralce性能问题调查相关

1。用Statspack生成Report。
$su - oracle 
$sqlplus perfstat/perfstat
>execute statspack.snap(i_snap_level=>7); #snapshot作成
>@$ORACLE_HOME/rdbms/admin/spreport
Enter value for begin_snap: 输入开始的snapshot编号
Enter value for end_snap: 输入结束的snapshot编号

report文件名指定,直接Enter,使用默认文件名。

>@$ORACLE_HOME/rdbms/admin/spresql
输入old hash值 调查具体某条SQL执行的性能情况

2。调查SQL执行的LOCK情况
SELECT
s.SID, d.OBJECT_NAME, s.OSUSER, s.PROGRAM
FROM
   v$LOCKED_OBJECT l
, DBA_OBJECTS d
, v$SESSION s
WHERE
     (l.OBJECT_ID  = d.OBJECT_ID(+))
AND (l.SESSION_ID = s.SID(+))
ORDER BY
s.SID, d.OBJECT_NAME

3。修改Oracle最大连接数的方法  
   a、以sysdba身份登陆PL/SQL 或者 Worksheet
   b、查询目前连接数
      show parameter processes;
   c、更改系统连接数
      alter system set processes=1000 scope=spfile;
   d、创建pfile
      create pfile from spfile;
   e、重启Oracle服务或重启Oracle服务器
    (sqlplus /nolog
    conn / as sysdba
    shutdown immediate
    startup)

4。调整参数
我们仅以流行的4GB内存,32位系统为例:

增大系统全局区:
SQL> alter system set sga_max_size=1200m scope=spfile;

增大数据缓存区:
SQL> alter system set db_cache_size=700m scope=spfile;

增大共享内存区:
SQL> alter system set shared_pool_size=320m scope=spfile;

增大程序全局区:
SQL> alter system set pga_aggregate_target=500m scope=spfile;

增大排序区:
SQL> alter system set sort_area_size=30000000 scope=spfile;

增加连接数量:
SQL> alter system set processes=600 scope=spfile;

查看参数:
show parameters 查看所有参数
show parameters db 查看所有名称带db的参数
show parameters log 查看所有名称带log的参数

你可能感兴趣的:(oracle,sql,C++,c,cache)