10 dmo sql server example

11
10 Contoh Penggunaan DMO ( Dynamic Management Object ) pada SQL Server MABD - D Rahadiyan Danar Aji / 5212100124 INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA

Upload: rahadiyan-danar

Post on 21-Dec-2015

279 views

Category:

Documents


4 download

DESCRIPTION

This is an example for 10 SQL Server DMO .

TRANSCRIPT

Page 1: 10 DMO SQL Server Example

10 Contoh Penggunaan DMO ( Dynamic Management Object ) pada SQL Server MABD - D

Rahadiyan Danar Aji / 5212100124 INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA

Page 2: 10 DMO SQL Server Example

Pendahuluan DMO ( Dynamic Management Object ) merupakan sebuah database view atau function yang

mengembalikan sebuah keadaan informasi yang spesifik untuk database pada waktu tertentu . DMO

memungkinkan seorang DBA ( Database Administrator ) atau developer untuk memantau database

server dalam kontrol yang efisien . DMO me-replace banyak system tabel yang ada pada versi SQL server

lama , namun memberikan DBA untuk lebih banyak metriks untuk diamati .

Pada tugas ini saya akan memberikan 10 contoh penggunaan DMO pada SQL Server versi 2012 ,

maka dari itu sebelumnya saya membuat sebuah table test yang diberi nama ‘DMVTest’ untuk

mencoba-coba fungsi-fungsi DMO . Berikut adalah Query yang saya buat untuk membuat table .

Contoh Penggunaan DMO

SQL Server Operating System Related Dynamic Management Views

sys.dm_os_performance_counters DMO ini adalah berfungsi Untuk melakukan view untuk informasi mengenai statistik performance yang

dimiliki SQL Server . Informasi ini merupakan performance counter yang di display melalui Windows

Performance Monitor .

Untuk melakukan display performance , kita bisa melakukan nya dari SQL server tanpa harus

menjalankan Windows Performance Monitor . Berikut adalah Query yang dilakukan :

Result :

Page 3: 10 DMO SQL Server Example

Query ini akan menghasilkan Buffer Cache Hit Ratio untuk keadaan server pada saat ini . Buffer Cache

Hit Ratio adalah persentase halaman yang diminta oleh SQL Server yang ditemukan dalam memori. Jika

semuanya baik-baik pada server Anda, Anda biasanya akan melihat nilai ini di lebih dari 90%. Jika nilai ini

jauh lebih rendah dari itu, itu berarti bahwa server Anda sedang melakukan disk untuk mengambil

halaman data , dan ini merupakan tanda bahwa server Anda membutuhkan lebih banyak memori .

http://www.techrepublic.com/article/five-useful-dynamic-management-objects-in-sql-server-2005/#

DMV – sys.dm_os_wait_stats Explanation – Wait Type Ini adalah merupakan sebuah fungsi DMV ( Dynamic Management View ) yang membantu untuk

memberikan keadaan Wait stats ( seluruh informasi yang perlu kita tahu mengena Wait Stats ) .

Tipe Spesifikasi dari Wait TImes selama eksekusi query dapat mengindikasikan sebuah keadaan

bottlenecks atau stall points dalam query . Semakin tinggi wait times , atau wait counts server dapat

menunjukkan keadaan bottlenecks atau hot spots , dalam interaksi permintaan dalam sebuah server .

Berikut adalah contoh penggunaan query untuk DMV sys.dm_os_wait_stats :

Result :

http://blog.sqlauthority.com/2011/02/03/sql-server-dmv-sys-dm_os_wait_stats-explanation-wait-

type-day-3-of-28/

Page 4: 10 DMO SQL Server Example

sys.dm_os_windows_info (Transact-SQL)

DMO ini berfungsi untuk menghasilkan informasi mengenai Windows operating system version

information. Berikut adalah Query yang dilakukan :

Result :

https://msdn.microsoft.com/en-us/library/hh204565.aspx

Index Related Dynamic Management Views and Functions

sys.dm_db_index_physical_stats DMO ini berfungsi untuk menampilkan sebuah view untuk informasi mengenai data informasi tentang

indeks data tables and view .

Fungsi menerima lima parameter yaitu : ID Database , ID dari table atau view yang bersangkutan , ID dari

spesifik Index pada table atau view , sejumlah number partisi , dan mode , yang telah di spesifisikan

sebagai 'DETAILED' . . Parameter khusus untuk fungsi ini akan memungkinkan Anda untuk melihat detail

untuk semua indeks di atas Table DMVTest yang telah dibuat sebelumnya . Berikut adalah query yang

dapat kita coba :

Result 1 :

Page 5: 10 DMO SQL Server Example

Dengan menjalankan query diatas pada table yang telah kita buat , kita akan melihat bahwa tidak ada

pages dalam tabel dan juga tidak ada catatan dalam tabel.

Dengan menambahkan catatan ke DMVTest dan rerunning query, Anda dapat melihat bahwa halaman

telah ditambahkan ke table .

Result 2 ( Muncul table DMVTest ):

http://www.techrepublic.com/article/five-useful-dynamic-management-objects-in-sql-server-2005/#

Execution Related Dynamic Management Views and Functions

sys.dm_exec_requests , sys.dm_exec_sessions , sys.dm_exec_sql_text Dalam Execution Related Dynamic Management Views and Functions terdapat 3 sub dmo yaitu

