查找性能差的SQL语句
要想优化数据库中性能差的SQL语句,首先我们要把性能差的SQL语句找出来。
下面介绍如果用工具SQL Tuning Expert Pro for Oracle,从SGA和AWR中查找SQL.
一. 从SGA查找
- 打开软件Tosska SQL Tuning Expert Pro for Oracle;
- 连接数据库;
- 点击Advise Indexes 右边的+号;
- 在Extract SQL窗口里,默认从SGA查找SQL.
- 此时可以选择SQL的过滤条件,排序方式和SQL条数。如下图,查找SGA中最慢的100条SQL语句.
- 点击 Extract SQL按钮,SGA中最慢的100条SQL被查询出来了。
- 如果想为查找出来的100条SQL建议最优索引,点击OK按钮;
- 如果想逐条优化查找出来的100条SQL,可以分别选中一条SQL, 单击鼠标右键,选择Copy SQL, 将SQL文本保存到文件中。为在Tune SQL中调优SQL做准备。
二. 从AWR查找
- 打开软件Tosska SQL Tuning Expert Pro for Oracle;
- 连接数据库;
- 点击Advise Indexes 右边的+号;
- 在Extract SQL窗口里,选择从AWR查找SQL. 此时可以选择将哪个时间段的SQL查找出来。如下图,系统在5月14日11:00时CPU非常繁忙,所以我想查找10:00-12:00运行的SQL.
- 点击 Extract SQL按钮,AWR中五月14日10:00 – 12:00 的SQL被查询出来了.
- 如果想为查找出来的100条SQL建议最优索引,点击OK按钮;
如果想逐条优化查找出来的100条SQL,可以分别选中一条SQL, 单击鼠标右键, 选择Copy SQL, 将SQL文本保存到文件中。为在Tune SQL中调优SQL做准备。