sql >> Base de Datos >  >> RDS >> Database

Creación de planes de mantenimiento de bases de datos

Usando planes de mantenimiento de bases de datos, podemos automatizar actividades básicas de administración de bases de datos. Los planes de mantenimiento son paquetes de servicios de integración de SQL Server que son ejecutados por el trabajo del Agente SQL Server según el programa configurado. Usando planes de mantenimiento, podemos automatizar las siguientes tareas.

  1. Reducir una base de datos
  2. Copia de seguridad de una base de datos
  3. Notificación al operador
  4. Actualizar las estadísticas de la base de datos
  5. Realizar una verificación de integridad de la base de datos
  6. Ejecutar trabajos del Agente SQL Server
  7. Ejecutar secuencia de comandos T-SQL
  8. Reorganizar o reconstruir índices

Además, podemos configurar una alerta para notificar a un DBA sobre el estado de ejecución del plan de mantenimiento al habilitar el correo de base de datos.

En este artículo, voy a explicar cómo crear un plan de mantenimiento básico para realizar una verificación de coherencia de la base de datos en una base de datos de usuario.

Requisitos previos para crear un plan de mantenimiento de base de datos

Para crear un plan de mantenimiento de la base de datos, los requisitos previos son los siguientes:

  1. Los servicios de integración deben estar instalados
  2. El servicio del Agente SQL Server debe estar ejecutándose.

Los servicios de integración deben estar ejecutándose

Como mencioné, los planes de mantenimiento de bases de datos son paquetes de servicios de integración de SQL Server, por lo tanto, para ejecutarlos, se deben instalar los servicios de integración.

Para verificar que los servicios de integración se hayan instalado, abra Administrador de configuración de SQL Server , seleccione Servicios de SQL Server en el panel izquierdo. Puede ver la versión del servicio de integración en la parte superior de la lista.

Si los servicios de integración no estaban instalados, instálelos con el instalador de SQL Server. Consulte este artículo como referencia.

El servicio del Agente SQL Server debe estar ejecutándose

El correo electrónico de la base de datos envía correos electrónicos o mensajes mediante el servicio del agente de SQL Server. Si los servicios del agente no se están ejecutando, SQL Server no puede enviar correos electrónicos. Mientras el servicio de agente no se esté ejecutando, todos los mensajes se pondrán en cola y, cuando se inicie el servicio de agente, se entregarán todos los mensajes en cola.

Para verificar el estado del servicio del agente, ejecute el siguiente comando en SQL Server Management Studio.

use master
go
EXEC xp_servicecontrol N'querystate',N'SQLAgent$CMS'

La salida es la siguiente:

Si el servicio del Agente SQL Server no se está ejecutando, debemos iniciarlo. Para iniciar el servicio del Agente SQL Server, abra servicios, vaya a Panel de control , haga clic en Herramientas de administración y luego haga clic en Servicios . En la lista de servicios, busque Agente SQL Server. . Haga clic derecho en Agente SQL Server y seleccione Iniciar .

Si desea enviar por correo electrónico el estado del plan de mantenimiento, debe habilitar el correo de base de datos y se puede hacer cambiando los parámetros de configuración de la instancia de la base de datos. De forma predeterminada, el correo de la base de datos la característica no está habilitada. Debe habilitarse cambiando el valor de configuración de Database Mail XPs.

Para habilitar Correo de base de datos , ejecute las siguientes consultas en secuencia.

USE master
Go
EXEC sp_configure 'show advanced options', 1 --Enable advance option
Go
RECONFIGURE
Go
EXEC sp_configure 'Database Mail XPs,' 1 --Enable database Mail option
Go
RECONFIGURE
Go
EXEC sp_configure 'show advanced options', 0 --Disabled advanced option
Go
RECONFIGURE
Go

Configuración de demostración

Para esta demostración, crearé un plan de mantenimiento para realizar una verificación de coherencia de la base de datos en FileStream_Demo base de datos. El plan de mantenimiento se ejecutará todos los domingos a las 00:00.

Versión de SQL Server :Servidor SQL 2017.

Software :SQL Server Management Studio.

Se puede crear un plan de mantenimiento de la base de datos utilizando el Asistente del plan de mantenimiento o utilizando la superficie de diseño del plan de mantenimiento. En primer lugar, explicaré cómo crear el plan de mantenimiento utilizando el Asistente para planes de mantenimiento .

Cree un plan de mantenimiento utilizando el Asistente para planes de mantenimiento

Podemos crear múltiples planes de mantenimiento utilizando el Asistente para planes de mantenimiento de bases de datos . El asistente tiene algunas tareas de mantenimiento predefinidas que se pueden configurar paso a paso.

