Designing High Availability Database Solutions Using Microsoft SQL Server
2005
Course 2788:
Three days; Instructor-Led Course Syllabus
Introduction
Elements of this syllabus are subject to change.
This three-day instructor-led course provides students with the knowledge
and skills to design high availability database solutions using Microsoft
SQL Server 2005. The course focuses on teaching experienced database administrators
working in enterprise environments to design database solutions that meet
the availability needs of their organization. It emphasizes that students
should think broadly about high availability, which includes thinking about
the database itself and about their entire environment, including business
needs; regulatory requirements; and network, systems, and database considerations
during design. Students will also learn how to document and test the high
availability database solution.
Audience
This course is intended for current professional database administrators who
have three or more years of on-the-job experience administering SQL Server
database solutions in an enterprise environment.
Prerequisites
Before attending this course, students must:
• Have a basic understanding of network architecture. For example,
what can fail in a network, Virtual Private Networks (VPNs), differing
performance characteristics of network components, etc.
• Understand the tradeoffs among the different redundant storage
types. For example, what RAID levels mean, how it differs from a SAN,
etc.
• Understand how replication works and how replication is implemented.
• Be familiar with reading user requirements and business-need
documents. For example, development project vision or mission statements
or business analysis reports.
• Have monitoring and troubleshooting skills.
• Have knowledge of the operating system and platform. Specifically,
must understand how hardware can fail, how the operating system integrates
with the database, what the platform or operating system can do, and
how the interaction between the operating system and the database
works.
• Have knowledge of application architecture. Specifically,
must understand how applications identify servers to connect to, how
applications can be designed in three layers, what applications can
do, the interactions between applications and the database, interactions
between the database and the platform or operating system.
• Know how to use:
• A monitoring tool
• Microsoft Visio (to create infrastructure diagrams)
• Be familiar with SQL Server 2005 features, tools, and technologies.
• Have a Microsoft Certified Technology Specialist: Microsoft
SQL Server 2005 credential - or equivalent experience.
In addition, it is recommended, but not required, that students have completed:
• Course 2778, Writing Queries Using Microsoft SQL Server 2005
Transact-SQL.
• Course 2779, Implementing a Microsoft SQL Server 2005 Database.
• Course 2780, Maintaining a Microsoft SQL Server 2005 Database.
Course Outline
Module 1: Selecting the Appropriate High-availability Solution
This module provides the guidelines for identifying business requirements
and technical and non-technical constraints of high-availability.
This module also explains the guidelines for analyzing the requirements
and constraints for high-availability. Finally, this module provides
a brief overview of existing high-availability technologies and explains
the process and guidelines for determining the appropriate high-availability
technology that can be used to meet business requirements and constraints.
Lessons
• Identifying High-availability Requirements and Constraints
• Analyzing High-availability Requirements and Constraints
• Determining Appropriate High-availability Solutions
Lab 1: Proposing a High-availability Solution
• Gathering Requirements
• Prioritizing Requirements
• Determining Appropriate High-availability Technology
• Proposing a High-availability Solution
After completing this module, students will be able to:
• Identify high-availability requirements and constraints.
• Analyze high-availability requirements.
• Determine appropriate high-availability solutions.
Module 2: Designing a Clustering Solution
This module provides the considerations and guidelines for designing
a SQL Server cluster implementation. This module also provides the
guidelines for designing recovery strategies and formulating the test
plan for database clustering. Next, this module explains the considerations
for migrating and upgrading SQL Server clusters. Finally, this module
explains the process of creating an operations plan for clustering.
In this module, you will also learn about the planned and unplanned
events that can affect a cluster environment.
Lessons
• Designing the Platform for Clustering
• Designing the SQL Server Cluster Implementation
• Designing Recovery Strategies and Test Plans for Database
Clustering
• Migrating and Upgrading SQL Server Clusters
• Designing an Operations Plan for Clustering
Lab 2: Designing a Database Clustering Solution
• Designing a Cluster Topology
• Designing an Operations Plan
• Verifying a SQL Server Cluster Configuration
• Monitoring a SQL Server Cluster
After completing this module, students will be able to:
• Design the platform for clustering.
• Design the SQL Server cluster implementation.
• Design recovery strategies and test plan for database clustering.
• Migrate and upgrade SQL Server clusters.
• Design an operations plan for clustering to maximize availability.
Module 3: Designing a Highly Available Database Storage Solution
This module provides the guidelines and considerations to determine
the storage requirements for SQL Server databases, components, and
external files that are a part of the database system. This module
also explains the guidelines for designing storage solutions for these
resources.
In this module, you will also learn about designing restore strategies
to maximize availability. Finally, this module explains the guidelines
for recovering damaged and partially damaged system and user databases.
Lessons
• Determining Storage Requirements for SQL Server Databases
• Determining Storage Requirements for SQL Server Components
and Files
• Designing Storage Solutions for SQL Server Databases
• Designing a Backup and Restore Strategy
Lab 3: Designing a Highly Available Database Storage Solution
• Determining Storage Needs
• Selecting the Storage Solution
• Designing a RAID Solution
• Designing a SAN Solution
• Designing a Backup and Restore Strategy
After completing this module, students will be able to:
• Determine storage requirements for SQL Server databases.
• Determine storage requirements for SQL Server components
and files.
• Design a highly-available storage solution for each database
resource.
• Design a backup and restore strategy for the database.
Module 4: Designing a Log Shipping Solution
In this module, you will learn about the guidelines and considerations
for designing a log shipping solution. This module provides the guidelines
for determining log shipping server roles and topology. This module
also explains the guidelines for upgrading log shipping.
Finally, this module explains the process of designing an operations
plan for log shipping. In this module, you will also learn about the
planned and unplanned events that can affect a log shipping environment.
Lessons
• Introduction to Designing a Log Shipping Solution
• Designing Log Shipping Server Roles and Topology
• Designing a Log Shipping Upgrade Strategy
• Designing an Operations Plan for Log Shipping
Lab 4: Designing a Log Shipping Solution
• Selecting the Appropriate Log Shipping Architecture
• Designing Log Shipping Database Roles and Topology
• Designing an Operations Plan
• Verifying and Testing a Log Shipping Solution
After completing this module, students will be able to:
• Explain the different considerations for designing a log
shipping solution.
• Design log shipping server roles and topology.
• Design a strategy for upgrading log shipping.
• Design an operations plan for log shipping to maximize availability.
Module 5: Designing a Database Mirroring Solution
In this module, you will learn about the guidelines and considerations
for designing a database mirroring solution. This module provides
the guidelines for determining the database roles and topology for
mirroring. This module also explains the guidelines for migrating
from an existing high-availability technology in SQL Server 2000 to
database mirroring in SQL Server 2005.
Finally, this module explains the process of designing an operations
plan for database mirroring. In this module, you will also learn about
the planned and unplanned events that can affect a mirroring environment.
Lessons
• Introduction to Designing a Database Mirroring Solution
• Designing Database Roles and Topology for Database Mirroring
• Converting High-availability Solutions to Database Mirroring
• Designing an Operations Plan for Database Mirroring
Lab 5: Designing a Database Mirroring Solution
• Selecting the Appropriate Mirroring Architecture
• Designing Database Roles and Topology for Database Mirroring
• Designing an Operations Plan
• Evaluating Migration Options from Clustering to Mirroring
• Evaluating Migration Options from Log Shipping to Mirroring
• Comparing Mirroring with Clustering and Log Shipping
After completing this module, students will be able to:
• Explain the different considerations for designing a database
mirroring solution.
• Design the database roles and topology for database mirroring.
• Convert existing high-availability solutions to database
mirroring.
• Design an operations plan for database mirroring to maximize
availability.
Module 6: Designing a Highly Available Solution Based on Replication
In this module, you will learn about the guidelines and considerations
for designing a highly-available solution based on replication. This
module provides the guidelines for determining replication server
roles and topology. This module also explains the guidelines for upgrading
replication.
Finally, this module explains the process of designing an operations
plan for replication. In this module, you will also learn about the
planned and unplanned events that can affect a replication environment.
Lessons
• Introduction to Designing a Replication Solution
• Designing a Replication Solution
• Designing a Replication Upgrade Strategy
• Designing an Operations Plan for Replication
Lab 6: Designing a Highly-availability Solution Based on Replication
• Selecting the Appropriate Replication Architecture
• Designing a Replication Solution
• Designing an Operations Plan
• Designing a Disaster Recovery Strategy By Using MERGE Replication
• Designing a Disaster Recovery Strategy By Using TRANSACTIONAL
Replication
After completing this module, students will be able to:
• Explain the different considerations for designing a replication
solution.
• Design a replication solution.
• Design a strategy for upgrading replication.
• Design an operations plan for replication to maximize availability.
Module 7: Combining High-availability Technologies
This module provides guidelines for designing high-availability solutions
by combining existing high-availability technologies. This module
enables you to evaluate the weaknesses in each high-availability technology.
In this module, you will determine technologies that complement each
other to minimize these weaknesses.
Lessons
• Evaluating Weaknesses in Each High-availability Technology
• Maximizing Availability by Combining High-availability Technologies
Lab 7: Combining High-availability Technologies
• Evaluating Weaknesses in High-availability Technologies
• Maximizing Availability by Combining Technologies
After completing this module, students will be able to:
• Evaluate the weaknesses in each high-availability technology.
• Maximize availability by combining high-availability technologies.
Module 8: Documenting and Testing a High-availability Strategy
This module provides guidelines for documenting and testing high-availability
solutions. This module explains the structure of a high-availability
solution document and also explains the need for documenting the solution.
In this module, you will also discuss the process of creating a test
plan for high-availability solutions.
Lessons
• Documenting High-availability Solutions
• Creating a Test Plan for High-availability Solutions
Lab 8: Documenting and Testing a High-availability Strategy
• Documenting the High-availability Solution
• Creating a Test Plan
After completing this module, students will be able to:
• Document high-availability solutions.
• Create a test plan for high-availability solutions.
|