Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Statistik IO File Kinerja SQL Server

Hai,

Statistik Disk IO sangat penting untuk kriteria Kinerja SQL Server.

Setiap transaksi di SQL Server membuat IO untuk membawa data dari disk fisik ke buffer dan sebaliknya ketika Transaksi selesai, semua data terkait akan ditransfer dari buffer ke disk fisik.

Jadi kecepatan Disk dan statistik IO sangat penting untuk kriteria Performa.

Untuk melihat statistik IO dan informasi berikut, Anda dapat menjalankan skrip di bawah ini.

  • Nama mesin
  • Nama instance
  • Nama SQL Server
  • Nama basis data
  • Nama logis
  • Nama fisik
  • Disk drive
  • Jenis berkas
  • Negara Bagian
  • Ukuran pada disk
  • Pertumbuhan
  • Jumlah bacaan
  • Jumlah tulisan
  • IO_stall_read_ms
  • IO_stall_write_ms

select 
serverproperty('MachineName') 'machine_name'
,isnull(serverproperty('InstanceName'),'mssqlserver') 'instance_name'
,@@SERVERNAME 'sql_server_name'
,DB_NAME(mf.database_id) 'database_name'
,mf.name 'logical_name'
,mf.physical_name 'physical_name'
,left(mf.physical_name,1) 'disk_drive'
,mf.type_desc 'file_type'
,mf.state_desc 'state'
,case mf.is_read_only
when 0 then 'no'
when 1 then 'yes'
end 'read_only'
,convert(numeric(18,2),convert(numeric,mf.size)*8/1024) 'size_mb'
,divfs.size_on_disk_bytes/1024/1024 'size_on_disk_mb'
,case mf.is_percent_growth
when 0 then cast(convert(int,convert(numeric,mf.growth)*8/1024) as varchar) + ' MB'
when 1 then cast(mf.growth as varchar) + '%'
end 'growth'
,case mf.is_percent_growth
when 0 then convert(numeric(18,2),convert(numeric,mf.growth)*8/1024)
when 1 then convert(numeric(18,2),(convert(numeric,mf.size)*mf.growth/100)*8/1024)
end 'next_growth_mb'
,case mf.max_size
when 0 then 'NO-growth'
when -1 then (case mf.growth when 0 then 'NO-growth' else 'unlimited' end)
else cast(convert(int,convert(numeric,mf.max_size)*8/1024) as varchar)+' MB'
end 'max_size'

,divfs.num_of_reads
,divfs.num_of_bytes_read/1024/1024 'read_mb'
,divfs.io_stall_read_ms

,divfs.num_of_writes
,divfs.num_of_bytes_written/1024/1024 'write_mb'
,divfs.io_stall_write_ms

from sys.master_files as mf
left outer join sys.dm_io_virtual_file_stats(null,null) as divfs
on mf.database_id=divfs.database_id and mf.file_id=divfs.file_id;




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Peningkatan Layanan Broker di SQL Server 2016

  2. Apakah kode ini mencegah injeksi SQL?

  3. Dapatkan tanggal mulai minggu dan tanggal akhir minggu dari nomor minggu

  4. Cara terbaik untuk melakukan logika pernyataan kasus bersarang di SQL Server

  5. Menggunakan Peringatan dan Operator di SQL Server