Daniel Calbimonte

Creando Copias de Seguridad con SSIS

February 28, 2017 by

Introducción

Este artículo es para personas con experiencia usando T-SQL y SQL Server Management Studio, pero sin experiencia en SQL Server Integration Services (SSIS).

En este artículo, le presentaremos el mundo de SSIS y luego le mostraremos cómo combinar diferentes tareas SSIS para crear tareas de respaldo combinadas.

SSIS es una herramienta visual para integrar SQL Server con otros programas y bases de datos como Oracle, MySQL, Teradata, Excel, MS Access, Visual Basic, C#, Servicios Web, Sitios FTP, etc.

Usted puede combinar diferentes tareas para trabajar en tareas más complejas.

SSIS - Control Flow

Figura 1a

SSIS es una herramienta muy poderosa porque usted puede:

  • Trabajar con parámetros y variables.
  • Trabajar con bucles.
  • Ejecutar tareas en paralelo, incrementando la velocidad para completar las tareas.

SSIS es comúnmente usada para Migrar Datos, pero es raramente usada para respaldar bases de datos. Este es un tutorial para comenzar a usar SSIS para estas tareas administrativas.

Iniciando

  1. Para iniciar, abra SQL Server Data Tools (SSDT)(SSDT)

    SQL Server Data Tools (SSDT) in the Start menu

    Figura 1

  2. Vaya a File > New Project.

    Navigating to File, New project

    Figura 2

  3. Seleccione Integrations Services Project.

    Selecting the Integration Services Project

    Figura 3

  4. Haga doble clic en la tarea Check Database Integrity. Esta tarea verifica la integridad de los objetos físicos y lógicos de la Base de Datos. Usted puede ejecutar esta tarea antes del respaldo.

    The Check Database Integrity task

    Figura 4

  5. Haga doble clic en la tarea y presione el botón New para crear una nueva conexión.

    Check Database Integrity Task dialog

    Figura 5

  6. Especifique el nombre para la conexión, el nombre del SQL Server y seleccione un método de autenticación (la Autenticación de Windows es altamente recomendad por razones de seguridad) y presione OK.

    Connection properties dialog

    Figura 6

  7. Haga clic en el cuadro combinado Databases y seleccione la Base de Datos a respaldar. Como puede ver, usted puede seleccionar la integridad de muchas bases de datos con una sola tarea y respaldar bases de datos del sistema.

    Selecting databases to backup

    Figura 7

  8. Si usted presiona View T-SQL, tendrá la oportunidad de ver el comando T-SQL equivalente a la acción de la Tarea.

    View T-SQL button

    Figura 8

  9. La tarea ejecuta la sentencia DBCC CHECKDB.

    Task is executing the DBCC CHECKDB statement

    Figura 9

  10. Haga doble clic en la Execute T-SQL Statement Task y añada las tareas con una restricción.

    Double clicking the Execute T-SQL Statement Task

    Figura 10

  11. Haga doble clic en Execute T-SQL Statement Task y añada la siguiente sentencia T-SQL: Sólo nos estamos asegurando de que los Registros de la Base de Datos estén en modo de recuperación completo para recuperar bases de datos en cualquier punto de tiempo. Idealmente, eso debería establecerse antes.

    El propósito principal de esto es mostrar que podemos ejecutar tareas T-SQL con SSIS y combinar con otras tareas.

    Execute T-SQL Statement Task dialog

    Figura 11

  12. Haga doble clic en Backup Database Task y combínelo con las otras tareas usando una restricción.

    Double clicking the Backup Database Task

    Figura 12

  13. Haga doble clic en Back Up Database Task, use la conexión actual, seleccione Full Backup y una Base de Datos a respaldar.

    Selecting connection, backup type and database to backup

    Figura 13

  14. Usted puede respaldar archivos individuales y grupos de archivos, usted también puede usar la opción Copy Only, la cual le permite respaldar la base de datos sin cambiar la Base de Datos y sin afectar los procedimientos de respaldo regulares. Podemos especificar también las fechas de expiración para las copias de seguridad y Adjuntar o Rescribir la copia de seguridad si ya existe.

    Back Up Database Task - Additional options

    Figura 14

  15. Usted también puede verificar la integridad de la copia de seguridad y comprimirla.

    Options for verifying the backup integrity and compressing the backup

    Figura 15

  16. Finalmente, haga doble clic en Maintenance Cleanup Task y puede limpiar todas las bases de datos

    Double clicking on the Maintenance Cleanup Task

    Figura 16

  17. Con Maintenance Cleanup Task, podemos eliminar copias de seguridad antiguas. Es una buena práctica si hay copias de seguridad obsoletas que necesitan ser removidas. Usted puede remover los archivos de Copias de Seguridad y los reportes de texto de Maintenance Plan. Usted también puede especificar el nombre del archivo o buscar carpetas con una extensión específica en una carpeta específica. Usted también puede buscar archivos de copia de seguridad en subcarpetas y especificar cuáles carpetas eliminar de acuerdo a su edad.

    Maintenance Cleanup Task dialog

    Figura 17

  18. Usted puede opcionalmente presionar el botón View T-SQL y ver la línea de comando usada.

    See the command line used by pressing the View T-SQL button

    Figura 18

  19. Una vez hecho, inicie el paquete y correrá todas las tareas creadas. Si todo está bien, todas las tareas estarán en estado verde.

    Starting the package If ok - all tasks will have green status

    Figura 19

  20. Usted puede verificar si la copia de seguridad fue creada para verificar que todo funcionó bien.

    Verifying if the backup was created

    Figura 20

