DbUp
DbUp is a free, open-source .NET library for deploying database changes with SQL scripts.
What DbUp is
DbUp is a free, open-source .NET library for deploying database changes with SQL scripts. It records executed scripts and uses that history to decide which scripts should run during an update. By default, the history is stored in a SQL Server table named SchemaVersions. Scripts can come from embedded assemblies, the file system, static code, or custom providers. Listed database providers include SQL Server, MySQL, SQLite, PostgreSQL, Firebird, Oracle, and Amazon Redshift, among others. The upgrade engine can test connectivity, check whether an upgrade is needed, list pending or completed scripts, and perform upgrades. DbUp runs from console applications, embedded class libraries, websites, or PowerShell. Transaction choices are none, one per script, or one for the upgrade. Logging supports console, trace, SQL context, custom loggers, and Microsoft.Extensions.Logging providers. Variable substitution is supported, while missing variables raise exceptions unless commented.
Good
- Free and MIT licensed
- Tracks executed scripts
- Supports many database providers
- Runs from applications, websites, or PowerShell
- CI/CD automation support
Watch out
- Rollback support is not available
- Some changes cannot be rolled back
- Dynamic scripts can risk SQL injection
- Several listed providers are end of life
Who it suits
It suits .NET developers automating SQL-based database deployments in self-hosted applications or CI/CD workflows. Users should understand its transaction and rollback limitations.
Verdict
DbUp provides script-based database deployment with execution tracking, provider choices, and automation support. Review transaction behavior and script-security guidance before using it in production.
Plans and prices
From DbUp's own pricing page, checked 8 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| DbUp | Free | Open source · MIT licensed |
The facts
Each one read from DbUp's own pages, with the date it was checked.
What it does
- Database support
- The project lists providers for SQL Server, MySQL, SQLite, PostgreSQL, Firebird, Oracle, and Amazon Redshift, among others.checked 8 Oct 2026
- Deployment checks
- The upgrade engine can list scripts to execute or already executed, check whether an upgrade is required, test database connectivity, and perform an upgrade.checked 8 Oct 2026
- Execution history
- By default, DbUp records executed scripts in a SQL Server table named SchemaVersions and checks it to decide which scripts to skip.checked 8 Oct 2026
- Hosting
- DbUp can run from a console application, a class library embedded in an application, a website, or PowerShell.checked 8 Oct 2026
- Logging
- Built in logging options include console, trace, SQL context, custom loggers, and Microsoft.Extensions.Logging providers; logging is disabled when none is specified.checked 8 Oct 2026
- Maintained providers
- The repository identifies Sql Anywhere, SqlCE, and SQLite Mono as end of life and no longer maintained.checked 8 Oct 2026
- Purpose
- DbUp is a .NET library that deploys database changes by tracking executed SQL scripts and running those needed to update a database.checked 8 Oct 2026
- Script sources
- Scripts can come from embedded assemblies, the file system, static code supplied scripts, or custom providers.checked 8 Oct 2026
- Security limitation
- DbUp warns that dynamically generated code scripts can be vulnerable to SQL injection if database data is inserted into the resulting script.checked 8 Oct 2026
- Support
- The project points users to a Google Groups discussion group for questions and its GitHub issues page for bug reports.checked 8 Oct 2026
- Transactions
- It supports no transaction by default, a transaction per script, or one transaction, and cautions that not all changes can be rolled back.checked 8 Oct 2026
- Variable substitution
- DbUp supports basic script variable substitution, and throws an exception when a referenced variable is missing unless it appears in a comment.checked 8 Oct 2026
Alternatives to DbUp
- 1

Atlas
Free planOpen sourceWebAPILinuxmacOS8.3From $39 a month - 2
DeepFilterNet
Free planOpen sourceAPILinuxmacOSSelf-hosted7.6Free plan - 3
pgroll
Free planOpen sourceLinuxmacOSSelf-hostedWindows7.3Free plan - 4

Skeema
Free planLinuxmacOSWindows6.9From $649 a year - 5

Bytebase Enterprise
Free planWebAPISelf-hosted6.8From $20 a month - 6
Sqitch
Free planLinuxmacOSSelf-hostedWindows6.7Free plan
