Are you looking for SQL tools to make your life simpler while improving your productivity? Redgate’s got them bundled in their product, the SQL Toolbelt. Interested? Then read this product review.
I’ve been using Redgate’s tools for more than 2 years now and I can’t imagine doing my work without them anymore. They are making my job so much easier and hence make me more productive. For example, with SQL Prompt I don’t need to type out every piece of code and my code is nicely formatted and without typos. With SQL Source Control I can easily save my code in my database repositories from SQL Server Management Studio (SSMS), just like my colleagues working on the application code, making Continuous Integration possible. With DLM Automation our code changes are build automatically, making it possible to deploy them at the push of a button! This alone is a good reason to buy the SQL Toolbelt, because it solves a lot of your database deployment pains.
Tools included in the bundle
I already mentioned SQL Prompt, SQL Source Control and DLM Automation, but there are more products in the SQL Toolbelt. Here’s a complete list:
- SQL Compare Pro
- SQL Data Compare Pro
- SQL Source Control
- SQL Prompt
- SQL Search
- SQL Data Generator
- SQL Doc
- SQL Test
- DLM Dashboard
- DLM Automation
- SQL Multi Script Unlimited*
- SQL Dependency Tracker
- SQL Comparison SDK*
- SQL Monitor
- SQL Backup Pro
* Because I haven’t used these products (yet), I’m not going to discuss these here.
SQL Compare Pro and SQL Data Compare Pro
These tools are great for detecting differences in the same database in different environments. For example, between your development and test environment. Comparing is simple, even from SSMS. After the comparison is done, you can choose to let the tool do the deployments or to let the tool create a change script (which obviously can be re-used later on, for Production for example).
At my shop we have automated database deployment pipelines with DLM Automation (see below) and don’t use the SQL Compare products to do deployments, but I still use the compare products regularly. I’m not going to dive into the specifics, but they help me with security and troubleshooting.
SQL Source Control
Like I said in the previous section, at my shop we have automated database deployment pipelines and we do database Continuous Integration (CI). To enable CI, you have to have your database(s) in source control. I’m not going to elaborate here about other reasons why you have to have your databases in source control, a lot of other people already did (like Grant Fritchey, for example).
After creating an empty database on your local environment, you can link it to your source control repository from within SSMS using SQL Source Control. When you update/checkout, your local database is updated with the entire database schema and you can start developing. When you’re satisfied with the changes you’ve made, it’s easy to commit them to your source control repository from within SSMS with just a few clicks. You can us SQL Source Control with various source control systems like GIT and SVN.
Like I said in the introduction, writing SQL with SQL Prompt just makes my life so much easier. Recently I had to write some SQL on a box without SQL Prompt and because I’m so used to SQL Prompt, it felt like I took an exit from the highway to a dirt road. Need I say more?
This free tool is included in the SQL Toolbelt as well. For me it proved to be invaluable. For example, I inherited a Data Warehouse and I had to know which stored procedures were using a certain staging database on another server (yes, yuk linked server yuk). I opened SQL Search in SSMS, typed in the database name in the search field and voila: it returned a list of all objects containing the database name. With the handy ‘select in Object Explorer’ option, I could then go directly to the objects involved. In short, SQL Search is a really handy tool to find stuff in your database code quickly.
SQL Data Generator
I wasn’t planning to write about this tool, because I haven’t used it. I have played around with it though and this is what I can say about it: if you refresh your environments from production and you need to obfuscate sensitive data, this is your tool. It’s also very handy when you need to populate and empty database, for example after checking out a database from source control.
Do you like to document your SQL Server instances and databases? If you’re like me, you don’t. You know it’s important and you have to, but you also know it can be dreadful. SQL Doc comes to the rescue. With SQL Doc you can document your instances and databases with a few clicks resulting in nicely formatted pdf’s. You can even automate this process by creating a SQL Agent job which runs SQL Doc for you and store the resulting files, which is what I have done.
I’m not using SQL Test yet, but I know I will someday. Why? Because testing is an essential part of Continuous Delivery. If your company is implementing Continuous Delivery and/or DevOps practices, sooner or later automated testing will be implemented. Maybe your developer or quality assurance colleagues have already implemented automated testing for software. With SQL Test there is a way to do automated testing for databases as well.
Let’s say you get an alert from your database monitoring tool, indicating a sudden performance problem. One of the first things you want to know is ‘what changed’? Did someone deploy a database change? Wouldn’t it be easy to have a tool where you can see that straight away? With DLM Dashboard you can. It shows the state of your database in each environment. You can see where a database release in the pipeline is deployed and if it’s intentional. If changes to a database were made not following your predefined process, this is called database drift, and you can see it straight away and be alerted to it.
This is the tool you need to set up Continuous Integration and which can enable you to do push-button deployments. In software development, Continuous Integration and Continuous Delivery practices like automation, are already pretty common. The database, however, is catching up quickly (I hope). So, if you want to automate your database delivery pipeline, this is the tool of choice. One day, with the correct setup, you can even let your developer colleagues deploy database changes to production in a save way without having access to production. Why do you even want that you may ask? Well, in today’s world, as a business you can only win if you are able to deliver features to customers fast. If your company can deliver software fast, but not the accompanying database changes, then the latter is the bottleneck. So, if you are a DBA and you automate your database deployment pipelines, you suddenly become an enabler instead of a blocker. How cool is that! The days of DBA’s being a blocker will be over :-).
Redgate’s SQL Monitor is one of the many SQL monitoring tools that’s out there. So why do you want to choose Redgate’s SQL Monitor? I struggled with the same question. It’s hard to compare all SQL monitoring tools and the comparisons that are out there on the Internet are usually outdated. I believe that your choice should depend on your situation, so you have to ask yourself what you want from such a tool. I wanted:
- Easy to understand and easy to use (intuitive) interface, so my operations colleagues can also understand and use it. In the end, they are the first responders at 3 a.m..
- I need to have a history in a nice graphical user interface of various performance counters.
- Our developers and quality assurance engineers need to have read-only access. In a Continuous Delivery world it’s important to have short feedback loops. If developers and testers can see what happens in their development and test environments, they can triage potential problems themselves. It also liberates the DBA.
- Alerting: my monitoring system must be able to send out alerts.
- Dashboard: I want to know which state my instances are in.
In the end, I chose SQL Monitor not only because it is a good product, but it’s also so much easier to have a one-stop shop.
SQL Backup Pro
Backups, the basis of Database Administration. You have to have backups to be able to recover from a data loss event. Wouldn’t it be nice if making backups or recovering databases from them was easy and fast? With SQL Backup Pro it is. Thanks to its compression techniques, with this product your backups and restores will be fast and use less storage. What about testing your backups? With SQL Backup Pro you can automate this. We recently changed from a different backup product to SQL Backup Pro. We were very happy about the product we had, but we needed to renew the license. It turned out to be more expensive and we could do the same with SQL Backup Pro. Just like with SQL Monitor, I like to have a one-stop shop for my tools.
No product is perfect, but what I want from software products is that they are continuously being improved at a reasonable pace. My experience so far is that when I report a bug, which is very easy to do, I get a quick response and the bug is usually solved within a reasonable timeframe. Redgate’s also continuously improving their products at a fast pace. Just have a look at the release notes section on one of their product documentation pages and you’ll see. This is not only due to the way they work, it’s also the result of their effort listening their customers.
Recently there have been a lot of changes at Redgate in how they put their products in the market. Not only did they simplify their product bundles, they also changed their prices to the customer’s benefit. For the SQL Toolbelt you can choose to buy licenses for the SQL Toolbelt Essentials (9 tools included) or the complete SQL Toolbelt. If you don’t know how many licenses you need, just drop them an email. They are happy to sort things out for you.
How many SQL Toolbelt licenses do I need?
As I said, the Redgate people are happy to sort things out for you. You may wonder for example why you need SQL Backup Pro and SQL Monitor when you’re only purchasing licenses for your developers. In that case you can just go for the SQL Toolbelt Essentials, which doesn’t contain these tools. But if you need, for example, to monitor and backup 10 servers and provide 10 developers with licenses for tools like SQL Compare, then 10 SQL Toolbelt licenses are sufficient (not 20!).
For almost every product in this bundle there is an alternative. I haven’t tried or worked with any of these, except for DELL’s LiteSpeed for SQL Server (backup/restore), so I can’t say if they’re better or not. What I can say, is that I haven’t seen product bundles or suites which are so complete as the SQL Toolbelt. And I like it to have all my tools under one roof.
Ease of use
Downloading and installing the SQL Toolbelt from the Redgate website is fairly straight forward. After you start the installer, you can select or deselect the tools you want to have installed on the machine you’re installing on. Tools like SQL Search, SQL Compare, SQL Source Control, SQL Doc and SQL Data Generator can be started easily from within SSMS and are very intuitive. Just like the GUI’s for SQL Monitor, DLM Dashboard and SQL Backup Pro. SQL Prompt will automatically work when you start to code T-SQL. Maybe you have to get a little used to it, but soon you´ll find you never want to go back. DLM Automation is not something you use, like when you´re developing. It´s part of your (semi -) automated database deployment pipeline. Setting those up takes effort and time, but once set up, you will reap the benefits.
The people who benefit from the SQL Toolbelt the most
Mostly SQL Server DBA’s and developers, because they work with the products and become more productive. Ultimately, because end-users can react or deliver faster, the entire company will benefit.
This year (2016) I’m a Friend of Redgate, which means that I give Redgate feedback on their products, write reviews and more. They don’t pay me for doing any of the activities I do related to their products, like writing this review. It actually costs me time. So why do I do it? Well, it’s fun to be involved in a group like that, helping to shape their products. If their products get better, my life and that of others gets better.
With Redgate’s SQL Toolbelt you now have a one stop shop for all your SQL Server tool needs. It provides tools which not only benefit developers and DBA’s, but also the rest of the company. They are easy to use, they will definitely increase productivity and therefore are worth your investment. No more shopping around for different tools. Everything now is bundled in one product. More detailed information about the SQL Toolbelt is available from www.redgate.com/sqltoolbelt.