Skip to content

Stedman SQL Podcast Sn 2 Ep 12 Database Health Monitor Features

Sql podcast database health features

Stedman SQL Podcast Season 2 Episode 12 Database Health Monitor Features

In this episode of the SQL Server Podcast, we explore the latest enhancements to Database Health Monitor, our free SQL Server monitoring and diagnostics tool. We cover several powerful new features designed to improve the user experience and give DBAs deeper visibility into their environments. This includes new reports for better database insights, additional health checks and warning messages, and the all-new cardinality report. We also introduce the TDE (Transparent Data Encryption) Status Instance Report to help track encryption status across your servers. Plus, we discuss upcoming licensing changes and what that means for current and future users of the tool. Whether you’re already using Database Health Monitor or just starting out, this episode is packed with insights to help you get the most out of your SQL Server environment.

Podcast Transcript

Steve Stedman  00:16

Welcome everyone to the Stedman SQL Server Podcast. This is season two, episode 12, and today we’re going to be talking about some new features in Database Health Monitor. But before we get into that, I want to point out that April is JOINs month at Stedman Solutions, if you’ve not downloaded our free JOINs poster, can download the PDF of that at Stedman.us/poster and I also want to point out, we’re offering a 35% off of our JOINs class for the month of April. Get the class for just under $20 and the short URL to get that coupon is Stedman.us/35offApril. Today, we’ll be discussing the latest enhancements in Database Health Monitor and we have Mitchell Glasscock joining us. Welcome Mitchell. So today we’re going to talk about some latest things you’ve been working on. But before we get into that, let’s just talk about real briefly, what is Database Health Monitor? If someone’s listening and joining us for the first time and they haven’t seen it, how would you summarize what Database Health Monitor is?

Mitchell Glasscock  01:20

Yeah, so Database Health Monitor is our in house monitoring system that we’ve built out. I mean, you’ve been working on the project for what, 14 years, I think 14 years now, and I joined the team last year to take over lead development role. But we use it all over the place. We use it with all of our clients. And then we also provide it as an application for other people to use for their Database Health Monitoring needs.

Steve Stedman  01:49

Yep. So if someone hasn’t seen Database Health Monitor, you can get Databasehealth.com there’s a free trial you can download there. And basically, Database Health Monitor is something that I started out with trying to take all of those queries that you won’t regularly use as a DBA and put them into a cool user interface to make things easier. And it’s grown a lot since then, for sure. All right, well, on to some of the new user experience enhancements. One of the things that was added recently was Ctrl mouse wheel role support. You want to tell us about that?

Mitchell Glasscock  02:23

Yeah, so we found ourselves sharing our screen a whole bunch with clients, and because we are developers, we use really big screens, and those really big screens don’t do well with screen sharing, so we have added scroll wheel to zoom on most of our advisors, most of our reports, you can scroll in and get that text a little bit bigger to make it easier to see.

Steve Stedman  02:49

And we’re still finding a couple places. We haven’t done it in, but we’re adding it in wherever we can, because we realize that there’s a lot of things that are easier to share if we can make the font just a little bit bigger, but we don’t want it to be that big all the time, because it would be challenging to work with. It was have pig all the time for

Mitchell Glasscock  03:07

Yeah, it’s just one of those quality of life things that we’re trying to enhance the application more.

Steve Stedman  03:14

Great. So then we’ve got a couple of new reports that have been added for better database insights and new features. So if we want to take a look at one of the table, use report, yep, and this is one. Well, okay, we’re on a test database, so it’s not quite as useful as if it was on our busy production system, but you want to tell us about this.

Mitchell Glasscock  03:45

So table use is going to show you the information of when it last queried. So you, if you’re looking at your database or some tables and you’re not very familiar with it, or you’re like, I made this a couple years ago, and I don’t remember if it’s even still used to this day, you can go in here and see if it is still used, how long ago it was used, and stuff like that from specific databases.

Steve Stedman  04:08