Para crear un plan de mantenimiento con el asistente, abra SSMS, expanda Administración , haga clic con el botón derecho en Plan de mantenimiento y seleccione Asistente para planes de mantenimiento.

El Asistente para planes de mantenimiento Se abre el cuadro de diálogo, donde puede ver el resumen de las tareas que se pueden realizar con el asistente. Puede ignorarlo y hacer clic en Siguiente .

En el siguiente cuadro de diálogo, especifique el nombre deseado y la descripción del plan de mantenimiento. Especifique el usuario o cuenta que ejecuta el plan de mantenimiento. Como mencioné, puede crear múltiples planes de mantenimiento usando el asistente; este cuadro de diálogo contiene una opción para configurar la programación. Puede ejecutar todas las tareas al mismo tiempo o puede especificar un único programa para todo el plan. Especifique el nombre y la descripción deseados en el Nombre y Descripción cajas de texto. El Agente SQL Server ejecuta el plan de mantenimiento si cuenta de servicio del Agente SQL Server es seleccionado. Nuestro plan se ejecutará individualmente, por lo tanto seleccione Horario único para todo el plan o sin horario .

Para configurar el horario, haga clic en Horario junto a Cambiar caja de texto. El Programa de trabajo nuevo se abre el cuadro de diálogo. Especifique el nombre deseado en el Nombre caja de texto. El plan de mantenimiento se ejecutará semanalmente, por lo tanto, seleccione Recurrente en el Tipo de horario caja desplegable. Como se mencionó, el plan de mantenimiento se ejecuta semanalmente, por lo tanto, seleccione Semanalmente en el cuadro desplegable y marque Domingo. La tarea se ejecuta a las 12:00 a. m., por lo tanto, ingrese 12:00:00 a. m. en el cuadro de texto correspondiente. Haz clic en Aceptar .

Una vez configurado el horario, haga clic en Siguiente en Seleccionar propiedades del plan diálogo.

En Seleccionar tareas de mantenimiento cuadro de diálogo, seleccione Comprobar la integridad de la base de datos casilla de verificación y haga clic en Siguiente .

Si se han configurado varias tareas de mantenimiento, puede ordenarlas en Seleccionar orden de tareas de mantenimiento diálogo. Solo se configura una tarea, entonces no se necesita ninguna acción aquí. Haga clic en Siguiente .

En el siguiente diálogo, seleccione el nombre de la base de datos donde se ejecutará la tarea de mantenimiento. Seleccione el FileStream_Demo base de datos de las Bases de datos cuadro desplegable y haga clic en Siguiente .

En el siguiente cuadro de diálogo, seleccione la opción de registro. Puede escribir el estado de ejecución del plan de mantenimiento en un archivo de texto, o puede enviar un correo electrónico de alerta. Seleccione la opción deseada y haga clic en Siguiente .

En el siguiente cuadro de diálogo, puede ver el resumen de las tareas realizadas para crear el plan de mantenimiento. Revíselos y haga clic en Finalizar .

Una vez que se crea el plan, el Asistente del plan de mantenimiento se completa con éxito.

Cree un plan de mantenimiento personalizado utilizando la superficie del Diseñador de planes de mantenimiento

Como expliqué, el Asistente del plan de mantenimiento Tiene unas tareas básicas predefinidas que no dan más opciones de control y personalización. Por ejemplo, si desea ejecutar un script SQL antes de ejecutar cualquier tarea de mantenimiento, no se puede realizar con el asistente.

Para crear un plan de mantenimiento personalizado, abra SQL Server Management Studio, expanda Administración , haga clic con el botón derecho en Planes de mantenimiento y seleccione Nuevo plan de mantenimiento .

En el cuadro de diálogo, especifique el nombre deseado del plan de mantenimiento y haga clic en Aceptar. .

El diseñador del plan de mantenimiento se abre Tiene dos secciones. En la primera sección, puede especificar el nombre y la descripción del plan de mantenimiento. Puede cambiar las propiedades del subplan existente o agregar los subplanes a los planes de mantenimiento existentes.

La descripción de los componentes individuales:

Cuando crea un nuevo plan de mantenimiento, SQL crea un subplan predeterminado llamado Subplan_1 . Podemos editar las propiedades del mismo. Para editar el subplan predeterminado, haga clic en Editar propiedades del subplan botón. Alternativamente, seleccione el subplan de la vista de cuadrícula y haga doble clic en él. Las propiedades del subplan se abre el cuadro de diálogo. Especifique el nombre deseado del subplan y haga clic en Aceptar .

