Tener un buen plan de recuperación que asegure que los respaldos de la base de datos están siendo tomados en cuenta de manera regular y almacenados de forma segura en dispositivos de almacenamiento específicos o múltiples, incrementa grandemente la seguridad de la base de datos y las opciones de recuperación cuando un desastre o un accidente ocurren. Sin embargo, crear respaldos completos de la base de datos regularmente no provee una recuperación completa a un punto de tiempo, ya que restaurar el último respaldo completo restaurará la base de datos a un estado apropiado en el tiempo en que el respaldo fue creado, pero todos los cambios, tanto de esquema como de datos, que han ocurrido después del último respaldo completo estarán prácticamente perdidos.
julio 7, 2017Administrar y monitorear copias de seguridad de SQL Server desde una localización central
Introducción
Correr y mantener múltiples instancias de SQL Server puede ser a menudo un desafío formidable, especialmente si estas instancias corren e múltiples servidores. Es suficientemente fácil configurar un trabajo de SQL Server Agent para cada servidor para automatizar las copias de seguridad, pero ¿qué pasa si hay 20, 30 o 100 servidores que necesitan mantenimiento? En este escenario, configurar agentes en cada servidor tomaría demasiado tiempo, y monitorear la configuración entera sería una pesadilla para cualquier administrador. Por supuesto, Hay muchas soluciones para este escenario:
julio 7, 2017Cómo modificar de forma segura procedimientos almacenados SQL y parámetros de funciones SQL
Modificar los parámetros de una función SQL o un procedimiento almacenado no es una tarea simple si deseamos mantener las dependencias y la integridad de la base de datos. ApexSQL Refactor es un complemento para SQL Server Management Studio y Visual Studio para formato SQL con una colección de refactorizaciones útiles de código. En este artículo, describiremos una refactorización particular para la modificación segura de parámetros.
julio 7, 2017Cómo monitorear los cambios de estado de bases de datos en SQL Server
Vista general del estado de la base de datos
Cada base de datos en un ambiente SQL Server tiene dos estados básicos: disponibilidad completa (estado en línea) o no disponibilidad completa (estado fuera de línea).
julio 7, 2017Cómo mantener funcionando los cambios de bases de datos SQL con ramas Git
En el caso del desarrollo de bases de datos, de la misma manera que para el desarrollo de aplicaciones, siempre hay tareas como desarrollar una nueva característica, arreglar un error del lanzamiento actual, experimentar con código para mejorar el desempeño, la usabilidad en cualquier forma y más. Por todo esto, es esencial que cualquier cambio que haya sido enviado, pero no inmediatamente, sea segregado a un ambiente aislado, de modo que no afecte al resto del equipo o el código principal. Por ejemplo, cuando se está desarrollando una nueva característica, puede que requiera que muchos cambios se envíen antes de la característica, o incluso una parte funcional de la característica se vuelve útil, de modo que el resto del equipo pueda aplicarla en sus copias locales de la base de datos. Sin tener el aislamiento mientras se desarrolla, el equipo no tendrá la libertad de codificar sin tener que preocuparse acerca de romper el código base existente.
julio 7, 2017Cómo eliminar los archivos antiguos de respaldo de la base de datos automáticamente en SQL Server
Introducción
Mientras se trabaja con un número de bases de datos, crear un plan de recuperación puede ser retador, especialmente si queremos un diseño a prueba de tontos. Las estrategias de respaldo y restauración automáticas aseguran que el plan de recuperación sea exitoso. De todas maneras, las estrategias que se apoyan en respaldos frecuentes, aunque parte de una gran estrategia, pueden comenzar a causar problemas cuando el espacio disponible de almacenamiento se vuelve limitado. Las copias de seguridad antiguas son en muchos casos innecesarias, y es a menudo prudente eliminar esos respaldos para incrementar el espacio disponible. Esto puede ser hecho manualmente o automáticamente. Hay muchas opciones para eliminar archivos de respaldo antiguos automáticamente en SQL Server:
julio 6, 2017Cómo automatizar el monitoreo y las alertas en cambios de estado de SQL Server Agent
Vista general de SQL Server Agent
El principal propósito de SQL Server Agent es ejecutar tareas administrativas dentro de SQL Server, principalmente en acciones en demanda de usuarios. Es el servicio de Windows que corre continuamente en el fondo, pero almacena necesariamente información dentro de SQL Server en sí mismo, en la base de datos de sistema msdb.
julio 6, 2017Cómo crear archivos de copia de seguridad de partición de la base de datos de SQL Server
Introducción
Una de las principales tareas de cada administrador de base de datos es crear un plan de recuperación de desastres confiable. El plan siempre incluye varias operaciones de copia de seguridad y restauración. Por lo general, optar sólo por copias de seguridad convencionales de archivos debería ser suficiente, pero en algunos casos, los recursos como el espacio en disco, tiempo de copia de seguridad, o ambos podrían ser el problema. Este suele ser el caso cuando se trabaja con grandes bases de datos.
febrero 23, 2017Cómo crear múltiples espejos de respaldos SQL Server
Una de las tareas más importantes para cualquier administrador de bases de datos es crear un plan de recuperación de desastres a prueba de tontos. Este plan usualmente incluye múltiples operaciones de restauración y respaldo. La mayor parte del tiempo, optar por copias de seguridad convencionales debería ser suficiente, pero en algunos casos, almacenar todas las copias de seguridad en un solo dispositivo puede ser una mala idea. A medida que las bases de datos crecen en el tiempo, las copias de seguridad de vuelven más grandes y los dispositivos de respaldo menos estables debido a las frecuentes operaciones de lectura/escritura. Si el dispositivo de respaldo falla, todo los datos respaldados pueden ser perdidos. Para evitar este escenario, algunos administradores toman múltiples copias de sus archivos de respaldo, y los almacenan en diferentes dispositivos de respaldo. Hay unas cuantas maneras de hacer esto:
febrero 23, 2017Cómo crear y usar fragmentos de código T-SQL
En este artículo describiremos la función de fragmentos en ApexSQL Complete y daremos ejemplos de cómo utilizar variables de macro de fragmentos.
febrero 23, 2017Documentación de paquetes de SSIS
ApexSQL Doc es una Herramienta de documentación de SQL que permite documentar de forma sencilla y automática los paquetes de Server Integration Service (SSIS), bases de datos de Analysis Services (SSAS) y múltiples bases de datos de SQL. ApexSQL Doc le permite desarrollar rápidamente un resumen de sus paquetes de SSIS. Puede mostrar visualmente el control y el flujo de datos, así como las propiedades y expresiones utilizadas para cada componente.
febrero 23, 2017Crear copias de seguridad diarias de la base de datos con nombres únicos en SQL Server
Introducción
Al trabajar con un gran número de bases de datos en varios servidores SQL, la creación de un plan de recuperación ante desastres imbatible puede ser un reto. Estrategias bien organizadas de copia de seguridad y restauración definitivamente ayudarán con esto. Con el fin de implementar estas estrategias con éxito en un entorno más amplio, establecer copias de seguridad y procesos de restauración automatizados es una necesidad. Algunos administradores de bases de datos utilizan los scripts de lotes o de PowerShell para la automatización, mientras que otros prefieren utilizar diversas soluciones de terceros. En ambos casos, es necesario dar formato a los nombres de las copias de seguridad de la base de datos correctamente. Los nombres de copia de seguridad correctamente formateados facilitan mucho el trabajo de organización y mantenimiento de los conjuntos de copias de seguridad. Los archivos de copia de seguridad antiguos suelen ser obsoletos y se pueden identificar y eliminar fácilmente de la unidad de forma manual o mediante un script.
febrero 23, 2017Cómo generar datos de prueba aleatorios de un archivo CSV
Se crea una nueva base de datos SQL y todo está configurado, pero necesitan algos datos para poder probarla. La pregunta sería: ¿qué fuente de datos utilizar para rellenar la base de datos de SQL Server con datos de prueba aleatorios?
Una fuente de datos comúnmente disponible es el archivo con formato CSV (valores separados por comas) que es ampliamente soportado. Entre sus usos más comunes está el mover datos tabulares entre programas que operan nativamente en formatos incompatibles (a menudo propietarios y/o indocumentados). Esto funciona porque muchos programas soportan alguna variación de CSV al menos como un formato de importación/exportación alternativo.
Se selecciona un archivo CSV que contiene los datos de prueba y luego se debe asignar e insertar los datos. ¿Cuáles son nuestras opciones?
febrero 23, 2017Cómo restaurar sólo un grupo de archivos específico – Una restauración por etapas
¿Qué es una restauración por etapas?
Las restauraciones por etapas le permiten al usuario restaurar sólo grupos de archivos específicos de una base de datos en lugar de restaurar una base de datos completa. En casos de emergencia lo importante es obtener los datos necesarios tan pronto como sea posible, y restaurar el resto de los datos más tarde, mientras se dispone de los datos más importantes en línea. Este enfoque minimiza el tiempo de inactividad cuando ocurre un desastre.
febrero 23, 2017Cómo rastrear consultas SQL Server ejecutadas
En este artículo, introduciremos una característica en ApexSQL Complete, que sigue la pista de consultas ejecutadas. ApexSQL Complete es un complemento de productividad para SSMS y Visual Studio que contiene características como SQL auto-complete, formato de SQL y más.
febrero 23, 2017Recupere scripts SQL no grabados debido a un bloqueo de SQL Server Management Studio
Recuperar trabajo después de bloqueos de SQL Server Management Studio
Imagine una situación de trabajar en SSMS y súbitamente la electricidad se corta, el sistema se bloquea, SSMS se bloquea o su sesión de trabajo fue abruptamente terminada por cualquier otra razón, lo que causa la pérdida de trabajo no grabado en varios scripts SQL. En esta situación SSMS provee un diálogo para datos recuperados después de reiniciar:
febrero 23, 2017Sincronizando bases de datos usando el registro de transacciones – Transvase del Registro de SQL Server
No importa cuán bien administrados están sus sistemas, los accidentes pueden ocurrir y potencialmente conducir a consecuencias desastrosas. Para asegurar que una solución de recuperación de desastres está disponible, siempre es bueno tener una copia de la base de datos primaria en otra instancia de SQL Server.
La primera manera de lograr esto es utilizar el transvase de Registros de SQL Server.
febrero 23, 2017Cómo realizar una copia de seguridad SQL y restaurar la limpieza del historial
SQL Server almacena un historial completo de todas las operaciones de restauración y respaldo de SQL, y otras actividades históricas como Correo Electrónico de la Base de Datos, Trabajos, Transvase del Registro, Políticas, Planes de Mantenimiento, etc. en una instancia de servidor en la base de datos msdb.
diciembre 24, 2016Cómo recuperarse de un desastre de corrupción del archivo de datos de la base de datos SQL Server
Recuperación de una base de datos SQL Server con copias de seguridad del registro de transacciones
El peor escenario que un DBA puede encontrar es una corrupción del archivo de datos de la base de datos SQL Server (debido a una ocurrencia física o de otro tipo, los archivos de datos pueden ser dañados y se pueden volver inaccesibles).
diciembre 24, 2016Cómo borrar de manera segura objetos de bases de datos SQL
Cuando se trata de borrar un objeto de la base de datos el cual tiene un objeto que depende de él, no se pueden causar problemas dado que no se permitirá borrarlo:
Drop failed for Table ‘HumanResources.Employee’. (Microsoft.SqlServer.Smo)
Could not drop object ‘HumanResources.Employee’ because it is referenced by a FOREIGN KEY constraint.