[size=medium][b]1。用Statspack生成Report。[/b][/size]
$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执行的性能情况
[size=medium][b]2。调查SQL执行的LOCK情况[/b][/size]
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
[size=medium][b]3。修改Oracle最大连接数的方法[/b][/size]
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)
[size=medium][b]4。调整参数[/b][/size]
我们仅以流行的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的参数
$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执行的性能情况
[size=medium][b]2。调查SQL执行的LOCK情况[/b][/size]
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
[size=medium][b]3。修改Oracle最大连接数的方法[/b][/size]
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)
[size=medium][b]4。调整参数[/b][/size]
我们仅以流行的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数据库性能调优的实用方法,包括如何使用Statspack生成报告、调查SQL执行的锁情况、修改最大连接数及调整关键参数等。适合希望提高Oracle数据库性能的DBA和技术人员参考。
267

被折叠的 条评论
为什么被折叠?



