Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Database Lifecycle Management: Getting it Right

Database Lifecycle Management: Getting it Right

CodeMash 2016 (Sandusky, OH)

Tugberk Ugurlu

January 08, 2016
Tweet

More Decks by Tugberk Ugurlu

Other Decks in Programming

Transcript

  1. Agenda • Explaining The Problem • The Stages to DLM

    with a Real World Demos • Resources • Questions along the way #codemash
  2. Expectations • It’s not about tools. • It’s not only

    about SQL Server but it’s what I am going to be showing. • Lots of moving parts in action but that’s A-OK. • Something you can apply right away #codemash
  3. Why you should care? • There is no such an

    app w/o data. • Unlocking the Doors For Continuous Delivery • Fast release cycle • Continuous feedback loop • Tools have historically been primitive • Rolling your own solution is great, but it isn't adding value to your business. #codemash
  4. Stages to This Hard Problem • S1: Manual: Manual management

    of all database changes • S2: Source Control • S3: Continuous integration • S4: Release Management #codemash
  5. Source Control • Root solution • Provides Single Source of

    Truth • All the advantages of Source Control System • Reverting Changes • Review • Etc. #codemash
  6. Release Management #codemash • All about Automating Database Releases •

    Providing Review Process • Insight on the Changes • Warnings • Script • Being on the safe side
  7. Monitoring #codemash • Two Sides • Performance • State, History

    • Keeping track of what happened • Knowing what the current state • Catching the out of process changes
  8. Going Further • Migrations Based Approach • Typical Integration Testing/QA/Staging/Production

    loop • Zero Downtime Deployments • Deploying to Multiple Database (e.g. Multi-tenant Applications) • Catastrophic Cases (Unhealthy Releases, etc.) #codemash
  9. Resources • Demo Source Code: https://github.com/british-proverbs/british-proverbs-sql- source-control • DLM Automation

    Suite: http://www.red-gate.com/products/dlm/dlm- automation-suite/ • Octopus Deploy: https://octopusdeploy.com/ • ReadyRoll: http://ready-roll.com/ • TeamCity: https://www.jetbrains.com/teamcity/ • DLM Dashboard: http://www.red-gate.com/products/dlm/dlm-dashboard • Continuous Delivery for Databases by Alex Yates: https://vimeo.com/131637362 #codemash