- Page 3: PROFESSIONAL SQL SERVER® 2012 INTE
- Page 8 and 9: Professional SQL Server® 2012 Inte
- Page 11 and 12: ABOUT THE AUTHORS CHRISTIAN BOLTON
- Page 13: ABOUT THE CONTRIBUTORS MICHAEL ANDE
- Page 16 and 17: papers for Microsoft and posts his
- Page 19 and 20: ACKNOWLEDGMENTS WE ALL HAVE SQL SER
- Page 21 and 22: CONTENTS INTRODUCTION xxix PART I:
- Page 23 and 24: CHAPTER 5: QUERY PROCESSING AND EXE
- Page 25 and 26: Inserts When the Clustered Index Ke
- Page 27 and 28: Gearing Up for Long-Term Data Colle
- Page 29 and 30: System Center Advisor 461 System Ce
- Page 31 and 32: INTRODUCTION IF YOU’RE TROUBLESHO
- Page 33 and 34: Troubleshooting Tools and Lessons f
- Page 35 and 36: Chapter 5: Query Processing and Exe
- Page 37 and 38: INTRODUCTION Chapter 13: Diagnosing
- Page 39 and 40: SOURCE CODE INTRODUCTION As you wor
- Page 41: PART I Internals ⊲ CHAPTER 1: SQL
- Page 44 and 45: 4 ❘ CHAPTER 1 SQL SERVER ARCHITEC
- Page 46 and 47: 6 ❘ CHAPTER 1 SQL SERVER ARCHITEC
- Page 48 and 49: 8 ❘ CHAPTER 1 SQL SERVER ARCHITEC
- Page 50 and 51: 10 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 52 and 53: 12 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 54 and 55: 14 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 56 and 57:
16 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 58 and 59:
18 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 60 and 61:
20 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 62 and 63:
22 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 64 and 65:
24 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 66 and 67:
26 ❘ CHAPTER 1 SQL SERVER ARCHITE
- Page 69 and 70:
2Demystifying Hardware WHAT’S IN
- Page 71 and 72:
OLTP Workloads How Workload Aff ect
- Page 73 and 74:
How Workload Aff ects Hardware and
- Page 75 and 76:
Processor Vendor Selection ❘ 35 G
- Page 77 and 78:
Processor Vendor Selection ❘ 37 c
- Page 79 and 80:
Classic Intel Processor Numbering P
- Page 81 and 82:
Processor Vendor Selection ❘ 41 a
- Page 83 and 84:
Processor Vendor Selection ❘ 43 H
- Page 85 and 86:
2011 32nm 4200, 6200 Valencia, Inte
- Page 87 and 88:
Choosing and Confi guring Hardware
- Page 89 and 90:
Hardware Comparison Tools ❘ 49 TP
- Page 91 and 92:
SUMMARY Summary ❘ 51 As you go th
- Page 93 and 94:
3Understanding Memory WHAT’S IN T
- Page 95 and 96:
Physical and Virtual Memory ❘ 55
- Page 97 and 98:
Virtual Memory Manager Physical and
- Page 99 and 100:
Sizing the Page File Physical and V
- Page 101 and 102:
Physical and Virtual Memory ❘ 61
- Page 103 and 104:
SQL SERVER MEMORY SQL Server Memory
- Page 105 and 106:
Caches SQL Server Memory ❘ 65 SQL
- Page 107 and 108:
SQL Server Memory ❘ 67 NOTE DBCC
- Page 109 and 110:
Memory Grants Pending Memory Grants
- Page 111 and 112:
Each of these options is covered in
- Page 113 and 114:
Optimizing SQL Server Memory Confi
- Page 115 and 116:
For example, recall this script use
- Page 117 and 118:
4Storage Systems WHAT’S IN THIS C
- Page 119 and 120:
Storage Technology ❘ 79 server, i
- Page 121 and 122:
Storage Technology ❘ 81 RAID defi
- Page 123 and 124:
Storage Technology ❘ 83 The stora
- Page 125 and 126:
Block-Based Storage vs. File-Based
- Page 127 and 128:
Storage Technology ❘ 87 his stora
- Page 129 and 130:
Storage Technology ❘ 89 Because t
- Page 131 and 132:
Storage Technology ❘ 91 A hardwar
- Page 133 and 134:
Storage Technology ❘ 93 Several s
- Page 135 and 136:
Measuring Performance ❘ 95 The pr
- Page 137 and 138:
TABLE 4-1: Windows Storage Performa
- Page 139 and 140:
Measuring Performance ❘ 99 A sequ
- Page 141 and 142:
Measuring Performance ❘ 101 64KB
- Page 143 and 144:
Measuring Performance ❘ 103 In SQ
- Page 145 and 146:
Measuring Performance ❘ 105 is ma
- Page 147 and 148:
FIGURE 4-13 Measuring Performance
- Page 149 and 150:
Measuring Performance ❘ 109 This
- Page 151 and 152:
5Query Processing and Execution WHA
- Page 153 and 154:
QUERY OPTIMIZATION Query Optimizati
- Page 155 and 156:
Query Optimization ❘ 115 ➤ the
- Page 157 and 158:
FIGURE 5-3 Query Optimization ❘ 1
- Page 159 and 160:
Query Optimization ❘ 119 compilat
- Page 161 and 162:
Compiled Plan Prepared 20 Compiled
- Page 163 and 164:
select * from sys.dm_exec_plan_attr
- Page 165 and 166:
Query Optimization ❘ 125 To see h
- Page 167 and 168:
Query Optimization ❘ 127 The Phys
- Page 169 and 170:
Plan Guides Query Plans ❘ 129 Pla
- Page 171 and 172:
set showplan_all off go Some of the
- Page 173 and 174:
TABLE 5-1: SQL Server Join Types JO
- Page 175 and 176:
Query Plans ❘ 135 ➤ Seek operat
- Page 177 and 178:
Query Plans ❘ 137 Starting at the
- Page 179 and 180:
Query Plans ❘ 139 When you run th
- Page 181 and 182:
Executing Your Queries ❘ 141 grou
- Page 183 and 184:
Executing Your Queries ❘ 143 whic
- Page 185 and 186:
Tasks Executing Your Queries ❘ 14
- Page 187:
Summary ❘ 147 the initial setup h
- Page 190 and 191:
150 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 192 and 193:
152 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 194 and 195:
154 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 196 and 197:
156 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 198 and 199:
158 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 200 and 201:
160 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 202 and 203:
162 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 204 and 205:
164 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 206 and 207:
166 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 208 and 209:
168 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 210 and 211:
170 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 212 and 213:
172 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 214 and 215:
174 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 216 and 217:
176 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 218 and 219:
178 ❘ CHAPTER 6 LOCKING AND CONCU
- Page 221 and 222:
7Latches and Spinlocks WHAT’S IN
- Page 223 and 224:
In order for spinlock contention to
- Page 225 and 226:
FIGURE 7-5 The sys.dm_os_spinlock_s
- Page 227 and 228:
Understanding Latches and Spinlocks
- Page 229 and 230:
The noteworthy elements for this ex
- Page 231 and 232:
HEADER INFORMATION m_slotCnt=1 m_fr
- Page 233 and 234:
PAGE HEADER: Page @0x00000002F39940
- Page 235 and 236:
NL KP SH UP EX DT Latch Modes ❘ 1
- Page 237 and 238:
Latch Modes ❘ 197 fi rst latch in
- Page 239 and 240:
FIGURE 7-18 Monitoring Latches and
- Page 241 and 242:
Monitoring Latches and Spinlocks
- Page 243 and 244:
Latch Contention Examples ❘ 203 N
- Page 245 and 246:
Latch Contention Examples ❘ 205 O
- Page 247 and 248:
Latch Contention Examples ❘ 207 P
- Page 249:
Summary ❘ 209 The storage used by
- Page 252 and 253:
212 ❘ CHAPTER 8 KNOWING TEMPDB Th
- Page 254 and 255:
214 ❘ CHAPTER 8 KNOWING TEMPDB A
- Page 256 and 257:
216 ❘ CHAPTER 8 KNOWING TEMPDB TA
- Page 258 and 259:
218 ❘ CHAPTER 8 KNOWING TEMPDB Th
- Page 260 and 261:
220 ❘ CHAPTER 8 KNOWING TEMPDB FI
- Page 262 and 263:
222 ❘ CHAPTER 8 KNOWING TEMPDB Th
- Page 264 and 265:
224 ❘ CHAPTER 8 KNOWING TEMPDB SE
- Page 266 and 267:
226 ❘ CHAPTER 8 KNOWING TEMPDB GO
- Page 268 and 269:
228 ❘ CHAPTER 8 KNOWING TEMPDB GO
- Page 270 and 271:
230 ❘ CHAPTER 8 KNOWING TEMPDB
- Page 272 and 273:
232 ❘ CHAPTER 8 KNOWING TEMPDB sy
- Page 274 and 275:
234 ❘ CHAPTER 8 KNOWING TEMPDB ex
- Page 276 and 277:
236 ❘ CHAPTER 8 KNOWING TEMPDB If
- Page 278 and 279:
238 ❘ CHAPTER 8 KNOWING TEMPDB Th
- Page 281 and 282:
9Troubleshooting Methodology and Pr
- Page 283 and 284:
Approaching Problems ❘ 243 versus
- Page 285 and 286:
Success Criteria Approaching Proble
- Page 287 and 288:
Engaging External Help Approaching
- Page 289 and 290:
Defi ning the Problem ❘ 249 ➤ U
- Page 291 and 292:
Defi ning the Problem ❘ 251 In ma
- Page 293 and 294:
Focused Data Collection Data Collec
- Page 295 and 296:
Data Analysis ❘ 255 ➤ Managemen
- Page 297:
Implementing Resolution Summary ❘
- Page 300 and 301:
260 ❘ CHAPTER 10 VIEWING SERVER P
- Page 302 and 303:
262 ❘ CHAPTER 10 VIEWING SERVER P
- Page 304 and 305:
264 ❘ CHAPTER 10 VIEWING SERVER P
- Page 306 and 307:
266 ❘ CHAPTER 10 VIEWING SERVER P
- Page 308 and 309:
268 ❘ CHAPTER 10 VIEWING SERVER P
- Page 310 and 311:
270 ❘ CHAPTER 10 VIEWING SERVER P
- Page 312 and 313:
272 ❘ CHAPTER 10 VIEWING SERVER P
- Page 314 and 315:
274 ❘ CHAPTER 10 VIEWING SERVER P
- Page 316 and 317:
276 ❘ CHAPTER 10 VIEWING SERVER P
- Page 318 and 319:
278 ❘ CHAPTER 10 VIEWING SERVER P
- Page 320 and 321:
280 ❘ CHAPTER 10 VIEWING SERVER P
- Page 322 and 323:
282 ❘ CHAPTER 10 VIEWING SERVER P
- Page 324 and 325:
284 ❘ CHAPTER 10 VIEWING SERVER P
- Page 326 and 327:
286 ❘ CHAPTER 10 VIEWING SERVER P
- Page 328 and 329:
288 ❘ CHAPTER 10 VIEWING SERVER P
- Page 330 and 331:
290 ❘ CHAPTER 10 VIEWING SERVER P
- Page 332 and 333:
292 ❘ CHAPTER 10 VIEWING SERVER P
- Page 335 and 336:
11 Consolidating Data Capture with
- Page 337 and 338:
Getting Friendly with SQLdiag ❘ 2
- Page 339 and 340:
➤ Insight into the instance’s m
- Page 341 and 342:
Getting Friendly with SQLdiag ❘ 3
- Page 343 and 344:
Getting Friendly with SQLdiag ❘ 3
- Page 345 and 346:
The above message signifi es that a
- Page 347 and 348:
Diag Manager is a 32-bit tool whose
- Page 349 and 350:
Using SQLdiag Confi guration Manage
- Page 351 and 352:
General Custom Diagnostics Using SQ
- Page 353 and 354:
Analysis Services Custom Collectors
- Page 355 and 356:
Capturing Extended Events Using SQL
- Page 357 and 358:
Using SQLdiag Confi guration Manage
- Page 359 and 360:
Gearing Up for Long-Term Data Colle
- Page 361 and 362:
Employing Best Practices ❘ 321
- Page 363:
SUMMARY Summary ❘ 323 SQLdiag, co
- Page 366 and 367:
326 ❘ CHAPTER 12 BRINGING IT ALL
- Page 368 and 369:
328 ❘ CHAPTER 12 BRINGING IT ALL
- Page 370 and 371:
330 ❘ CHAPTER 12 BRINGING IT ALL
- Page 372 and 373:
332 ❘ CHAPTER 12 BRINGING IT ALL
- Page 374 and 375:
334 ❘ CHAPTER 12 BRINGING IT ALL
- Page 376 and 377:
336 ❘ CHAPTER 12 BRINGING IT ALL
- Page 378 and 379:
338 ❘ CHAPTER 12 BRINGING IT ALL
- Page 380 and 381:
340 ❘ CHAPTER 12 BRINGING IT ALL
- Page 382 and 383:
342 ❘ CHAPTER 12 BRINGING IT ALL
- Page 384 and 385:
344 ❘ CHAPTER 12 BRINGING IT ALL
- Page 386 and 387:
346 ❘ CHAPTER 12 BRINGING IT ALL
- Page 388 and 389:
348 ❘ CHAPTER 12 BRINGING IT ALL
- Page 390 and 391:
350 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 392 and 393:
352 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 394 and 395:
354 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 396 and 397:
356 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 398 and 399:
358 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 400 and 401:
360 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 402 and 403:
362 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 404 and 405:
364 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 406 and 407:
366 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 408 and 409:
368 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 410 and 411:
370 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 412 and 413:
372 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 414 and 415:
374 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 416 and 417:
376 ❘ CHAPTER 13 DIAGNOSING SQL S
- Page 419 and 420:
14 Enhancing Your Troubleshooting T
- Page 421 and 422:
Getting Started with PowerShell ❘
- Page 423 and 424:
Getting Started with PowerShell ❘
- Page 425 and 426:
$PSCulture Culture of the current W
- Page 427 and 428:
function Get-SQLProcess { [CmdletB
- Page 429 and 430:
PS > get-module -listavailable sql*
- Page 431 and 432:
What’s New in SQL Server 2012 Get
- Page 433 and 434:
Using PowerShell to Investigate Ser
- Page 435 and 436:
Using PowerShell to Investigate Ser
- Page 437 and 438:
Proactively Tuning SQL Server Perfo
- Page 439 and 440:
Proactively Tuning SQL Server Perfo
- Page 441 and 442:
} Proactively Tuning SQL Server Per
- Page 443 and 444:
} Scheduling Script Execution Proac
- Page 445 and 446:
15 Delivering a SQL Server Health C
- Page 447 and 448:
Running DMV and DMF Queries ❘ 407
- Page 449 and 450:
SQL Server Builds ❘ 409 Making th
- Page 451 and 452:
SQL Server Builds ❘ 411 even web
- Page 453 and 454:
SQL Server Builds ❘ 413 SQL Serve
- Page 455 and 456:
LISTING 15-14: SQL Server memory du
- Page 457 and 458:
SQL Server Builds ❘ 417 not being
- Page 459 and 460:
DatabaseName, [CPU_Time_Ms], CAST([
- Page 461 and 462:
LISTING 15-22: Login count informat
- Page 463 and 464:
SQL Server Builds ❘ 423 Server. I
- Page 465 and 466:
LISTING 15-29: Memory Grants Pendin
- Page 467 and 468:
Database-Level Queries ❘ 427 This
- Page 469 and 470:
Database-Level Queries ❘ 429 This
- Page 471 and 472:
qs.total_worker_time AS [TotalWorke
- Page 473 and 474:
LISTING 15-41: Top cached stored pr
- Page 475 and 476:
Database-Level Queries ❘ 435 Next
- Page 477 and 478:
-- and zero or very low numbers of
- Page 479 and 480:
ORDER BY cp.usecounts DESC OPTION (
- Page 481 and 482:
Database-Level Queries ❘ 441 This
- Page 483:
Summary ❘ 443 The purpose behind
- Page 486 and 487:
446 ❘ CHAPTER 16 DELIVERING MANAG
- Page 488 and 489:
448 ❘ CHAPTER 16 DELIVERING MANAG
- Page 490 and 491:
450 ❘ CHAPTER 16 DELIVERING MANAG
- Page 492 and 493:
452 ❘ CHAPTER 16 DELIVERING MANAG
- Page 494 and 495:
454 ❘ CHAPTER 16 DELIVERING MANAG
- Page 496 and 497:
456 ❘ CHAPTER 16 DELIVERING MANAG
- Page 498 and 499:
458 ❘ CHAPTER 16 DELIVERING MANAG
- Page 500 and 501:
460 ❘ CHAPTER 16 DELIVERING MANAG
- Page 502 and 503:
462 ❘ CHAPTER 16 DELIVERING MANAG
- Page 504 and 505:
464 ❘ CHAPTER 16 DELIVERING MANAG
- Page 506 and 507:
466 ❘ CHAPTER 16 DELIVERING MANAG
- Page 509 and 510:
17 Running SQL Server in a Virtual
- Page 511 and 512:
An Overview of Virtualization ❘ 4
- Page 513 and 514:
Why Virtualize a Server? ❘ 473 Ea
- Page 515 and 516:
Why Virtualize a Server? ❘ 475 ph
- Page 517 and 518:
Limitations of Virtualization Commo
- Page 519 and 520:
Common Virtualization Products ❘
- Page 521 and 522:
Virtualization Concepts ❘ 481 The
- Page 523 and 524:
Extended Features of Virtualization
- Page 525 and 526:
Extended Features of Virtualization
- Page 527 and 528:
Extended Features of Virtualization
- Page 529 and 530:
Managing Contention ❘ 489 Where d
- Page 531 and 532:
Identifying Candidates for Virtuali
- Page 533 and 534:
Identifying Candidates for Virtuali
- Page 535 and 536:
Arrows indicate the physical locati
- Page 537 and 538:
CPU Architecting Successful Virtual
- Page 539 and 540:
Architecting Successful Virtual Dat
- Page 541 and 542:
Architecting Successful Virtual Dat
- Page 543 and 544:
Monitoring Virtualized Database Ser
- Page 545 and 546:
Monitoring Virtualized Database Ser
- Page 547:
On the SQL Server Instance Summary
- Page 550 and 551:
architecture - BLG Blaster architec
- Page 552 and 553:
Client Access License (CAL) - count
- Page 554 and 555:
data source names - design data sou
- Page 556 and 557:
Enterprise Policy Management Framew
- Page 558 and 559:
health checks for SQL Server - hype
- Page 560 and 561:
Keep (KP) latches - locks K Keep (K
- Page 562 and 563:
MB (Min Server Memory) - MSSSQL (Mi
- Page 564 and 565:
object naming conventions - Perfmon
- Page 566 and 567:
plans - Profi ler plans (continued)
- Page 568 and 569:
query processing - release to manuf
- Page 570 and 571:
SA (Software Assurance) - sessions
- Page 572 and 573:
SQL Server 2012 - statistics SQL Se
- Page 574 and 575:
targets - Transactions event catego
- Page 576 and 577:
variables, table - VLANs (virtual l
- Page 578:
Try Safari Books Online FREE for 15