Otras Tareas

Hay muchas tareas que usted puede usar para mejorar sus proyectos SSIS. Por ejemplo, usted puede usar la Tarea de Servicio Web para llamar a los Servicios Web en proyectos SSIS. Otra tarea poderosa es Script Task. Usted puede programar en Visual Basic o C# tareas complejas o personalizadas no permitidas por otras Tareas. El Flujo de Datos es la tarea más popular y frecuentemente usada para importar o exportar datos a diferentes fuentes de datos como Oracle, MySQL, DB2, MS Excel, Postgresql y la mayoría de las bases de datos con la ayuda de los Controladores de Bases de Datos. También hay tareas para enviar correos electrónicos, subir archivos a un Servidor FTP, automatizar las tareas en SQL Server Analysis Services, copiar archivos, correr el comando shell (CMD), trabajar con archivos XML, etc.

Tareas extras gratis

También hay componentes adicionales SSIS gratis que usted puede descargar desde el sitio de codeplex.

Hay tareas para subir archivos a Amazon S3, conectarse a Microsoft CRM Dynamics, FTPS, SCP, SSH, SharePoint y más.

Cómo programar paquetes SSIS

Usted puede programar sus paquetes SSIS usando SQL Server Agent. De esa manera, usted puede correr los paquetes regularmente de acuerdo a sus necesidades.

Para más información acerca de programar paquetes SSIS, revise este enlace:

SQL Server Agent Jobs for Packages

SSIS para desarrolladores

If you do not like visual tasks and you love .NET, you can also program SSIS using C#, visual basic or other languages supported by the .NET Framework.

For more information about the Integration Services Development, please refer to this link:

Integration Services Developer Documentation

Create your own custom SSIS task

Si a usted no le gustan las tareas visuales y ama .NET, usted también puede programar SSIS usando C#, Visual Basic u otros lenguajes soportados por el Marco de Trabajo .NET.

Para más información acerca del Desarrollo de Servicios de Integración, por favor refiérase a este enlace:

Developing a Custom Task

Conclusiones

Como puede ver, SSIS es una herramienta completa y poderosa para ayudarle a Administrar y Mantener su Base de Datos.

 
Daniel Calbimonte
168 Views