Yep. One thing to keep in mind with the table use report is that the data used to track it gets reset when SQL Server restarts, I believe so. If you’ve just restarted your SQL Server, you might have a lot of tables that are showing up as not being used, but if a SQL Server has been running for a few days or a week or longer, you should have some much better statistics here on which tables are actually in use. Yeah, and this one actually came from a customer. I was on a call with a client, and they said, you know, we’d really like to understand which tables in our database are being used and which ones are not. And I initially, on the call, I couldn’t think of a really good way to do that, so I kind of pondered it and dwelled it on it for a while, and came up with some ideas and put this together. And I don’t remember, did I add this one myself? Or did you help on this one? I don’t. Remember, it’s been a little while. Yeah, okay, and it’s one of those that it’s been quite handy since we added it. So for sure, take a look at it and check it out with this.

Mitchell Glasscock  05:08

We also added the you’ll see it up here at the top the Related Links section. So we have hundreds of reports in Database Health Monitor, and a lot of them work in conjunction with each other. So we’ve added the related links to both database and instance level reports. So if you’re looking at your table, use report and the table sizes is also something that you want to be able to view quickly. That’s going to be a quick, easy jump straight into that report.

Steve Stedman  05:37

Those were added, really to save a ton of time, and I think that one of the things that used to drive me a little bit crazy was, if we’re looking at issues, I’d always be on the instance level report for the what is active report and for the blocking queries report, and I would just be flipping back and forth between the two of them, but it was a few clicks to get between each one of them, because you’d have to go back to the main level and then click on the next report, whereas now those two are just linked with the related links. And if, well, I don’t know if we even have any active queries on here, but if we click in on the what is active or the blocking queries, we can then show how quick it is to flip back and forth between those. Yeah, there’s the what is active and there’s the blocking. And instead of having to go back to the main SQL Server instance level to jump between those, it’s just there that quick. The other thing we’ve been doing on a few of these is we’ve been adding some links to related videos as well, where one of those links will be a link to YouTube that talks about that report. We don’t have those for everything yet, but when we do have them, we’ve been adding those into so related links is definitely a cool, cool enhancement there, for sure.

Mitchell Glasscock  06:50

And then with this last update, we also added two new Quick Scan checks. Steve, I believe you added both 236 and 237 236 is link servers without data access. It looks like I’ve crashed it on this probably because we’re running a lot of back end tests.

Steve Stedman  07:11

Okay, yeah, so I’ll talk about the Quick Scan checks and about the dangers of running a development version of Database Health Monitor on a demo. What the Quick Scan is, it’s way to go through, and we scan a lot of the common things that we see on SQL Server, and bring up a report on that and check number 236, was added. And what it is it looks for Link servers that are configured without data access. This came from a migration we’ve done with a client, and somehow they ended up with some link servers that the link server appeared to be there, but it didn’t work because data access was disabled. So it’s just a check that highlights which link servers are configured and if they have data access or not. And, you know, there’s the link servers report too, which, I don’t know if we have that on the list later, but that also included that information as to whether data access is configured or not. The other check was check number 237 which was for merge replication conflicts. And there’s a lot of clients that we work with who use merge replication, and one of the things I’ve found over the years is I’ve created a lot of custom scripts that catch when merge replication has a conflict, because with merge replication, oftentimes you get a conflict that you conflict that you have to manually resolve. Well, instead of doing another custom script for that, we decided to build in the merge replication conflicts right into the Quick Scan check so that we know about it right there, quickly and directly. So that’s one that was added. And if you’re not using merge replication, you’ll never know about this one. But if you have merge replication on and you have conflicts that need to be resolved, that’ll show up in the quick scan report now too. Next the new cardinality report. You want to tell us about this one?

Mitchell Glasscock  08:50

So this goes hand in hand with our missing indexes report. So if you do have any missing indexes, and you want to see if those indexes are worth adding. So this is something that we ran into. SQL Server suggest indexes to add, and we report on that, and sometimes it’s not the best at deciding which indexes are the most important to add. So we’ve added this show cardinality. What was that?

