Вы находитесь на странице: 1из 32

Course Topics

Administering SQL Server 2012 Jump Start


01 | Install and Configure SQL
04 | Manage Data
Server

02 | Maintain Instances and


05 | Implement Security
Databases

03 | Performance Optimization
06 | High Availability Options
and Troubleshooting
Click to edit
Master subtitle
03 | Performance Optimization and style

Troubleshooting

George Squillace | Senior Technical Trainer New Horizons Great


Lakes
Richard Currey | Senior Technical Trainer New Horizons United
Module 3 Overview
Locking, Blocking, and Deadlocks
Profiler
Auditing
Catalog Views and DMOs
Data Collector and the Management Data Warehouse
Topic: Locking, Blocking and
Deadlocks
Topic: Locking, Blocking, and Deadlocks
What Are Locking, Blocking, and Deadlocks?
How Are Locking Problems Discovered and Solved?
What Are Locking, Blocking, and
Deadlocks?
Resource locking is a data integrity mechanism that restricts access to various objects while
under modification and not yet committed
Locking is natural and expected

Examples of lockable resources are:


Key values
Rows
Pages
Tables
Files
Databases

Blocking occurs when one connection is waiting for other connections to release locked
resources
Some blocking is expected
Excessive blocking is undesirable

A deadlock occurs when two connections have locked resources that are seeking each others
locked resources before their respective transactions complete; this results in the termination
of one of the connections
How Are Locking Problems Discovered and
Solved?
Deadlock problems discovered by:
Client error messages
Activity monitor
DMOs
Profiler
Trace flags
Extended Events

Deadlock problems are solved by (OK, minimized by):


Order of objects accessed within queries / sprocs
Keeping transactions short
Isolation level
Avoiding user interaction (data browsing) during transactions
DEMO
Using Activity Monitor to Detect a Blocked
Connection
Topic: Profiler
Topic: Profiler
What Is Tracing?
What Is Profiler?
What Is Tracing?
Tracing permits the recording of a wide range of SQL
Server activity (events within event classes) to files
Sampling of event classes and events
Class 1
Event 1
Event 2
Class 2
Event 3
Event 4

Based on the use of many system stored procedures


What Is Profiler?
Graphical user interface into
the tracing stored procedures
The three legs of the profiler
configuration
Event classes and events
Columns
Filters
Integrate Windows Perfmon
data with profiler data
Simple-Talk eBook on Profiler
DEMO
Using Profiler to Capture a Deadlock Graph
Topic: Auditing
Topic: Auditing
C2 and Common Criteria
Auditing with Triggers
SQL Auditing
C2 and Common Criteria
Older methods
C2, sp_Configure with C2 audit mode
Common criteria, sp_Configure with common criteria
compliance enabled
Much overhead associated with these methods
Auditing with Triggers
DML triggers
Write to a designated audit table on the basis of
modifications
DDL triggers
EventData() function
Login triggers
Trigger limitations
SQL Auditing
What does this feature provide compared to other
types of general auditing methods?
Based on extended events feature
Terminology
Server vs. database
What are the configuration steps?
DEMO
Configuring SQL Auditing
Topic: Catalog Views and DMOs
Topic: Catalog Views and DMOs
Purpose of catalog views and dynamic management
objects (DMOs)
Classification of DMOs
Resources for further exploration
Purpose of Catalog Views and DMOs
What is metadata retrieval?
Metadata retrieval methods that have been available in the
past
GUIobtain information on one object at a time
System Stored Procscant really customize
System Functionsgenerally retrieve information one property at a
time
In more recent versions
Catalog views and DMOs
Standard query language clauses
Can customize columns retrieved
Can customize rows retrieved
Can aggregate and order
Classification of DMOs
DMO (general classification)
sys.dm_ prefix

Dynamic management views


No input accepted
sys.dm_ prefix

Dynamic management functions


Input accepted and often required
sys.dm_ prefix
Resources for Further Exploration
Simple Talk eBook by Louis Davidson and Tim Ford
Tim Fords Periodic Table of Dynamic Management
Objects presentation at PASS SQL Rally May 2012
The Redgate DMV Starter Pack
Quest Poster
DEMO
Querying Dynamic Management Objects
Topic: Data Collector and the
Management Data Warehouse
Topic: Data Collector and the Management Data
Warehouse
Overview of Data Collector
Configuring Data Collector
Consuming Data Collector Data
Overview of Data Collector

Collects capacity planning and performance data


over time
Problem: DMO data isnt persistent
Fact: Troubleshooting is difficult when normal hasnt
been established
Solution: Management Data Warehouse (MDW)
The MDW is created and configured using two wizards
The wizard creates SSIS packages, jobs and schedules to collect
performance planning and capacity data
The MDW accommodates multiple servers
Very useful reports available from the MDW database in
SSMS
Configuring Data Collector

Execute two wizards


Wizard 1: Create the Management Data Warehouse
Wizard 2: Set Up Data Collection
Data to be collected
Frequency of collection
Retention period

Specific database roles exist for management


mdw_Admin
mdw_writer
mdw_reader

Specific database roles exist for configuration


Dc_admin
Dc_operator
Dc_proxy
Consuming Data Collector Data

Reports available in SSMS


Disk usage report
Server activity report
Query statistics report
DEMO
Configuring the Management Data Warehouse
2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered
trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of
Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a
commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT
MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.