Cómo configurar la ejecución automática programada de sentencias SQL en SQL Server 2000
Si necesita ejecutar un procedimiento almacenado o una declaración SQL dentro de los 3200 caracteres en SQL Server de forma regular o en intervalos,
puede utilizar Management-gt SQL Server agent-gt; tarea para lograrlo.
1. Gestión-gt; Agente SQL Server-gt; Trabajo (botón derecho del ratón)-gt; Nuevo trabajo-gt;
2. Nuevas propiedades del trabajo (general)-gt; ;Nombre [Personalizar el nombre de este trabajo]-gt; La casilla habilitada es una marca de verificación-gt
Se puede seleccionar la clasificación o se puede usar el valor predeterminado [Sin clasificar (local)]; El propietario por defecto es el usuario de SQL Server [también puede elegir otros inicios de sesión] -gt;
Descripción [completa la descripción detallada de este trabajo]
[Pasos para crear un clasificación de trabajo:
Agente SQL Server-gt; Haga clic derecho para seleccionar todas las tareas-gt; Agregar, modificar, eliminar]
3. Crear nuevas propiedades de trabajo ( pasos)-gt; Nuevo -gt; nombre del paso [nombre del primer paso personalizado]-gt; escriba [script Transact-SQL (TSQL)]-gt; comando
[ Si es un SQL simple, puede escribirlo directamente. También puede usar el botón Abrir para ingresar un archivo *.sql escrito
Si desea ejecutar un. procedimiento almacenado, complete el formulario
exec p_procedure_name v_parameter1,[ v_parameter2...v_parameterN]
]
-gt; > (Si hay varios pasos, puede volver a llamar al nuevo botón a continuación; también puede insertar, editar y eliminar pasos existentes
4. Crear propiedades de trabajo (programación)-gt; nuevo horario-gt; nombre [nombre del horario personalizado]-gt; Las casillas habilitadas son marcas de verificación -gt; Recurrente -gt;
Cambiar [Programación] -gt; p> (Si solo desea guardar este trabajo, no lo haga regularmente (puede quitar la marca de verificación en la casilla habilitada);
5. Cree propiedades del trabajo (notificación)-gt; solo use el método de notificación predeterminado [cuando el trabajo falla, escriba el registro del sistema de aplicaciones de Windows] -> Aceptar.
Algunos conocimientos de SQL Server relacionados con la ejecución del trabajo:
El servicio SQLSERVERAGENT debe ejecutarse normalmente y el usuario de inicio de sesión de NT que lo inicia debe ser el mismo que el usuario de inicio de sesión de NT que inicia el Base de datos del servidor SQL.
Haga clic derecho en el trabajo para ver el historial de ejecución del trabajo y también podrá iniciar y detener el trabajo inmediatamente.
Cuando estuve mirando los registros del historial de trabajos recientemente, descubrí que algunos trabajos tienen muchos registros históricos y otros trabajos tienen pocos registros históricos.
¿Cómo puedo hacer? ¿Ciertos trabajos funcionan según lo programado? Cada uno debe conservarse durante un período de tiempo. Por ejemplo, se conserva el historial de un mes.
Leí el documento de ayuda en línea de SQL Server, que decía:
.En Administración-gt; Agente SQL Server-gt; haga clic derecho y seleccione propiedades-gt; sistema operativo-gt; limite el tamaño del registro del historial de trabajos; el registro del historial de trabajos (número de líneas) tiene como valor predeterminado 1000 si una máquina El número de trabajos es grande, asegúrese de aumentarlo, por ejemplo a 100000
El número máximo de líneas en el registro del historial de cada uno El trabajo es 100 de forma predeterminada. Si el trabajo se ejecuta dos veces al día y es necesario conservar los registros de un mes, se puede establecer en 60. Existe una relación de restricción mutua entre ellos y podemos hacerlo. cámbielo según nuestras propias necesidades.
Si el servidor SQL Server cambia el nombre de la máquina, el trabajo de administración se creará con el nombre anterior. Es posible que encuentre el
Error 14274: No se puede. para agregar, actualizar o eliminar un trabajo (o sus pasos o programación) iniciado desde el servidor MSX
Lea la documentación de Microsoft: /default .aspx?scid=kb;
Se dice que el campo originating_server en msdb..sysjobs en el sistema SQL Server 2000 almacena el nombre del servidor original.
24X7 El sistema que estás utilizando no debe poder cambiar el nombre hacia adelante y hacia atrás como se describe en el documento de Microsoft anterior.
Entonces pensé, ¿puede msdb..sysjobs actualizar el campo originating_server al nuevo nombre del servidor actualmente en uso?
use msdb
seleccione * de sysjobs
p>Encuentre que el campo originating_server sigue siendo el job_id del servidor anterior y luego ejecute la instrucción de actualización:
update sysjobs set originating_server='new_server_name'
where job_id='B23BBEBE-A3C1-4874 -A4AB-0E2B7CD01E14'
(El número de filas afectadas es 1 fila)
De esta forma, puedes agregar, actualizar o eliminar trabajos que han experimentado el error 14274.
Si desea migrar un trabajo de una máquina a otra, puede conservar el script que creó el trabajo y luego ejecutarlo en la otra máquina.
Pasos para exportar el script de creación de todos los trabajos:
Administración-gt;Agente SQL Server-gt;Trabajo (botón derecho del mouse)-gt; script-gt; guardar en un archivo sql en el sistema operativo para exportar el script de creación de un determinado trabajo. Pasos:
Administración-gt; ser transferido (clic derecho del mouse) -gt; Todas las tareas-gt; Generar script SQL-gt; Guardar en un archivo sql en el sistema operativo y luego ejecutar el script sql recién guardado para crear el trabajo en el servidor de destino.
(Si el usuario que creó el trabajo o el usuario que se lo recordó no existe, se producirá un error;
Necesitamos establecer un usuario de WINDOWS relevante o un inicio de sesión de base de datos de SQL Server en el servidor de destino,
p>
También puede modificar el script para crear el trabajo y reemplazar el usuario que no existe en el servidor de destino con un usuario existente
Si hay un símbolo separador en. el comando @command de la cadena, go también causará un error, puedes eliminarlo)