Steve Stedman  09:23

Oh I was just laughing because, yeah, I mean, you can never trust the missing indexes that SQL Server tells you have taken with a grain of salt and do a little bit of research, right? That’s where this new report comes in.

Mitchell Glasscock  09:34

So this cardinality report will show you the cardinality of each column that SQL servers, suggesting that index on so in here, we can see that we do have a decent amount of cardinality within this ship city and the ship region. For this suggested index, we have Rio de Janeiro with 404,352 entries. It, but we do have a whole lot of other cities that are in here. Sometimes SQL Server will suggest an index where it’ll be one column or one entry in that column and a super high count of it, and there’s no reason to build an index on that column.

Steve Stedman  10:20

Yeah. The whole point of adding an index is to try and filter the results down. And if that column only ever has one value in it, it’s not doing you much good at all. Is it? Okay? Well, that was a that was a good one. I know that was requested by one of our developers in house, and but it’s turned out to be quite valuable since it’s been added. So nice work. Okay, next we have the TDE or transparent data encryption status instance report, and with SQL Server 2019 making Transparent Data Encryption available for standard level instead of just Enterprise Edition, that means that TDE on 2019, and 2022, and newer, is available for a lot more people. So a lot more people are moving to start using TDE and this report. What does this report do? Mitch,

Mitchell Glasscock  11:15

so this will show you the TDE statuses for each of your databases. In here we can see that the encryption status for every one of these databases is unknown because we don’t have TDE encryption enabled on any of these test databases. But if we go back and look at one that does have some TDE, it’s going to show us that it is encrypted, and it’s going to show you your algorithm, key length, the cert name that was used for that subject. And then, if it’s complete, if you currently have any TD that is currently encrypting, it will show the percent status of how long it’s taking. And then, as well as the last backup for that.

Steve Stedman  11:56

Oh, that’s great, the last backup of the certificate, right? Yes, correct. And that’s one of those things that with transparent data encryption, backing up that certificate is super important, because without that certificate, you’re not going to be able to do a restore of your database, right? So, yep, okay, well, I guess that’s one of those things that I would like to ask the question, if anybody wants to post it in the comments below, if you’re using SQL Server, 2019, or newer, are you using TDE transparent data encryption? And if you’re not using it, why not? I’d really be curious to understand that, because it’s included, and it’s a great way to help protect your data and protect your data at rest. So, right? Just curious on that one, right?

Mitchell Glasscock  12:42

Especially in the case of sensitive information, if you’re covering PII or health information, or any, any of the sensitive information that might be held in the database, why not use it if you have it exactly,

Steve Stedman  12:55

Okay, that’s great. So then another thing I wanted to talk about was about a two year old feature that a lot of people don’t know about, but that I just want to share, is that if you go to the Help menu and then choose Update to latest version, what that will do is that will reach out to the database health.com website and go grab the latest installer, the absolute latest version of Database Health Monitor and install it to upgrade your current version you have here. This is one of those things I came across. I know on startup, we prompt you for whether you need to upgrade to a newer version or not. But I came across some clients who were using a two and a half year old version, or a two year old version, because this feature was in there at that point of database, health monitor, and I asked them, Why are you running this older version? Because we have so many new features we’ve added. And they just did the quick update. They got the newest version, and they were just really in awe, or they were shocked at how many new things we’ve added over the last two years. So make sure you’re always running the latest version of Database Health Monitor, and if you’re prompted on startup, considering updating that when you get that option. And there’s just lots of new features and lots of bug fixes along the way as well, for sure, cool. Okay, that was on the Help menu, and update to the latest version. And then next, let’s talk about some of the licensing changes that are coming in the future.

