updating your sql server 2005 skills to sql server...
TRANSCRIPT
Microsoft TechNet Academy
UPDATING YOUR SQL
y
QSERVER 2005 SKILLS TO SQL SERVER 2008SQL SERVER 2008
An Introduction to SQL Server 2008
• The Evolution of SQL Server
• Preparing for SQL Server 2008
The Evolution of SQL Server
• SQL Server Version History
• SQL Server 2008 Editions
• Key Business Scenarios for SQL Server 2008
• What’s New in SQL Server 2008?
SQL Server Version History
SQL Server 1.0 (1989)
Developed by Microsoft, Sybase, and Ashton-Tate for OS/2
SQL Server 4.2 (1992) Developed for Windows NT 3.1
SQL Server 6 0 First version designed specifically for Windows SQL Server 6.0 (1995)
First version designed specifically for Windows NT
SQL Server 7.0 (1999)
Total rewrite of code base resulted in f d l b l(1999) performance and scalability improvements
SQL Server 2000 Further improvements in performance, scalability, and reliability
SQL Server 2005New and improved features: Integration Services, Analysis Services, Notification Services, Reporting Services, XML support
SQL Server 2008 Editions
For large-scale, business-critical applicationsEnterpriseEnterprise
F ll t di d t t l li tiSt d dSt d d For small to medium departmental applicationsStandardStandard
For small-scale branch applicationsWorkgroupWorkgroup
For entry-level and learning applicationsExpressExpress
For embedded databasesCompactCompact
For development and testingDeveloperDeveloper p g
Key Business Scenarios for SQL Server 2008
Scalable BI platform optimized for data integration, reporting, and analysis
Business Intelligence
Business Intelligence
Comprehensive and scalable platform for faster storage and more data
Data Warehousing
Data Warehousing
Scalable, high-performance database engine for mission-critical, highly available, secure applications
OLTPOLTP
Comprehensive programming framework, including ADO.NET Entity Framework and LINQ
Application DevelopmentApplication
Development
Flexible, manageable, high-performance consolidation solutions
Server Consolidation
Server Consolidation
What’s New in SQL Server 2008?
Configuration Servers
Configuration Servers
Policy-Based ManagementPolicy-Based Management Resource GovernorResource Governor
Data CollectorData Collector Plan FreezingPlan Freezing Transparent Data Encryption
Transparent Data Encryption
Auditing All Actions
Auditing All Actions
FILESTREAM Data Type
FILESTREAM Data Type Spatial DataSpatial Data
Hot Add CPUHot Add CPU Conflict DetectionConflict Detection Change Data Capture
Change Data Capturepp
MERGE StatementMERGE Statement Report DesignerReport Designer Analysis Services Wizards
Analysis Services WizardsWizardsWizards
Preparing for SQL Server 2008
• Hardware and Software Requirements for SQL Server 2008
• Considerations for Installing SQL Server 2008Considerations for Installing SQL Server 2008
Hardware and Software Requirements for SQL Server 2008
• Hardware:
Pentium III 2 GHz processor (32 bit or 64 bit)
1 GB 1 GB memory
280 MB disk space for a minimal install
• Software:
Windows XP SP2 Windows Server 2003 SP1 Windows Server Windows XP SP2, Windows Server 2003 SP1, Windows Server 2008, Windows Vista
Windows Installer 4.5 and MDAC 2.8 SP1
Internet Explorer 6 SP1
Considerations for Installing SQL Server 2008
C ll ti h• Collation changes:Includes Far East collections that support supplementary characters
I l d bi d i t t dIncludes binary-code point sort order
Deprecation of Hindi and Lithuanian_Classic Windows collation
Deprecation of SQL_ALTDiction_CP1253_CS_AS SQL collation
• SQL Server 2008 will only coexist side by side with SQL Server 2005
• SQL Server Installation Center:Is available after installation
Provides links to requirements, documentation, installation Provides links to requirements, documentation, installation tasks, and maintenance tasks
SQL Server 2008 Manageability Enhancements
• Central Management Servers
• Policy-Based Management
Central Management Servers
• What Are Central Management Servers?
• How to Create a Central Management Server and Server GroupsGroups
• How to Execute Multiserver Queries
What Are Central Management Servers?
• Centralized management of multiple servers:
Maintain connection information for servers in a server group:group:
Only Windows authentication is supported
Enable central administration of multiple servers:Enable central administration of multiple servers:
Multiserver queries
Policy-based managementMultiserver
Query
Configuration Server
Server Group
How to Create a Central Management Server and Server Groups
1. Register a Central Management Server in the Registered Servers pane in SQL Server Management Studio
2 Create a new server group for the registered Central 2. Create a new server group for the registered Central Management Server
How to Execute Multiserver Queries
Change Multiserver Results options as required
Create query from Registered Servers pane
By default, results are merged and include columns for
d l iserver and login
Policy-Based Management
• What Is Policy-Based Management?
• What Are Facets, Conditions, and Targets?
• What Are Policies?
• Policy Execution Modes
• How to Create a Policy
• How to Apply Policies
• How to Evaluate Policies
• How to Assign Policies
What Is Policy-Based Management?
Use the logical view that is provided through policies to define desired Management
by IntentManagement
by Intent g pconfiguration of data services proactivelyby Intentby Intent
Use policies to monitor, record, and optionally prevent changes from the d i d fi ti
Intelligent MonitoringIntelligent Monitoring desired configurationgg
Virtualized ManagementVirtualized
Management
By using policy-based management, you can scale management across multiple servers, which makes it easy to enforce consistent configuration policies across the enterprise
What Are Facets, Conditions, and Targets?
An aspect of SQL Server management in which one or more related configuration FacetsFacets goptions is defined
Settings to define the state of a facetConditionsConditions
Entities such as servers, databases, logons, and other database objects to which policies can be applied
TargetTarget
What Are Policies?
• A condition that is enforced on one or more targets
• Organized into categories
Policy Execution Modes
• On demand
• Automated policy execution:
On schedule
On change: prevent
On change: log only
How to Create a Policy
1. Create necessary conditions based on the appropriate facets or determine which preconfigured conditions will meet your requirements
2. Create a policy and define the following:Policy name
Check conditionCheck condition
If enabled
Execution mode
Server restrictions
Category
DescriptionDescription
Optional help hyperlink
How to Apply Policies
• Manually run policies that are configured with the On demand deployment mode to apply the policy
• Configure policies to be applied automatically:Configure policies to be applied automatically:
Set the deployment mode to On schedule, On change: log only, or On change: prevent
bl h lEnable the policy
Verify that the target belongs to the target set that is defined in the policy
Verify subscription to the policy
How to Evaluate PoliciesE l t P li i M ll R P li iEvaluate Policies Manually Run Policies
Results appear in the Evaluate
Policies window
How to Assign Policies
Apply all policies in a category to all databases by using the Mandate Database Subscriptions setting
Mandate Database Mandate Database
SubscriptionsSubscriptions
1. Clear the Mandate Database Subscriptionssetting
2. Use the Categories option on the Policies menu of the appropriate object, and then select the
Assign Policies to Individual
Assign Policies to Individual
Subscribed check box for the appropriate category
Individual Objects
Individual Objects
SQL Server 2008 Performance Enhancements
• Managing Workloads by Using Resource Governor
• Monitoring Performance by Using Data Collector
• Managing Performance by Using Plan Freezing
Managing Workloads by Using Resource Governor
• What Is Resource Governor?
• What Are Resource Pools and Workload Groups?
• How to Manage Resource Governor
• How to Assign a Workload to a Workload Group
What Is Resource Governor?
• Resource Governor is a tool to define limits and assign priorities to individual workloads that are running on a SQL Server instance:
Workloads are based on factors such as users, applications, and databases
Limits control the resources that are available to specific pworkloads:
Minimizes the effects of runaway queries
Priorities can optimize the performance of a mission critical Priorities can optimize the performance of a mission-critical process while maintaining predictability for the other workloads on the server
What Are Resource Pools and Workload Groups?
• Resource pools:
Can contain many workload groups
Li it t Limit system resources
• Workload groups:
Are assigned to resource poolsAre assigned to resource pools
Group applications and limit resources that are specific to SQL Server
How to Manage Resource Governor
1. Enable Resource Governor
2. Configure resource pools
3. Configure workload groups
4. Create a classification function to assign workloads to workload groupsworkload groups
How to Assign a Workload to a Workload Group
• Create a classifier function
CREATE FUNCTION dbo fn ClassifyApps() RETURNS sysnameCREATE FUNCTION dbo.fn_ClassifyApps() RETURNS sysnameWITH SCHEMABINDINGASBEGIN
C @DECLARE @ret sysnameIF (APP_NAME() LIKE '%Low Importance Application%') SET @ret='Low Importance Group'RETURN @retRETURN @ret
ENDGOALTER RESOURCE GOVERNOR
WITH (CLASSIFIER FUNCTION db f Cl if A )WITH (CLASSIFIER_FUNCTION = dbo.fn_ClassifyApps)ALTER RESOURCE GOVERNOR RECONFIGURE
Monitoring Performance by Using Data Collector
• What Is Data Collector?
• Data Collection Architecture
• How to Configure a Management Data Warehouse
• How to Manage Data Collection
• How to View Performance Data
What Is Data Collector?
• It is a set of tools to collect performance information
• It provides an API that enables client applications to access performance dataaccess performance data
• It includes SQL Server Agent jobs and SSIS packages that provide data to the API
• It provides a management data warehouse that stores historical performance data
Data Collection ArchitectureClient
• SQL Server Agent schedules the Data Collector run-time component
SQL Server Management Studio
Console interface
Reports
APIcomponent
• The Data Collector run-time component executes the Data Collector SSIS
Data Collector API
Classlibrary
Stored proceduresAnd viewsthe Data Collector SSIS
packages
• The SSIS packages collect h d f h d
library And views
DataCollector SQL
Execution
the data from the data providers and upload it to the management data warehouse
SSISCollectorRun-time
component
ServerAgent
warehouseData collectionconfiguration
SSIS packages
Audit and history
J b d fi iti
Storage
Jobs definition
How to Configure a Management Data Warehouse
• Use the Configure Management Data Warehouse Wizard to:
Specify a database to store collected data and specify a folder p y p ylocation for temporary storage before upload
Specify user and group access to the management data warehouse
How to Manage Data Collection
•Configure the three System Data collection sets:
Disk Usageg
Query Statistics
Server Activity
•You can specify:
Upload schedule
Collection frequency
Security
R t ti i dRetention period
•You can view:
Input parameters to define Input parameters to define the Transact-SQL used to gather the data
How to View Performance Data
• To view reports, right-click Data Collection, point to Reports, and then click one of the available options:
Some reports have links to more specific informationp p
Managing Performance by Using Plan Freezing
• What Is Plan Freezing?
• Scenarios for Plan Freezing
• How to Create a Plan Guide
• How to Enable and Disable a Plan Guide
• How to Copy a Plan Guide
What Is Plan Freezing?
• Plan freezing creates a plan guide that:
Contains hints or a full query plan
I tt h d t ifi T t SQL t t tIs attached to a specific Transact-SQL statement
Can be enabled or disabled
Can be copied between serversCan be copied between servers
exec sp_create_plan_guide_from_handle@name = N'CustomerSales',@plan_handle = @plan_handle,@statement start offset @offset@statement_start_offset = @offset
Scenarios for Plan Freezing
• SQL Server upgrade:
Query plans are often updated during migration
M t d t b fi i lMost updates are beneficial
Plan guides enable you to roll back detrimental query plan updates
• Prevent query regression:
You can create plan guides and then disable them to enable queries to benefit from statistics-based recompilesqueries to benefit from statistics based recompiles
If the query regresses, you can enable the plan guide to revert to the previous query plan
• Copy plan guides:
You can script plan guides on test servers and then apply them to production servers
Enable thorough testing of plan guides before deployment
How to Create a Plan Guide
1. Execute DBCC FREEPROCCACHE to clear the query cache
2. Execute queries for which you want to create a plan 2. Execute queries for which you want to create a plan guide
3. Execute sp_create_plan_guide_from_handle to create plan guides for the specific query or for every create plan guides for the specific query or for every query in the cache
How to Enable and Disable a Plan Guide
• To enable a plan guide:
New plan guides are enabled by default
T di bl l id
EXEC sp_control_plan_guide N'ENABLE', N'CustomerSales'
• To disable a plan guide:
EXEC sp_control_plan_guide N'DISABLE', N'C S l 'N'CustomerSales'
How to Copy a Plan Guide
1. Script plan guide in SQL Server Management Studio on source server:
Plan guides are also included in complete database scriptsg p p
2. Execute script on destination server