Articles tagged

The Comeback of Migrations-Based Deployments

With database deployments, not all script-based processes are equal. Some use change scripts in a free-and-easy way, and some, which are normally called 'migrations-based approaches', have more discipline around them. In this article, Redgate Product Manager Elizabeth Ayer covers 'migrations', and shows some of the benefits that have come with new tooling which is specifically designed to assist the change script processes.… Read more

Database Lifecycle Management for ETL Systems

Few databases are self-contained. They take data from other sources, and publish them to downstream consumers of data. These ETL processes tend to grow in an unplanned organic way and so tand to cause trouble both in production and in deployment. Database Lifecycle Management systems allow all the teams to come together to ensure that ETL systems meet all requirements.… Read more

Database Migrations: Modifying Existing Databases

It should be simple to upgrade a database to a new version. It certainly can be, but if you need to preserve the existing data and you have made changes to the design to the tables then it can get complicated. If you are deploying changes to a heavily-used OLTP system on which an organization depends, then you need to understand, and be familiar with, the issues that can effect a database migration. Matthew Skelton explains the basic approaches.… Read more

Issue Tracking for Databases

Any database development project will be hard to manage without a system for reporting bugs in the code, anomalies and incidents from live environments, and for keeping track of new features. Matthew Skelton discusses the critical role of an integrated issue tracking system in database lifecycle management.… Read more

Better Ways to Build a Database

The purpose of a database build is simple: prove that what you have in version control can successfully create a working database. And yet many teams struggle with unreliable and untested database build processes that slow down deployments and prevent the delivery of new functionality. Grant Fritchey explains how to achieve an automated and reliable database build that is only as complex as the database system it needs to create.… Read more

Database Continuous Integration

Have you ever longed for a way of making the delivery of databases more visible, predictable and measurable? Do you ever wish that they would be of better quality, quicker to change, and cost less? Grant Fritchey explains some of the secrets of doing Continuous Integration for Databases to relieve some of the pain-points of the Database Delivery process.… Read more

Releasing Databases in VSTS with Redgate SQL CI and Octopus Deploy

You can still do Database Lifecycle Management (DLM) workflows in the hosted version of Team foundation Server (TFS) in Visual Studio Team Services (VSTS) . If you are doing your database development in SSMS, you can use a mix of tools to set up the functionality in VSTS. Jason Crease demonstrates how to build and deploy a simple database into the test environment using SQL CI, SQL Source Control, Octopus Deploy, tSQLt, SQL Cop and SQL Release, all with the minimum of hassle and effort.… Read more

Wherever I Lay My Hat: Release Management in TeamCity with Redgate DLM

Where you have multiple services, applications and databases in your environment, and perhaps with high levels of scrutiny and governance, you'll probably want a Release Management system for deploying database and application code together: You can, alternatively, use a separate Release Management component. But for simpler applications, you can use your existing build system such as TeamCity to deploy changes. Using a database deployment example, Richard Macaskill shows how.… Read more

Jodie Beay and the Production Database Drift

You make an example database, like NorthWind or WidgetDev in order to test out your deployment system and the next thing you know you're worrying about constraints, backup and security. Then you add an index to the production system and feel a pang of guilt. What would the Devs say? Somehow databases take on lives of their own, populated by the lost souls of users, Developers and DBAs. Has the Redgate DLM Team's practice Forex database somehow come alive?… Read more

Jodie Beay and the Deployment of the Cross-Database Dependency

When you use AdventureWorks as a practice database, have you ever looked at the code and thought 'what idiot did this', or 'what did the DBAs think when they saw that?' Subconsciously, you occasionally forget it isn't real and 'fill in the back-story'. The SQL Release Team at Redgate did the same with their own practice database, and imagined a cast of characters wrestling with the difficulties of deploying it.… Read more

Implementing Continuous Integration for Databases

Continuous integration (CI) is becoming more and more common in application development. It ensures code and related resources are integrated regularly and tested by an automated build system, and highlights problems early in the development process. But what about database development? Can the same advantages of CI be applied to production databases? Where do you start? How do you tackle it? Sjors Takes relates his experience.… Read more

Writing Build vNext tasks for Visual Studio Online

Hosted TFS, now called Visual Studio Online (VSO), has a new way of writing build processes called Build vNext. Agent tasks are the building blocks of processes and you can supplement the built-in ones with custom build tasks defined in JSON that use targets written in node.js or PowerShell. Jason Crease shows how to develop custom build tasks for building, testing, publishing and synchronizing databases.… Read more

Stumbling Towards Database Change Management

The scale of change in the insurance and financial markets is such that there is little time for the application or database developer to sit back and work out ways of improving the delivery process. Over time, however, it is possible to improve the process so that individual heroics are required less and less as release and deployment become more managed and predictable. It can be messy and error-prone at times but the long-term benefits make the struggle worthwhile.… Read more

Microsoft and Database Lifecycle Management (DLM): The DacPac

The Data-Tier Application Package (DacPac), together with the Data-Tier Application Framework (DacFx), provides an alternative way to automate the process of scripting out, or deploying a SQL Server database, reporting on changes, or checking version-drift. As such, it seems to provide an obvious cost-free start for tackling automated Database Delivery as part of Database Life-cycle Management (DLM). We asked Phil Factor if it is ready for Prime-time.… Read more

What is Database Lifecycle Management (DLM)?

When the different teams that are involved throughout the life of a database fail to reconcile their different roles and priorities, and so fail to cooperate, or work adaptively, the result is gridlock: databases defined as though carved in stone rather than by code and data. DLM offers an alternative that allows databases to respond quickly to business change.… Read more

Managing Test Data as a Database CI Component – Part 2

Once you're clear about what data the developers and testers need to be able to be effective, you have several alternatives approaches to providing them exactly the data that will give you rock solid database tests that will allow deployments with far less risk. Tim goes through some practical demos to show you how you can automatically keep your testing environments up to date, and thereby ship more robust databases.… Read more

Deploying the same database to many different RDBMSs

With the idea of a generic Dacpac defined by international standard, comes the potential for a Visual Studio developer to use SSDT to create a generic database model to a SQL-92 compliant standard that can then be deployed to any one of the major RDBMSs. The same database model would be deployable to Oracle, MySQL, or SQL Server, for example. Professor Hugh Bin-Haad explains the reasoning and technology behind this.… Read more

Integrating Database Lifecycle Management into Microsoft’s Application Delivery Process

In order to automate the delivery of an application together with its database, you probably just need the extra database tools that allow you to continue with your current source control system and release management system by integrating the database into it. If you're using the Microsoft stack, then Redgate's tools can help with some of the difficult database parts of the process, as Jason demonstrates.… Read more