Como mencioné anteriormente, crearemos un trabajo de mantenimiento para realizar la verificación de consistencia de la base de datos. Arrastre Tarea de comprobación de integridad de la base de datos del Plan de Mantenimiento caja de herramientas y acceda al Diseñador de planes de mantenimiento superficie.

Haga doble clic en Comprobar la tarea de integridad de la base de datos . La tarea Comprobar integridad de la base de datos se abre el cuadro de diálogo.

En el cuadro de diálogo, seleccione la conexión de SQL Server desde Conexión caja desplegable. También puede crear una nueva conexión haciendo clic en Nuevo botón. Al hacer clic en Base(s) de datos cuadro desplegable, se abre un cuadro de diálogo con múltiples opciones. Puede realizar comprobaciones de coherencia en:

  1. Todas las bases de datos
  2. Solo bases de datos del sistema (maestro, msdb, modelo, TempDB)
  3. Bases de datos de usuarios
  4. Bases de datos específicas.

También puede ignorar la lista de bases de datos que están fuera de línea. Como se mencionó, queremos realizar una verificación de coherencia en FileStream_Demo base de datos. Seleccione FileStream_Demo de Estas bases de datos lista y haga clic en Aceptar .

Una vez que se complete la tarea de verificación de la integridad de la base de datos, programe su tiempo de ejecución. Para ello, haga clic en el Calendario botón en la barra de herramientas.

Como alternativa, puede hacer doble clic en el subplano para abrir las propiedades y hacer clic en Calendario. botón al lado de Horario cuadro de texto.

El Programa de trabajo nuevo se abre el cuadro de diálogo. Como se mencionó, el trabajo debe ejecutarse todos los domingos a las 12:00 a. m., por lo tanto, cree la programación en consecuencia. En el Nombre cuadro de texto, especifique el nombre deseado del trabajo, seleccione el tipo de programa deseado. En la Frecuencia sección, seleccione Semanalmente en el Ocurre caja de texto. El trabajo se ejecutará una vez a la semana, por lo tanto, seleccione 1 en Se repite cada caja de texto. Debajo, seleccione Domingo . En la Frecuencia Diaria sección, especifique la hora en la sección Ocurre una vez a las caja de texto. El trabajo se ejecutará a las 12:00 a. m., por lo tanto, ingrese 12:00:00 a. m. en él. Y finalmente, seleccione la fecha de inicio del trabajo y haga clic en Aceptar .

Una vez que se crea el horario, puede ver el resumen del horario en el Horario columna de la vista de cuadrícula del subplano.

Una vez creado el plan de mantenimiento, guárdelo. Puede ver el plan de mantenimiento en el Plan de mantenimiento directorio bajo Administración .

El Servicio del Agente SQL Server ejecuta el plan de mantenimiento; por lo tanto, el cronograma del plan de mantenimiento se incluye en Trabajo directorio. Para verlo, abra SSMS, expanda Agente SQL Server y expanda Empleos .

Puede ejecutar el plan de mantenimiento manualmente. Para ello, haga clic con el botón derecho en Plan de mantenimiento y haga clic en Ejecutar .

El plan de mantenimiento se completa con éxito. Puede ver el informe haciendo clic en Informe y seleccionando el botón Ver informe opción.

También puede mover la tarea de mantenimiento existente a otro servidor exportándola al sistema de archivos e implementarla manualmente en otro servidor. Como mencioné, los planes de mantenimiento de bases de datos son paquetes de servicios de integración almacenados en la base de datos MSDB. Para exportar planes de mantenimiento al sistema de archivos, conéctese a los servicios de integración mediante SQL Server Management Studio, expanda los Paquetes almacenados nodo, luego expanda Planes de mantenimiento , haga clic con el botón derecho en el plan de mantenimiento denominado Trabajo de comprobación de consistencia de la base de datos y seleccione Exportar paquete .

El paquete de exportación se abre el cuadro de diálogo. En la Ubicación del paquete cuadro desplegable, seleccione Sistema de archivos . En la ruta del paquete cuadro de texto, ingrese la ubicación donde se debe guardar el plan de mantenimiento y haga clic en Aceptar.

El plan de mantenimiento se exportará a la ubicación deseada.

Resumen

En este artículo, he explicado:

  1. Qué son los planes de mantenimiento;
  2. Requisitos previos para crear planes de mantenimiento;
  3. Cómo crear planes de mantenimiento personalizados;
  4. Cómo crear un plan de mantenimiento usando el asistente;
  5. Cómo exportar un plan de mantenimiento al sistema de archivos.

Herramienta útil:

dbForge Studio para SQL Server:potente IDE para la gestión, administración, desarrollo, generación de informes y análisis de datos de SQL Server.