Open source

Scribe

Mirror databases fast.

When working on applications that use SQL Server, like Umbraco CMS, developers often need to replicate a database from one server to another. This can be complicated if there are barriers between servers, like different VPNs, or if you have limited permissions.

Enter Scribe.

This console app can script schema and data, and restore it in separate steps. You can effectively back up a database remotely, and then restore it later on any other server. It's script-based so it's great for limited access scenarios, and for versioning your database in git, subversion, or other VCS.

Some of the current benefits of Scribe:

  1. Backup and restore databases in script form. makes versioning, backup, and restoration simple. And it allows developers to break the cross-VPN barrier.
  2. Multi-threaded. Configure 1 or more threads to be used, depending on the capability of your SQL Server. If you're unsure, simply specify a desired thread count and Scribe will take a few seconds to see if your server supports it prior to running. if not, it switches to 1 thread. Using multiple threads dramatically speeds up backup and restore processes!
  3. 64-bit only. Databases get big. Scribe was built as a 64-bit app to make sure you don't accidentally run into file size issues. Scribe handles multi-gigabyte databases with ease.
  4. Chunks data scripts. Specify how big each data script file should be, so make restoration or backup faster. Smaller chunks thread faster.
  5. Transaction sizes are adjustable. You can also specify how large each batch of transactions are for the most efficient server memory management.
  6. Smart defaults. You may not have to set most parameters. Scribe defaults are pretty sensible.

Ready to check it out?

Visit our github account and clone the repository to check it out. If you'd like to contribute to the project, we'd love to have you! Just let us know.


Need help using this?

If you need help with this or any of our other open source projects, Fynydd can consult with you to get your project moving in the right direction. Just let us know by visiting our contact page where you can reach out or talk to us directly on our free slack community.