A little bit of history on this one, like Mitch said earlier, we’re I’m 14 years into developing Database Health Monitor, and in the beginning, I started out just doing it as a side thing. Little bit of time here and there as I had available and giving it away for free. I think I called it a beta for about eight years, and then in 2020 we changed the licensing, I believe, to take it from completely free to you had to pay if you were using more than one server connection. Yeah, and we had a number of options where you can get a few free connections. Well, one of the things is, as it’s evolved, we now have more cost. We have more people working on it. Mitch is almost full time on Database Health Monitor, other than when I’m distracting him with other projects. And so we’re at the point where we’re no longer able to give it away as a free version, even for the one user. So we’re currently working on the next version, and in that next version, there will still be a free 30 day trial. But what will be going away is the one SQL Server for being on our mailing list. And what’s saying is that for people who have bought our classes, they get two server connections. For people who are who have purchased the database, health monitor, course, all of those people will continue to be able to use it, of course. And then for those people who helped with our Go Fund Me that we had, gosh, I think in 2018 or 2019 that who now get unlimited server connections, those will all stay, but it’s just those that one server connection for being on the mailing list, that option is going to be going away, and after that 30 day trial, it’ll it will require a paid version. But the good news is that that paid version, the price on it, is the absolute lowest price for any monitoring tool like this. And it’s a really, really good value there, depending on how many SQL servers you need to connect to. Yeah. So, okay, Mitch, you have anything else you want to add on any of these features, or anything I might have missed along the way.

Mitchell Glasscock  16:36

I think that covers all the features. I do know that we have some really exciting stuff coming out. I know we talked about the pricing stuff, but we are working along with that. We are working on some pretty big things behind the scenes. We can’t tease them yet, but yeah, be sure to stay up to date with that as soon as it releases.

Steve Stedman  16:54

Yep, and you know that’s the interesting thing, because it didn’t just start out with, how can we charge more for this? It started out with, what can we do as the next really big, really cool thing in Database Health Monitor, and that will hopefully be coming in the next couple of months. And Mitchell and I have been working on some really, I don’t know, innovative or really cool features that will add far more value than you’ve seen in the past with Database Health Monitor. So that will be coming in that next big release. So, all right, well, I guess then, if somebody wants to try out Database Health Monitor and get it and download at database health.com there’s a link there to download. And I guess thanks. Thanks for joining us for this one. Mitch, kind of a quick and to the direct to the point today. But good, good info. Thank you for joining, of course, thanks for having me on.

So please join us next week and where Shannon and I will be discussing blocking and deadlocks and the difference between blocking and deadlocks. And then, just remember, we’ve got a lot of episodes. We’re somewhere over 25 episodes we’ve done since we renamed this to our podcast last year. But one of our most popular episodes we had was our February 5 episode, which was on indexing. So if you didn’t see that February, February 5 episode on indexing, please go check that out. For some reason it appears to be the most popular one. And don’t forget, you can watch this episode or all of our other episodes from this year or last year or into the future on YouTube or on Spotify. And we’ve got a couple of short URLs to get you there. You can go to stedman.us/podcastYouTube, or you can go to stedman.us/podcastSpotify, and either of those will redirect you to the podcast on YouTube or on Spotify. And as always, if you need any help with your SQL servers, you can reach out to us at Stedman solutions for help. That’s what we do all day, every day, helping people with their SQL server needs. So thank you for joining us, and please join us for that blocking and deadlocks episode next week. Have a great day.

Thanks for watching our video. I’m Steve, and I hope you’ve enjoyed this. Please click the thumbs up if you liked it. And if you want more information, more videos like this, click the subscribe button and hit the bell icon so that you can get notified of future videos that we create.

Getting Help from Steve and the Stedman Solutions Team
We are ready to help. Steve and the team at Stedman Solutions are here to help with your SQL Server needs. Get help today by contacting Stedman Solutions through the free 30 minute consultation form.

Contact Info for Stedman Solutions, LLC. --- PO Box 3175, Ferndale WA 98248, Phone: (360)610-7833
Our Privacy Policy