From time to time, I see the following question posted on various SQL Server forums by different users asking why the msdb database on their SQL Server instance is too big. As we all know, msdb is a system database that supports SQL Server Agent service, and stores all the information and history about job scheduling, job history, backup and restores, service broker, database mail and other maintenance activity. It is very important to regularly purge the following msdb history tables, because without regular maintenance, these system tables can grow to very large sizes, which results in unexpected growth of msdb database and slow performance during backup and restores and database mail operations.
Checkout my here, in which discussed how we can purge msdb backup, job, and database mail history tables.
This article is published on SSWUG.org.