oracle如何找出历史中低效的SQL语句?

如果您使用的是oracle 10g,有一个非常简单的方法来检查awr报告。

很简单。您登录到服务器的操作系统,并进入$ORACLE _ HOME/RDBMS/admin目录。然后sqlplus "/as sysdba "登录数据库并执行它。

@ awr RPT . SQL;

然后按照提示一步一步来,注意html的格式(这样你就可以轻松阅读)。最后,您将被要求命名这个文件。

之后可以把文件复制到本地,用IE打开。有非常详细的,包括最严重的SQL在CPU,IO等方面的排名。很好,很厉害。

-

至于检查当前的sql,你可以在v$session中查看某个阻塞了很久的人的session id,然后就可以根据这个session ID从v$text中找到这个sql。

-

清楚了吗?