sql >> Database >  >> RDS >> Sqlserver

SQL Server-prestaties TOP IO-query -2

Hallo,

Als u een traagheidsklacht van een klant heeft gekregen, moet u de SQL Server-instantie en database controleren welke sql veel bronnen gebruikt.

SQL Server DBA moet de database elke keer controleren en als er veel sqls zijn die een lange uitvoeringstijd hebben of veel IO-bronnen verbruiken, moet dit worden gerapporteerd aan de ontwikkelaar en ontwikkelaar en moet dba deze sqls onderzoeken.

U kunt TOP 50 IO-query's vinden in de SQL Server-database met de volgende query.

select 
    q.[text],
SUBSTRING(q.text, (highest_cpu_queries.statement_start_offset/2)+1, 
        ((CASE highest_cpu_queries.statement_end_offset
          WHEN -1 THEN DATALENGTH(q.text)
         ELSE highest_cpu_queries.statement_end_offset
         END - highest_cpu_queries.statement_start_offset)/2) + 1) AS statement_text,    
    
    highest_cpu_queries.total_worker_time,
    highest_cpu_queries.total_logical_reads,
	highest_cpu_queries.last_execution_time,
    highest_cpu_queries.execution_count,
    q.dbid,
    q.objectid,
    q.number,
    q.encrypted,
     highest_cpu_queries.plan_handle
from 
    (select top 50 
          qs.last_execution_time,
          qs.execution_count,
        qs.plan_handle, 
        qs.total_worker_time,
        qs.statement_start_offset,
        qs.statement_end_offset,
        qs.total_logical_reads
    from 
        sys.dm_exec_query_stats qs
    order by qs.total_worker_time desc) as highest_cpu_queries
    cross apply sys.dm_exec_sql_text(plan_handle) as q
order by highest_cpu_queries.total_logical_reads desc;


  1. Standaarddatabase met de naam postgres op Postgresql-server

  2. SQLite SUBSTRING() uitgelegd

  3. JSON_MERGE_PATCH() - Voer een RFC 7396-compatibele samenvoeging van JSON-documenten uit in MySQL

  4. Zorg om clausules te kennen:alles over SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY en LIMIT