Skip to content

Microsoft

SQL Server: msdb too big with the table dbo.sysmaintplan_logdetail

Today, I was by a new customer and the I see that the msdb data file was over 4GB. A little too big… To see which table are so big, in SSMS, I select the msdb database, right-click, go in Reports>Standards Reports> Disk usage by Top Tables As you can see, the table dbo.sysmainplan_logdetail is the big one with a… 

SQL Server: Cannot execute as the database principal “dbo” does not exist

By a customer this month, I see a very big big ErrorLog file (more than 1,5GB). When I open the file, every 5 seconds, the following message is added: The activated proc ‘[dbo].[IdentityServerNotificationCleanup]’ running on queue ‘<database>.dbo.IdentityServerNotificationsQueue’ output the following:  ‘Cannot execute as the database principal because the principal “dbo” does not exist, this type of principal cannot be impersonated,… 

How to find the TLS used for the SQL Server connection

For a customer, I do some research to find which TLS is used on the SQL Server environment. The only way is to create an Extended Event. A big limitation is that the event used is only available on SQL Server 2016 and +. Before use the Built-In Diagnostics (BID) traces. After I implanted the first TLS Monitoring on  a… 

How to view and change SQL Server Agent properties with T-SQL queries

Few days ago, after a reboot, we had this warning on the Agent Error Logs on many servers: Warning [396] An idle CPU condition has not been defined – OnIdle job schedules will have no effect “The CPU idle definition influences how Microsoft SQL Server Agent responds to events. For example, suppose that you define the CPU idle condition as… 

SQL Server 2019: What’s new on database scoped configuration options?

SQL Server 2019 added three new options in sp_configure and sys.configurations. First, how can we find the difference between these SQL Server Versions. This simple query will give us the number of options and the SQL Server Version: select count(*) as number_of_configurations, @@version FROM sys.database_scoped_configurations In SQL server 2016, we have 4 parameters for the database configuration: In SQL server… 

SQL Server: Fixing another huge MSDB database – 80GB+

I have blogged several times about unusually large MSDB databases like here. Most of the time the problem comes from the backup history which is never purged. This time it’s different. Try to guess, if not the backup history, what can cause MSDB to increase abnormally in size? Let’s start by looking at the total size of the database: It’s… 

SQL Server 2019: What’s new in sp_configure and sys.configurations options?

SQL Server 2019 added new options in sp_configure and sys.configurations. First, how can we find the difference between these SQL Server Versions. This simple query will give us the number of options and the SQL Server Version: select count(*),@@version FROM sys.configurations In SQL server 2016, we have 74 parameters for the instance configuration: In SQL server 2017, we have 77… 

SQL Server: How to compare Server and Database Collation

Sometimes during an SQL Server audit, I check the collation of the server and the databases but every time separately. The goal of this blog is to give you a script to have both and compare it. First step is to have the server collation and the code page. The code page will help to see if the character set… 

SQL Server: Analysis of SCOM Warning on the Health Check

Sometimes, it’s hard to find how to analyze a Warning in the SCOM Interface and correct the problem. By a customer, we install new instances in SQL Server 2019 and change the version of SCOM. All new servers have a warning on the Health. The first step in the SCOM interface is to go to the SQL Server Roles: On…