sys.dm_exec_requests , sys.dm_exec_sessions , dan sys.dm_exec_sql_text.

sys.dm_exec_requests: View ini menunjukkan informasi mengenai setiap permintaan yang terjadi di SQL

Server instance. Informasi yang diberikan oleh view ini sangat berguna ketika kita sedang menyelidiki dan

memblokir server .

Page 6: 10 DMO SQL Server Example

sys.dm_exec_sessions: Ini mengembalikan satu baris per sesi yang dikonfirmasi pada SQL Server. View ini

berguna bila kita ingin mengetahui semua pengguna yang terhubung ke server database ( Connected to

database Server ).

sys.dm_exec_sql_text: Ini adalah fungsi manajemen yang dinamis yang mengembalikan pernyataan SQL

Server berdasarkan SQL Handle .

Dari query diatas akan dihasilkan table session, blocking session, program, host, dan the SQL Server

statement yang dieksekusi untuk semua permintaan pengguna saat ini pada database.

http://www.techrepublic.com/article/five-useful-dynamic-management-objects-in-sql-server-2005/#

Execution Related Dynamic Management Views and Functions (Transact-SQL)

sys.dm_exec_connections (Transact-SQL) DMO ini akan berfungsi untuk menampilkan informasi mengenai connection established untuk instanace

dari SQL Server dan detail dari setiap koneksi . Berikut adalah contoh query untuk menampilkan info

connection pada koneksi server kita sendiri ( own connection ) .

Page 7: 10 DMO SQL Server Example

https://msdn.microsoft.com/en-us/library/ms181509.aspx

Common Language Runtime Related Dynamic Management Views (Transact-SQL)

sys.dm_clr_properties (Transact-SQL) DMO ini akan berfungsi untuk menampilkan property yang berhubungan dengan integrasi CLR (

Common Language Runtime ) SQL Server . Termasuk versi dan state hosted CLR . Host CLR diawali

dengan mengeksekusi CREATE ASSEMBLY, ALTER ASSEMBLY, or DROP ASSEMBLY statements, or by

executing any CLR routine, type, or trigger . View dari sys.dm_clr_properties tidak menentukan apakah

eksekusi code CLR pengguna telah diaktifkan pada server

sys.dm_clr_properties view akan berisi mengenai nama dan value sebuah column. Setiap baris di view

mencakup detail tentang properti yang ada pada hosted CLR . Dengan menggunakan view ini akan

dihasilkan CLR install directory, the CLR version, and the current state of the hosted CLR . View ini dapat

membantu Anda menentukan apakah kode integrasi CLR tidak bekerja karena masalah dengan instalasi

CLR di komputer server. Berikut adalah query yang bisa di coba :

Result :

https://msdn.microsoft.com/en-us/library/ms174983.aspx

Execution Related Dynamic Management Views and Functions

sys.dm_exec_background_job_queue_stats (Transact-SQL) DMO ini akan berfungsi untuk menghasilkan sebuah row yang mencakupi sebuah statistik agregat untuk

setiap query processor job yang di submit untuk asynchronous (background) execution.

Page 8: 10 DMO SQL Server Example

Determining the percentage of failed background jobs

Query berikut adalah untuk menghasilkan sebuah presentase failed background jobs untuk semua query

yang di eksekusi

Determining the percentage of failed enqueue attempts

Query berikut adalah untuk menghasilkan sebuah presentase failed enqueue attempts untuk semua

query yang di eksekusi

https://msdn.microsoft.com/en-us/library/ms176059.aspx

sys.dm_exec_procedure_stats (Transact-SQL) DMO ini akan berfungsi untuk menampilkan sebuah statistik performa aggregate untuk cached stored

procedures . View ini memberikan baris untuk setiap cached stored procedure plan , dan lifetime baris

selama ia di simpan dalam store procedure cached . Ketika prosedur yang tersimpan dihapus dari cache,

Page 9: 10 DMO SQL Server Example

baris yang sesuai dihilangkan dari view ini . Pada saat itu, performance Statistik Kinerja SQL trace

dinaikkan mirip dengan sys.dm_exec_query_stats.

Berikut adalah query yang bisa di coba :

Result :

https://msdn.microsoft.com/en-us/library/cc280701.aspx

sys.dm_exec_query_stats (Transact-SQL) DMO ini berfungsi untuk menampilkan sebuah statistik performa agregat mengenai cached query plans

di SQL Server . View ini mencakup 1 row dengan query statement pada cached plan , dan lifetime row

yang terikan pada plan itu sendiri . Ketika plan dihapus dari cache maka baris tersebut akan dikeluarkan

dari view ini .

Page 10: 10 DMO SQL Server Example

Returning row count aggregates for a query

Query berikut adalah untuk menampilkan row count aggregate information (total rows, minimum rows,

maximum rows and last rows) untuk queries.

https://msdn.microsoft.com/en-us/library/ms189741.aspx

SQL Server Operating System Related Dynamic Management Views (Transact-SQL)

sys.dm_os_workers (Transact-SQL) DMO ini adalah berfungsi untuk menampilkan setiap worker yang ada pada system. Berikut adalah

query yang dapat dicoba untuk melihat berapa lama workter telah berjalan pada keadaan SUSPENDED

atau RUNNABLE .

Page 11: 10 DMO SQL Server Example

Result :

https://msdn.microsoft.com/en-us/library/ms178626.aspx