3. out of scope…
T-SQL enhancements –
The FILESTREAM datatypes
The new DATE and TIME datatypes
The new Merge command
Table Valued Parameters
Large UDTs
User-Defined Aggregates
Hierarchical data
New Dependency Management
Filtered Indexes
4. More topics – out of scope…
Integration with Microsoft Office 2007
Transparent Data Encryption
Auditing data access
Data Compression
Security related improvements
Database mirroring, replication, Service Broker
Resource Governor
Dynamic Development with New ADO , Visual Studio options and
Dot Net 3
Entity Data Services (LOB and eSQL)
Development of frequently disconnected applications
5. Introduction
Enhancements in Management Studio 2008
The query editor and debugger
Performance Studio (?)
PowerShell integration (?)
6. Introduction
Enhancements in Management Studio 2008
The query editor and debugger
Performance Studio (?)
PowerShell integration (?)
8. Introduction
Enhancements in Management Studio 2008
The query editor and debugger
Performance Studio (?)
PowerShell integration (?)
9. Activity Monitor
Object Explorer Details
Object Search
Custom colors for connection
Error when trying to modify table definition
Speed Enhancements for SSMS
UI Framework Enhancements
"Open Table" enhancements
Register servers at a central location
Wizard for Table Partitioning Setup
Service Broker UI enhancements
10. Activity Monitor
Object Explorer Details
Object Search
Custom colors for connection
Error when trying to modify table definition
Speed Enhancements for SSMS
UI Framework Enhancements
"Open Table" enhancements
Register servers at a central location
Wizard for Table Partitioning Setup
Service Broker UI enhancements
11. Provides high-level perspective on what might be ailing your SQL Server., in
real time
To run:
Right click on SQL Server instance (Object Explorer) Activity monitor
Refresh interval
Pause
Sort and filter data
12. Processes
Shows all running processes
Previous versions:
Sp_who2
Current Activity
13. Right click on Process:
Details – shows last running batch
Kill Process
Trace Process in SQL Server Profiler – opens SQL Profiler, tracing
only the specific SPID.
14. Resource waits
Provides a snapshot of key resource waits occurring on the server
Measures the amount of time a worker thread has to wait until it can
gain access to a resource
Helping identify potential resource bottleneck
15. Buffer IO – waits for IO subsystem
CPU – Waiting for CPU resource
Buffer Latch – Disk to memory contention
Latch – possible contention in internal caches
Lock – waiting to acquire a lock on an object
Logging – transaction logs
Memory - waiting for memory resource
Network IO – waiting for Network resource
16. Data File IO
Provides information about IO usage of database files
Helps identify database/database files bottlenecks
17. Recent Expensive Queries
Provides information about most recent expensive queries
Those currently in cache
18. Right click on query:
Edit Query Text - displaying the entire query (not just the small part
of the query you see in the window)
Show Execution Plan - displaying a graphical execution plan of the
query
19. Tool Tips throughout all the screens of the Activity Monitor
Most of the data displayed in the Activity Monitor is from DMVs.
Many of the Tool Tips even tell you the name of the DMV used to
return the data you are viewing
20. Querying DMVs
Process information SELECT fn.text,p.* from sysprocesses as p
CROSS APPLY fn_get_sql(sql_handle) as fn
ORDER BY spid
Top wait statistics SELECT TOP 10
[Wait type] = wait_type, [Wait time (s)] = wait_time_ms / 1000,
[% waiting] = CONVERT(DECIMAL(12,2),
wait_time_ms * 100.0 / SUM(wait_time_ms) OVER())
FROM sys.dm_os_wait_stats
WHERE wait_type NOT LIKE '%SLEEP%'
ORDER BY wait_time_ms DESC
Top files under load SELECT db_name(mf.database_id),physical_name,num_of_reads
Top files under load FROM sys.master_files mf
Inner join sys.dm_io_virtual_file_stats(NULL,NULL) as vf
on mf.database_id = vf.database_id and mf.file_id=vf.file_id
order by num_of_reads desc
Top query by Avg: SELECT TOP 10
[Average CPU used] = total_worker_time / qs.execution_count,
[Total CPU used] = total_worker_time ,
Top by CPU [Execution count] = qs.execution_count ,
Top by IO [Individual Query] = SUBSTRING (qt.text,qs.statement_start_offset/2,
(CASE WHEN qs.statement_end_offset = -1 THEN
Top by Duration LEN(CONVERT(NVARCHAR(MAX), qt.text)) * 2
ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) ,[Parent
Query] = qt.text ,DatabaseName = DB_NAME(qt.dbid)
FROM sys.dm_exec_query_stats qs CROSS APPLY
sys.dm_exec_sql_text(qs.sql_handle) as qt
ORDER BY [Average CPU used] DESC
21. Permissions
To view the Activity Monitor :
VIEW SERVER STATE permission on the server
Permission to KILL a process
sysadmin and processadmin fixed database roles
is not transferable.
23. Activity Monitor
Object Explorer Details
Object Search
Custom colors for connection
Error when trying to modify table definition
Speed Enhancements for SSMS
UI Framework Enhancements
"Open Table" enhancements
Register servers at a central location
Wizard for Table Partitioning Setup
Service Broker UI enhancements
24. Object Explorer Details
In SQL Server 2005 - displayed the same information as in Object Explorer
View Object Explorer Details or F7
SQL 2008 – screen includes more information. Examples:
25. Object Explorer Details
Right click on titles in “Object Explorer View” – there are more
details that can be shown in the window:
Any changes you
make are
automatically
remembered for next
time you come back to
this screen
27. Activity Monitor
Object Explorer Details
Object Search
Custom colors for connection
Error when trying to modify table definition
Speed Enhancements for SSMS
UI Framework Enhancements
"Open Table" enhancements
Register servers at a central location
Wizard for Table Partitioning Setup
Service Broker UI enhancements
28. Object Search
The scope of the search depends on what object has been selected in the Object
Explorer
Can’t “jump” to the right location, only view properties
30. Activity Monitor
Object Explorer Details
Object Search
Custom colors for connection
Error when trying to modify table definition
Speed Enhancements for SSMS
UI Framework Enhancements
Security related improvements
"Open Table" enhancements
Register servers at a central location
Wizard for Table Partitioning Setup
Service Broker UI enhancements
31. Custom colors for connection
Handy for those who work often with multiple SQL Server instances
Connect Options
Enable “use custom
color” option and then
“Select” a color
32. Custom colors for connection
Example
Development
Production
47. Activity Monitor
Object Explorer Details
Object Search
Custom colors for connection
Error when trying to modify table definition
Speed Enhancements for SSMS
UI Framework Enhancements
Security related improvements
"Open Table" enhancements
Register servers at a central location
Wizard for Table Partitioning Setup
Service Broker UI enhancements
48. Register servers at a central location
View Registered Servers
There are two kinds of registered servers:
Local
Unique to a user on the local machine
Stored on file system
SQL Server Authentication allowed (stores passwords)
Supporting previous versions of SQL Server
Central
Stored in the Central Management Server
Only Windows Authentication can be used
Can be stored only in SQL 2008 database servers
No special permissions required
49. Exists in SSMS 2005 as well – Import/Export servers registration
Go to the Registered Servers window
Right click on Group
50. Import/Export servers registration
You can include User Names and Passwords in export file
(encrypted!)
56. Activity Monitor
Object Explorer Details
Object Search
Custom colors for connection
Error when trying to modify table definition
Speed Enhancements for SSMS
UI Framework Enhancements
Security related improvements
"Open Table" enhancements
Register servers at a central location
Wizard for Table Partitioning Setup
Service Broker UI enhancements
57. Service Broker UI enhancements
Easier setup of Service Broker. Provided Templates and
context menu in the object explorer
SQL 2005: SQL 2008:
SQL 2008:
58. Introduction
T-SQL enhancments
Enhancements in Management Studio 2008
The query editor and debugger
Performance Studio (?)
PowerShell integration
59. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
60. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
61. Multi-Server Queries
Query multiple servers at the same time, returning the results
to a single window
62. Multi-Server Queries
Create a Server Group from the Registered Servers window
Add SQL Server registrations to the group
Supports previous versions
Right-click on the Server Group and select "New Query"
63. Multi-Server Queries
Disadvantage
Need to create separate Server Groups for each subset, if not
all server are required in a query
70. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
73. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
74. Customizable tabs
The query editor’s results can now have their tabs
set with customized names
Switch to full screen view of SSMS
Shift+Alt+Enter key combination
75. To switch between different tabs (Editor,
Results, Messages) use F6.
76.
77. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
78. Error list
View list of syntax errors as you type
View the error list form:
79. Error list
From all active Windows
Double click on error will set you on the code line
81. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
82. New Right-Click options on Results Grid
SQL 2005 SQL 2008
84. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
85. Showplan – new options
You can right-click a showplan graphic and see the
XML version of the plan
The XML created by the showplan is now formatted
instead of showing as a large string
You can right-click a graphical showplan and
extract the SQL query that generated it
86. Showplan – new options
Show as XML – nicely formatted
• Easier to compare
• Easier to analyze
87. Showplan – new options
Extract query of a saved Showplan
Open saved file
89. Multi-Server Queries
Intellisense added to the Query Editor
Collapsible window
Customizable tabs
Error list
New Right-Click options on Results Grid
Showplan - new options
The debugger
90. The debugger
Set breakpoints
Step through code
Step into code
Set watches up to monitor variable values, locals
and the call stack
Woohoo!!!!
92. SQL Server 2005 includes a Performance
Dashboard (reports – standard and custom)
Displays real-time performance data
SQL 2008 Performance Studio
Collect performance data from multiple databases
and store them in a central repository
Compare current and past performance
Troubleshoot performance problems
Track your custom performance metrics
Provides a set of prebuilt reports
Add your Custom reports
93. Architecture
Data Collection UI (Object Explorer)
Data Collection Collection Set
Configuration Reports
Management Data
Warehouse
Data Collection
Target Collector Sets
Data Collection
Target Collector Sets
94. Two types of Collection Sets:
System
Mostly DMVs
User
User Collection
95. Data Collection UI
Permissions: sysadmin permissions are required
System DC
96. Example report
Also:
Disk usage
Query statistics history
Custom reports
97. SQL Server Agent jobs created automatically
(more can be added):
Job types:
Data Collection
Data purges
98. Data Collector Set
Create custom data collections
Use Performance Studio as repository
Permissions:
Permissions to run Profiler
Sysadmin on server to add the set
99. Data Collector Set
Follow BOL
How to: Use SQL Server Profiler to Create a SQL Trace
Collection Set
100. Data Collector Set
Open saved file
in SSMS and execute
2 occurrences
in code
101. Data Collector Set
Manageable from Object Explorer
103. PowerShell is the .NET based automation engine that
Microsoft shipped in November 2006. It can:
Have a MMC layered over the top as in Exchange 2007
Be embedded into .NET applications
Be used as a command line shell and scripting language.
Available in 32 bit and 64 bit versions for Windows
2003, Windows XP and Windows Vista. Also
installable feature in Windows Server 2008
It is now part of Microsoft’s Common Engineering
Criteria and will be incorporated into all major
products
104. Supports more complex logic than Transact-
SQL scripts
Implementations:
Provides simple navigation mechanism
similar to file system paths
Set of cmdlets, which are commands used in
PowerShell scripts to specify a SQL Server
action
A verb-noun syntax, i.e. Get-Help.
105. Usage:
In command prompt
powershell.exe
In SQL Server Management Studio
Right click an Object Start Powershell
In a SQL Server Agent job
Step type can be Powershell
106. Questions?
Feel free to contact me:
gutzait@pythian.com
Michelle.gutzait@gmail.com