Siguiendo con los posts sobre algunas de las novedades sobre SQL Server 2008, en esta ocasión voy a hablaros de Policy Based Management (PBM). Se trata de una nueva característica que facilita la administración de SQL Server 2008 a través de la definición de una serie de políticas claras y concisas, reduciendo la carga de trabajo de los administradores y los errores potenciales de administración. PBM se trata de un framework basado en políticas que permite implementarlas en base a un motor de políticas, el agente SQL, el CLR de SQL, triggers DDL (Data Definition Language) y el Service Broker. Estas políticas se pueden aplicar y evaluar en un sólo servidor o bien en un grupo de servidores, de manera que se mejora la escalabilidad de la administración y monitorización de SQL Server 2008. Empecemos.
Creando una política en SQL Server 2008
Como hemos comentado, n este post vamos a ver cómo funciona este novedoso mecanismo de creación de políticas de SQL Server 2008. En particular, veremos cómo crear políticas de nombrado en la que especificaremos las pautas a seguir a la hora de crear objetos en la BD y asignarles un nombre apropiado. Por ejemplo, una posible política es que sólo se podrán crear tablas que empiecen con el prefijo tbl.
Para crear una política con estas características:
- En SQL Server Management Studio nos vamos a la sección Management -> Policy Management -> Facets.
- Nos vamos a la sección Table, hacemos clic con el botón derecho del ratón y seleccionamos la opción New Condition. En la ventana que se abre especificamos los siguientes parámetros:
- Name: El nombre de tabla empieza por tbl.
- Facect: Está seleccionada la opción Table.
- Expression: especificamos:
- En el explorador de objetos, vamos ahora a la sección Policies, hacemos clic con el botón derecho del ratón y seleccionamos la opción New Policy. Especificamos los siguientes parámetros:
- Name: Convenciones en el nombrado de tablas (justo la condición que acabamos de crear).
- Marcamos el check box Enabled (Habilitando de esta manera la política de manera inmediata).
- Against Targets, verificamos que está seleccionada la opción El nombre de la tabla empieza por tbl.
- Execution Mode, seleccionamos On Change_Prevent.
Sin más, tras pulsar OK ya tenemos creada nuestra primera política con PBM.
Validando la política
Para validar que la política funciona, vamos a crear una tabla mediante el siguiente script T-SQL:
| USE SQL2008CDC CREATE TABLE failedpolicy (policyid int) |
Como el nombre de la tabla no cumple con la política que hemos creado, se produce un error:
Por el contrario, la siguiente query de creación de tabla debería funcionar sin problemas:
| USE SQL2008CDC CREATE TABLE tbl_passedpolicy (policyid int) |
Y hasta aquí llega lo que os quería contar sobre PBM. Espero que el post os haya resultado interesante.
Comparte este post: