精华内容
下载资源
问答
  • 7.1 查看sql执行频率show 【session|global】 status;实验一:查询自本次登陆以来的数据库操作,主要关心值的获取mysql> show session status like 'Com_insert%';+-------------------+-------+| Variable_...

    7.1 查看sql的执行频率

    show 【session|global】 status;

    实验一:查询自本次登陆以来的数据库操作,主要关心值的获取

    mysql> show session status like 'Com_insert%';

    +-------------------+-------+

    | Variable_name | Value |

    +-------------------+-------+

    | Com_insert | 0 |

    | Com_insert_select | 0 |

    +-------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show session status like 'Com_select%';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Com_select | 43 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show session status like 'Com_update%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_update | 0 |

    | Com_update_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show session status like 'Com_delete%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_delete | 4 |

    | Com_delete_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    实验二:查询自数据库服务启动以来的数据库操作,主要关心值的获取

    mysql> show global status like 'Com_delete%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_delete | 7 |

    | Com_delete_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show global status like 'Com_insert%';

    +-------------------+-------+

    | Variable_name | Value |

    +-------------------+-------+

    | Com_insert | 8 |

    | Com_insert_select | 7 |

    +-------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show global status like 'Com_update%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_update | 0 |

    | Com_update_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show global status like 'Com_select%';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Com_select | 139 |

    +---------------+-------+

    1 row in set (0.00 sec)

    实验三:查询自数据库innodb引擎的数据库操作,主要关心值的获取的是影响的行数

    mysql> show session status like 'InnoDB_rows%';

    +----------------------+-------+

    | Variable_name | Value |

    +----------------------+-------+

    | Innodb_rows_deleted | 2 |

    | Innodb_rows_inserted | 4 |

    | Innodb_rows_read | 27 |

    | Innodb_rows_updated | 0 |

    +----------------------+-------+

    4 rows in set (0.00 sec)

    mysql> show global status like 'InnoDB_rows%';

    +----------------------+-------+

    | Variable_name | Value |

    +----------------------+-------+

    | Innodb_rows_deleted | 2 |

    | Innodb_rows_inserted | 4 |

    | Innodb_rows_read | 27 |

    | Innodb_rows_updated | 0 |

    +----------------------+-------+

    4 rows in set (0.00 sec)

    实验四:查看数据库的链接次数包含成功与不成功

    mysql> show global status like 'connections';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Connections | 8 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show session status like 'connections';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Connections | 8 |

    +---------------+-------+

    1 row in set (0.00 sec)

    实验五:查看数据库的工作的时间秒数

    mysql> show session status like 'Uptime';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Uptime | 25002 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show global status like 'Uptime';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Uptime | 25014 |

    +---------------+-------+

    1 row in set (0.00 sec)

    实验六:查看数据库的满查询的次数

    mysql> show global status like 'Slow_queries';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Slow_queries | 0 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show session status like 'Slow_queries';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Slow_queries | 0 |

    +---------------+-------+

    1 row in set (0.00 sec)

    展开全文
  • 7.1 查看sql执行频率show 【session|global】 status;实验一:查询自本次登陆以来的数据库操作,主要关心值的获取mysql> show session status like 'Com_insert%';+-------------------+-------+| Variable_...

    7.1 查看sql的执行频率

    show 【session|global】 status;

    实验一:查询自本次登陆以来的数据库操作,主要关心值的获取

    mysql> show session status like 'Com_insert%';

    +-------------------+-------+

    | Variable_name | Value |

    +-------------------+-------+

    | Com_insert | 0 |

    | Com_insert_select | 0 |

    +-------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show session status like 'Com_select%';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Com_select | 43 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show session status like 'Com_update%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_update | 0 |

    | Com_update_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show session status like 'Com_delete%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_delete | 4 |

    | Com_delete_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    实验二:查询自数据库服务启动以来的数据库操作,主要关心值的获取

    mysql> show global status like 'Com_delete%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_delete | 7 |

    | Com_delete_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show global status like 'Com_insert%';

    +-------------------+-------+

    | Variable_name | Value |

    +-------------------+-------+

    | Com_insert | 8 |

    | Com_insert_select | 7 |

    +-------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show global status like 'Com_update%';

    +------------------+-------+

    | Variable_name | Value |

    +------------------+-------+

    | Com_update | 0 |

    | Com_update_multi | 0 |

    +------------------+-------+

    2 rows in set (0.00 sec)

    mysql> show global status like 'Com_select%';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Com_select | 139 |

    +---------------+-------+

    1 row in set (0.00 sec)

    实验三:查询自数据库innodb引擎的数据库操作,主要关心值的获取的是影响的行数

    mysql> show session status like 'InnoDB_rows%';

    +----------------------+-------+

    | Variable_name | Value |

    +----------------------+-------+

    | Innodb_rows_deleted | 2 |

    | Innodb_rows_inserted | 4 |

    | Innodb_rows_read | 27 |

    | Innodb_rows_updated | 0 |

    +----------------------+-------+

    4 rows in set (0.00 sec)

    mysql> show global status like 'InnoDB_rows%';

    +----------------------+-------+

    | Variable_name | Value |

    +----------------------+-------+

    | Innodb_rows_deleted | 2 |

    | Innodb_rows_inserted | 4 |

    | Innodb_rows_read | 27 |

    | Innodb_rows_updated | 0 |

    +----------------------+-------+

    4 rows in set (0.00 sec)

    实验四:查看数据库的链接次数包含成功与不成功

    mysql> show global status like 'connections';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Connections | 8 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show session status like 'connections';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Connections | 8 |

    +---------------+-------+

    1 row in set (0.00 sec)

    实验五:查看数据库的工作的时间秒数

    mysql> show session status like 'Uptime';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Uptime | 25002 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show global status like 'Uptime';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Uptime | 25014 |

    +---------------+-------+

    1 row in set (0.00 sec)

    实验六:查看数据库的满查询的次数

    mysql> show global status like 'Slow_queries';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Slow_queries | 0 |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> show session status like 'Slow_queries';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Slow_queries | 0 |

    +---------------+-------+

    1 row in set (0.00 sec)

    展开全文
  • QS.execution_count AS '执行次数', QS.total_elapsed_time AS '耗时', QS.total_logical_reads AS '逻辑读取次数', QS.total_logical_writes AS '逻辑写入次数', QS.total_physical_reads AS '物理读取次数', ...
    SELECT TOP 1000
           ST.text AS '执行的SQL语句',
           QS.execution_count AS '执行次数',
           QS.total_elapsed_time AS '耗时',
           QS.total_logical_reads AS '逻辑读取次数',
           QS.total_logical_writes AS '逻辑写入次数',
           QS.total_physical_reads AS '物理读取次数',       
           QS.creation_time AS '执行时间' ,  
           QS.*
    FROM   sys.dm_exec_query_stats QS
           CROSS APPLY
    sys.dm_exec_sql_text(QS.sql_handle) ST
    WHERE  QS.creation_time >'2020-08-18'
    ORDER BY
         QS.total_elapsed_time DESC
    
    
    
    
    

    展开全文
  • ORACLE查看SQL执行次数/频率

    千次阅读 2016-04-26 11:54:04
    在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易...

         在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易遭遇一些并发性的问题。

    那么如何查看ORACLE数据库某个SQL的执行频率/次数呢? 有哪些途径方法呢?

     

    方法1: 通过查询V$SQLAREA或V$SQL的EXECUTIONS来查看SQL的执行次数,但是这个值的有效性需要结合FIRST_LOAD_TIME来判 断。因为V$SQLAREA或V$SQL中不保存历史数据,具有一定的时效性,所以如果要查询很久以前的某个SQL执行次数是办不到的。

    关于V$SQLAREA

            FIRST_LOAD_TIME        VARCHAR2(19)       Timestamp of the parent creation time

            EXECUTIONS             NUMBER             Total number of executions, totalled over all the child cursors

     

    如下所示,我们通过一个例子来演示如何查询一个语句的执行次数。

    SQL> COL  START_TIME FOR A20;
    SQL> SELECT TO_CHAR(sysdate,'YYYY-MM-DD HH24:MI:SS') AS START_TIME FROM DUAL;
     
    START_TIME
    --------------------
    2014-11-20 13:51:21
     
    SQL> 
    SQL> SELECT SQL_ID, SQL_TEXT,FIRST_LOAD_TIME, EXECUTIONS
      2  FROM V$SQLAREA
      3  WHERE SQL_TEXT LIKE '%SELECT * FROM TEST%';
     
    SQL_ID                 SQL_TEXT                   RST_LOAD_TIME    EXECUTIONS
    ----------- -------------------------------------- ---------------- ----------
     
    SQL> SELECT * FROM TEST;
     
             ID NAME
    ----------- ----------
     
    SQL> 
    SQL> SELECT SQL_ID, SQL_TEXT,FIRST_LOAD_TIME, EXECUTIONS
      2  FROM V$SQLAREA
      3  WHERE SQL_TEXT LIKE '%SELECT * FROM TEST%';
     
    SQL_ID                SQL_TEXT                   FIRST_LOAD_TIME    EXECUTIONS
    ----------- -------------------------------------- ---------------- --------------
    4ntr8ag38ujwd  SELECT * FROM TEST                  2014-11-20/13:51:40      1
     
    SQL> SELECT * FROM TEST;
     
             ID NAME
    ----------- ----------
     
    SQL> 
    SQL> SELECT SQL_ID, SQL_TEXT,FIRST_LOAD_TIME, EXECUTIONS
      2  FROM V$SQLAREA
      3  WHERE SQL_TEXT LIKE '%SELECT * FROM TEST%';
     
    SQL_ID                SQL_TEXT                 FIRST_LOAD_TIME   EXECUTIONS
    ------------- -------------------------------- ------------------- ----------
    4ntr8ag38ujwd  SELECT * FROM TEST              2014-11-20/13:51:40      2

     

    如果此时清空共享池,那么你会发现V$SQLAREA中对应的SQL的EXECUTIONS次数清零了。

     
    SQL> ALTER SYSTEM FLUSH SHARED_POOL;
     
    System altered
     
    SQL> SELECT * FROM TEST;
     
             ID NAME
    ----------- ----------
     
    SQL> 
    SQL> SELECT SQL_ID, SQL_TEXT,FIRST_LOAD_TIME, EXECUTIONS
      2  FROM V$SQLAREA
      3  WHERE SQL_TEXT LIKE '%SELECT * FROM TEST%';
     
    SQL_ID                SQL_TEXT                    FIRST_LOAD_TIME      EXECUTIONS
    ------------- ----------------------------------- ------------------- ----------
    4ntr8ag38ujwd  SELECT * FROM TEST                2014-11-20/13:52:38     1
     
    SQL> 

    如果要查看某个时间段该SQL语句执行了多少次,那么必须在这两个时间段执行上面SQL语句,两次EXECUTIONS的差值表示这段时间内SQL语句的执行次数。EXECUTIONS是全局的,往往不能查看某个会话或用户执行了多少次。这也是其局限性之一。

     

    方法2:通 过DBA_HIST_SQLSTAT关联DBA_HIST_SNAPSHOT找出某些SQL的执行次数,但是部分快照如果没有捕获到有些SQL。这样也就 无法通过下面SQL语句查看执行次数。也是就说这种方法是有缺陷的。执行越频繁的语句,也越容易被SNAPSHOT抓取到.

    SELECT M.SQL_ID ,
           TO_CHAR(N.BEGIN_INTERVAL_TIME, 'YYYY-MM-DD')   "DATETIME",
           SUM(M.EXECUTIONS_DELTA)  EXECUTIONS
    FROM DBA_HIST_SQLSTAT M, DBA_HIST_SNAPSHOT N
    WHERE M.SNAP_ID  = N.SNAP_ID
      AND M.DBID = N.DBID
      AND M.INSTANCE_NUMBER = N.INSTANCE_NUMBER
      AND M.INSTANCE_NUMBER=1
      AND TO_CHAR(N.BEGIN_INTERVAL_TIME, 'YYYY-MM-DD') ='2014-11-20'
      AND M.SQL_ID=&SQL_ID
    GROUP BY M.SQL_ID , TO_CHAR(N.BEGIN_INTERVAL_TIME, 'YYYY-MM-DD')
    ORDER BY M.SQL_ID

     

    方法3:AWR报告查看某个SQL的执行次数,同上面一样,AWR报告也受SNAPSHOT影响。不一定捕获了你需要查询的SQL

     

    查看当前数据库执行次数最多的SQL,例如,查询执行最频繁的TOP 15的SQL语句。

    SELECT SQL_TEXT, EXECUTIONS
      FROM (SELECT SQL_TEXT,
                   EXECUTIONS,
                   RANK() OVER(ORDER BY EXECUTIONS DESC) EXEC_RANK
              FROM V$SQLAREA)
     WHERE EXEC_RANK <= 15;
    展开全文
  • 在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易...
  • 在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易...
  • 今天老大提出一个需求,想查看数据库存储过程执行次数,以前没有接触过,于是网上找了下,发现还真有! 不废话,贴出来sql语句,直接执行即可看到结果: use master select text,execution_count FROM sys.dm_...
  • 在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易...
  • 在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。 如果执行频繁的SQL,往往容易...
  • 前言在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往...
  • oracle查看执行最慢与查询次数最多的sql语句注:本文来源 于《oracle查看执行最慢与查询次数最多的sql语句》前言在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么...
  • 在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。 如果执行频繁的SQL,往往容易...
  • 在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易...
  • 目前在做一个项目优化时,想通过数据库层分析sql server系统性能,查了一下网上代码,修改了一下标题和DMVs代码,以下代码可以用来分析系统运行一段时间后,那些语句是系统忙的sql语句。做为参考。 另类使用: ...
  • 发现问题1.1 查询慢查询的次数 系统默认慢查询时间为10/s [**意思是该SQL执行时间超过了10/s或者是自己设置的时间**]1.2 查看数据库慢查询时间1.3 设置数据库慢查询时间(global全局)1.4 定位慢查询记录日志步骤...
  • [转]sql server性能分析--执行sql次数和逻辑次数 目前在做一个项目优化时,想通过数据库层分析sql server系统性能,查了一下网上代码,修改了一下标题和DMVs代码,以下代码可以用来分析系统运行一段...
  • sql server性能分析--执行sql次数和逻辑次数http://www.cnblogs.com/zping/archive/2008/07/15/1243367.html 目前在做一个项目优化时,想通过数据库层分析sql server系统性能,查了一下网上代码,修改了一下标题...

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 202
精华内容 80
关键字:

数据库查看sql执行次数