I just got back from another great meeting at my local SQL Server User Group. In tonight’s meeting we had a presenter named Joe Toscano. Here’s some info about Joe the presenter:
Joe Toscano of RDA is a SQL Server Business Intelligence consultant, instructor and speaker based near Philadelphia, Pa. He has worked extensively with SQL Server since version 6.5, as well as Sybase and Informix prior to that. Joe’s areas of expertise include Data Transformation Services (DTS), Integration Services (SSIS), Transact-SQL (T-SQL) programming, data warehousing, performance tuning, replication, high availability (mirroring), security, disaster recovery, upgrading, migration projects and lights-out DBA tasks.
Joe was an absolutely wonderful presenter. You can really see his passion and knowledge for databases by his expressions and demeanor throughout his entire presentation. I was intrigued by his session from the beginning and he kept me extremely interested until the very end. I thought the information I learned from him made for a great post so that’s why I am sharing that information with you all now. So, Policy management. What are they all about?
Well Policy Management is a new feature in SQL Server 2008. It allows you to define and enforce policies for configuring and managing SQL Server across the enterprise. It requires setting up a Central Management Server (CMS) which acts as the traffic cop that monitors the other servers in your environment. This CMS server must be SQL Server 2008, but it can monitor lower servers, like 2005 and 2000 etc. When using the policies in 2008 and 2005, the policies actively prevent the conditions from occurring by issuing errors via ddl triggers. With the servers pre 2005 they didn’t have this functionality yet so it is more of an after the fact implementation. It’s still a great mechanism to keep track of those things none the less.
So, before we can dive deeper into the subject and see some examples there are a number of terms that we need to define and understand regarding Policy-Based Management and those terms are:
- Target - an entity that is managed by Policy-Based management; e.g. a database, a table, an index, etc.
- Facet – a predefined set of properties that can be managed
- Condition – a property expression that evaluates to True or False; i.e. the state of a Facet
- Policy – a condition to be checked and/or enforced
I found this great step by step walkthrough with screenshots from Ray Barley on how to set up Policy-Based Management

