Alternativa a SQL Agent

Es bastante común en las versiones Express de SQL Server que se busque una alternativa a SQL Server Agent para programar JOBS tan necesarios como actualizar algunas tablas o crear respaldos.

La alternativa es similar a lo que se hace con MYSQL, usando la herramienta OSQL para efectuar los comandos y creando una Tarea Programada en Windows.
El proceso consta de tres sencillos pasos:
1) Crear un archivo *.sql con las instrucciones deseadas (actualizaciones, respaldos, restauraciones, etc)
2) Crear un archivo *.bat que ejecute OSQL llamando al scritp *.sql creado.
3) Crear una tarea programada en Windows que ejecute el archivo *.bat (ó *.cmd).
Ejemplo:
Supongamos que deseamos respaldar una base de datos.
Abrimos el bloc de notas (o el Notepad++ ó Sql Server Management Studio ó el editor SQL que usen) y tecleamos:
USE Master
GO
BACKUP DATABASE [MiBaseDeDatos] TO DISK = N’C:\MisRespaldos\MiBaseDeDatos.BAK’ WITH INIT;
GO
Guardamos el archivo (“Miscript.sql”, por ejemplo).
Volvemos a abrir el editor y tecleamos:
OSQL -E -i C:\Ruta_A_Mi_archivo\Miscript.sql -o C:\Ruta_Deseada\Salida.rpt -n
Guardamos el archivo como “RespaldoMiBase.bat”.
Creamos la tarea programada en Windows, configurandola para ejecute el archivo: “RespaldoMiBase.bat”
Y listo.
El parámetro -E en OSQL significa que se usa una conexión de confianza. Si deseas configurar usuario y contraseña debes usuar los parámetros adecuados:
-U [Nombre de Usuario o Login] y -P [Contraseña]
El parámetro -n significa “no headers”, con ello los encabezados (carácteres y conteo de lineas) no se escribirán.
El parámetro -o significa archivo de salida. Especificando el archivo de salida provocará que lo resultados se impriman a este, pero no a pantalla.
Si utilizas una conexión de confianza no se te olvide incluir “USE [DATABASE]” o referir con ruta completa (BaseDeDatos.schema.Tabla) a las tablas de las base de datos.
No se les olvide probar antes el script SQL, la llamada a OSQL desde la línea de comandos y por último la ejecución del archivo *.bat.
Además, deben recordar que las tareas programadas en Windows dependen de la cuenta de usuario que les asignan, asi que si cambian la contraseña y no actualizan la tarea, esta no se ejecutará.

Related Posts

Conexión a Sql Server con Php 5.6 linux CentOS 6

admin

March 28, 2016

PHP, SQL SERVER

No Comment

Para conectarse a Sql Server desde linux utilizamos este comando para instalar el driver: [bash] $ sudo yum install -y php-mssql [/bash] Por ejemplo, para php5.6: [bash] $ sudo yum install -y php56w-mssql [/bash] Esta instrucción instala freetds, una colección de librerias para conectarnos con Sql Server desde linux. Con esta librería no solo podemos […]

Read More

Scripts de creación de objetos en Sql Server

admin

March 28, 2016

SQL SERVER

No Comment

La manera correcta de crear scripts en Sql Server para la creación de objetos, como tablas, procedimientos almacenados, funciones, restricciones, etc., es la siguiente: Primero, verificar si existe el objeto existe. Si existe, eliminarlo. Posteriormente, crear el objeto. Posteriormente, repetir para los objetos que dependen del que acabamos de crear. **Importante** Establecer siempre la base […]

Read More

Leave a Reply

Your email address will not be published. Required fields are marked *

Busca en el blog aqui

Herramientas Útiles

Suscribete al blog

Recibe en tu correo las últimas publicaciones

Publicidad

Sígueme en Twitter