Skip to main content

Devops for Databases

Enrollment in this course is by invitation only

About This Course

This course examines the challenges and solutions of incorporating your database into a DevOps software development process. This course will help you understand the challenges of working with various data stores while developing and changing your software at a rapid pace.

You will learn where and how databases can fit into DevOps processes.

The course will cover:

  • Committing database code to a version control system (VCS), Continuous Integration and unit testing database code.
  • Release management for databases, in areas such as release gates, deploying releases to multiple environments, validating deployments with smoke tests and rolling back deployments.
  • Monitoring database code, branching and merging database code, cross databases dependencies, upgrading multiple databases, federated databases, dark launching, error handling and cleaning up technical debt with databases.

Finally, while the course will primarily use Microsoft SQL Server (and tailor our examples for it), other relational or non-relational database platforms have similar concepts that can be applied.

What you'll learn

  • Define DevOps and understand DevOps in relation to Databases
  • Identify the challenges of using databases that are separate from other software languages and platforms
  • Include your database code alongside other application code in a version control system (VCS)
  • Set up a Continuous Integration (CI) platform for your database code
  • Write and include automated unit tests for your database code
  • Develop an automated release process that deploys database changes to both on premise and cloud databases
  • Implement branching and merging for your database code
  • Instrument and monitor the database after deployment

Course Syllabus

  • Module 0 | Welcome to DevOps for Databases
    • Course Overview
    • Microsoft Learning
    • Pre-Course Survey
  • Module 1 | Overview of DevOps
    • Module 1 Overview
    • Overview of DevOps
    • Database Development Issues in a DevOps Processs
    • Database Development Paradigms
    • Collaboration
    • Module 1 Labs
    • Module 1 Review Questions
    • Database Development
  • Module 2 | Overview
    • Overview of DevOps for Databases
    • Committing Database Code to a VCS
    • Continuous Integration for Databases
    • Unit Testing Database Code
    • Module 2 Labs
    • Module 2 Review Questions
  • Module 3 | Releasing Database Changes
    • Module 3 Overview
    • Overview of Release Management
    • Deploying Releases
    • Release Gates
    • Release Details
    • Rollbacks
    • Module 3 Labs
    • Module 3 Review Questions
  • Module 4 | Advanced Topics
    • Module 4 Overview
    • Monitoring Your Systems
    • Branching and Merging Database Code
    • Provisioning
    • Best Practices
    • Advanced Customer Scenarios current Section
    • Module 4 Labs
    • Module 4 Review Questions
  • Final Exam
    • Final Exam(Graded)
    • Post-Course Survey

Meet the instructors

Course Staff Image #1

Steve Jones

Steve Jones has 25 years of SQL Server experience as a developer, DBA, and manager. He is the founder and editor of SQLServerCentral and an evangelist for Redgate Software. He has been a Data Platform MVP for 10 years.

Course Staff Image #1

Greg Low

Greg is a long-term Data Platform MVP, a Microsoft Regional Director, and the Principal Mentor for SQL Down Under in Melbourne, Australia. Greg is best known for his SDU Tools (Developer and DBA toolkits), and for his SQL Down Under podcast. He is the author of a number of whitepapers on MSDN, articles at SQL Server Pro, and several books.

  1. Course Number

    DEVOPS200.6x
  2. Classes Start

  3. Classes End

  4. Estimated Effort

    8-16 hours in total