MANUAL DE SQL SERVER 2014

Bases de Datos en Microsoft Sql Server 2014 ¿Qué es una Base de Datos? Es un conjunto de Información relacionada sobre u

Views 259 Downloads 2 File size 3MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Bases de Datos en Microsoft Sql Server 2014 ¿Qué es una Base de Datos? Es un conjunto de Información relacionada sobre un tema en particular, organizada de alguna forma tal que suministra una base o fundamento para procedimientos, como la recuperación o consulta de la Información, la elaboración de conclusiones en base a la data y la toma de decisiones de una organización. Se dice que cualquier conjunto de Información que sirva a lo nombrado anteriormente se le calificará como base de Datos, aun cuando la información no esté almacenada en algún medio Informático. Sistemas de Gestión de Base de Datos (SGBD) Son aplicaciones que permiten la administración de los datos almacenados en una o varias Bases de datos. 

Independencia de los datos y los programas



Minimización de la Redundancia



Integración y Sincronización de las Bases de Datos



Facilidad de Manipulación y Recuperación de la Información



Seguridad y Control Centralizado.

SQL Server 2014 Microsoft SQLServer es un Sistema para la Gestión de Base de Datos basado en el Modelo Relacional. Sus lenguajes para consultas son Transact-SQL y Ansi SQL. Presenta Un entorno gráfico de administración de los Objetos del motor de base de datos, que permite el uso de comando DDL y DML gráficamente.

Instalación y Configuración de Sql server 2014 Cómo instalar el motor de base de datos gratuito Microsoft SQL Server 2014 Express en un equipo con sistema operativo Microsoft Windows 10. Explicamos en este tutorial cómo solucionar el error 0x858C001B y cómo crear una base de datos y una tabla mediante Microsoft SQL Server Management Studio. NOTA: SI DESEA INSTALAR SQL SERVER Y TIENE INSTALADO MICROSOFT VISUAL STUDIO 2010, PRIMERO SE REQUIERE QUE SE INSTALE EL VISUAL STUDIO 2010 SERVICE PACK 1 PARA PODER LLEVAR A CABO LA INSTALACION SIN NINGUN PROBLEMA.

Descargar e instalar Microsoft SQL Server Express 2014 en Windows 10 En primer lugar, descargaremos el fichero SQLEXPRADV_x64_ESN.exe desde la web oficial de Microsoft. Elegiremos la descarga "SQL Server 2014 Express with Advanced Services 64 Bit": https://msdn.microsoft.com/es-es/sqlserver2014express.aspx

Una vez descargado el fichero SQLEXPRADV_x64_ESN.exe lo ejecutaremos como administrador, pulsando con el botón derecho del ratón sobre él y eligiendo "Ejecutar como administrador":

El fichero anterior es un comprimido que nos solicitará dónde queremos descomprimirlo, elegiremos una carpeta para la descompresión y pulsaremos "Aceptar":

Una vez descomprimido se iniciará el asistente de instalación de SQL Server Express 2014, pulsaremos en "Nueva instalación independiente de SQL Server o agregar características a una instalación existente":

Si nos aparece este error (habitual en Windows 10):

Seguiremos estas instrucciones para solucionarlo: Solución al error 0x858C001B No se encuentra el contrato de licencia SQL Server.

Anexo Solución al error0x858C001B No se encuentra el contrato de licencia SQL Server Si al intentar instalar Microsoft SQL Server 2014 Express en Windows 10 nos aparece este error:

Con el texto: Error del programa de instalación de SQL Server: El programa de instalación de SQL Server encontró el siguiente error: No se encuentra el contrato de licencia de SQL Server para la edición seleccionada, EXPRESS. Esto puede deberse a que el medio está dañado o no admite esta edición. Código de error 0x858C001B. Podemos solucionar el problema de la siguiente manera: 1. Abriremos la ventana de configuración de Windows 10, desde el botón "Inicio" - "Configuración":

2. En la ventana de "Configuración" pulsaremos en "Hora e idioma":

3. Pulsaremos en "Español (España). Paquete de idioma disponible", si no aparece deberemos instalarlo pulsando en "Agregar un idioma":

4. Pulsaremos en "Opciones":

5. Pulsaremos en "Descargar" en "Descargar paquete de idioma":

6. Una vez descargado nos mostrará "Paquete de idioma instalado", cerraremos esta ventana:

7. Nos indicará que el idioma "Español (España)" será el idioma para mostrar la próxima vez que se inicie sesión, cerraremos esta ventana:

Cerraremos sesión o reiniciaremos el equipo y volveremos a acceder y a ejecutar el programa de instalación de SQL Server Express 2014, ya no nos debe dar el error 0x858C001B.

El asistente de instalación nos mostrará el acuerdo de licencia, si estamos de acuerdo marcaremos "Acepto los términos de licencia" y pulsaremos "Siguiente":

A continuación, nos ofrecerá la opción de activar Windows Update para SQL Server, si queremos mantener nuestro motor de base de datos actualizado siempre con los últimos parches marcaremos la opción "Use Microsoft Update para comprobar las actualizaciones (recomendado)", pulsaremos "Siguiente" para continuar:

Elegiremos los componentes a instalar: 





Características de instancia. o Servicios de Motor de base de datos.  Replicación de SQL Server.  Extracciones de texto completo y semánticas de búsqueda. o Reporting Services - Nativo. Características compartidas. o Conectividad con las herramientas de cliente. o Compatibilidad con versiones anteriores de las herramientas de cliente. o SDK de las herramientas cliente. o Componentes de la documentación. o Herramientas de administración - Básica.  Herramientas de administración - Completa. o SDK de conectividad de cliente SQL. o LocalDB. Características redistribuidas.

En nuestro caso instalaremos todos los componentes y dejaremos la carpeta de instalación por defecto como directorio raíz de la instancia:

El asistente para instalar SQL Server 2014 realizará una comprobación de reglas para determinar si el equipo y el sistema operativo cumple con los requisitos mínimos para la instalación. Si hay algún requisito que no cumple nos lo mostrará. Por ejemplo, en Windows 10 no viene instalado Microsoft .NET Framework 3.5 y este es un requisito mínimo obligatorio, por lo tanto, nos mostrará "Se requiere Microsoft .NET Framework 3.5 Service Pack 1":

Si nos muestra el siguiente error "Se requiere Microsoft .NET Framework 3.5 Service Pack 1":

Seguiremos los pasos del siguiente enlace para instalar Microsoft .NET Framework 3.5: Solución al error: La regla "Se requiere Microsoft .NET Framework 3.5 Service Pack 1" no se cumple.

Anexo Solución al error: La regla "Se requiere Microsoft .NET Framework 3.5 Service Pack 1" no se cumple. Si al instalar Microsoft SQL Server Express 2014 en Windows 10 nos muestra el siguiente error:

Con el texto: Resultado de comprobación de reglas. La regla "Se requiere Microsoft .NET framework 3.5 Service Pack 1" no se cumple. Este equipo no tiene instalado Microsoft .NET Framework 3.5 Service Pack 1. Si el sistema operativo es Windows Server 2008, descargue e instale Microsoft .NET Framework 3.5 SP1. Si el sistema operativo es Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows server 2008 R2 o Windows 10, habilite la característica .NET Framework 3.5. Puede que sea preciso reiniciar el equipo después de la instalación. 1. Para solucionar este error podremos añadir la característica "Microsoft .NET Framework 3.5 SP1" en el caso de Windows 10, también podremos descargar el fichero de instalación de Microsoft .NET Framework 3.5 Service Pack 1 directamente de la web oficial de Microsoft, en la URL: http://microsoft.com/es-es/download/details.aspx?id=22 Pulsaremos en "Descargar":

2. Ejecutaremos el fichero descargado "dotnetfx35setup.exe":

3. El sistema operativo Windows 10 nos detectará que el fichero de instalación se corresponde con una característica y nos mostrará la ventana de "Características de Windows", pulsaremos "Descargar e instalar esta característica":

4. Tras la instalación nos mostrará el mensaje "La siguiente característica se instaló correctamente: .NET Framework 3.5 (incluye .NET 2.0 y 3.0)":

5. Pulse el botón Cerrar.

Una vez instalado Microsoft .NET Framework 3.5 y subsanados los posibles requisitos mínimos pulsaremos en "Volver a ejecutar" para que analice los requisitos mínimos para instalar Microsoft SQL Server Express 2014:

Elegiremos el nombre para la instancia de SQL Server 2014, dado que en un mismo equipo podemos tener corriendo varias instancias, elegiremos un nombre para identificarla, por ejemplo "BDAjpdsoft", por defecto establecerá como ID. de instancia el nombre de la instancia. Si ya tenemos otras instancias corriendo en este equipo nos las mostrará en "Instancias instaladas":

A continuación, podremos establecer las credenciales (usuario y contraseña) con los que se iniciará cada servicio de SQL Server. Podremos dejar los valores por defecto. Los servicios que se instalarán:    

Motor de base de datos de SQL Server. SQL Server Reporting Services. Selector de demonio de filtro de texto completo de SQL. SQL Server Browser.

En la pestaña "Configuración del servidor" podremos elegir entre el modo de autenticación de Windows o el modo mixto (SQL Server y Windows) para el acceso a la base de datos. En nuestro caso elegiremos el modo mixto que nos permitirá crear un usuario de SQL Server para acceso a SQL Server y también acceso mediante los usuarios del sistema operativo. Al elegir "Modo mixto (autenticación de SQL Server y de Windows)" nos solicitará que establezcamos la contraseña para el superusuario "sa" de SQL Server. También nos permitirá agregar más usuarios y especificar los usuarios del sistema operativo que serán administradores de SQL Server, podremos quitar los usuarios del sistema operativo que no queramos que sean administradores de SQL Server seleccionándolos y pulsando en "Quitar":

En la pestaña "Directorios de datos" podremos elegir el destino (unidad y carpeta) de cada directorio de SQL Server:       

Directorio Directorio Directorio Directorio Directorio Directorio Directorio

raíz de datos. de base de datos del sistema. de base de datos de usuario. de registro de base de datos. de base de datos temporal de registro de base de datos temporal. de copia de seguridad.

Elegiremos el destino para cada directorio, como recomendación al menos el directorio de base de datos de usuario debería estar en una unidad con redundancia (RAID) suficiente para evitar que si un disco duro se avería se pierda información:

En la pestaña "Instancias de usuario" podremos elegir la opción "Los usuarios pueden ejecutar una instancia independiente del motor de base de datos", con esto conseguiremos que los usuarios que no tienen permisos de administrador puedan ejecutar una instancia independiente del motor de base de datos SQL Server:

En la pestaña "FILESTREAM" podremos habilitar la opción "Habilitar FILESTREAM para el acceso a Transact-SQL":

Tras elegir todas las opciones de configuración del motor de base de datos SQL Server pulsaremos en "Siguiente":

A continuación, podremos elegir qué hacer con Reporting Services (si lo hemos elegido para la instalación):  

Instalar y configurar: instala y configura el servidor de informes. Después de la instalación, use el Administrador de configuración de Reporting Services a fin de configurar el servidor de informes para el modo nativo. Solo instalar: instala los archivos del servidor de informes. Después de la instalación, use el Administrador de configuración de Reporting Services a fin de configurar el servidor de informes para el modo nativo.

Pulsaremos "Siguiente" y se iniciará el proceso de instalación de SQL Server 2014:

El asistente realizará las tareas necesarias para instalar definitivamente SQL Server 2014 en nuestro equipo:

Tras la instalación, el asistente mostrará las tareas realizadas y el estado de finalización, es posible que nos advierta de que haya que reiniciar el equipo, pulsaremos "Aceptar":

Pulsaremos "Cerrar".

Y ya tendremos instalado y disponible (a falta de reiniciar el equipo) el motor de base de datos Microsoft SQL Server 2014 en su versión gratuita Express en nuestro equipo con Windows 10.

Administración SQL Server con Microsoft SQL Server Management Studio (Como ejecutar SQL Server) Tras la instalación podremos usar Microsoft SQL Management Studio para crear bases de datos, establecer permisos, crear tablas, listar registros, hacer copias de seguridad, etc. Para ello accederemos al botón "Inicio", pulsaremos en "Todas las aplicaciones":

Buscaremos la carpeta "Microsoft SQL Server 2014":

Abriremos "SQL Server 2014 Management Studio":

Introduciremos usuario y contraseña de SQL Server (la establecida en el proceso de instalación) o bien usuario y contraseña del sistema operativo al que hayamos asignado privilegios de acceso y pulsaremos en "Conectar":

Si todo es correcto Microsoft SQL Server Management Studio conectará con la instancia de la base de datos SQL Server elegida y desde este software podremos realizar las tareas de administración del motor de base de datos que estimemos oportunas.

Base de Datos en Sql Server Al instalar SQLServer también se registran Bases de datos que administran diferentes aspectos del servidor de Base de Datos.

MASTER: Es el núcleo y contiene Información vital de la Instancia de Sqlserver, información de la administración de las diferentes bases de datos. TEMPDB: Base de datos temporal que brinda espacios para realizar algunas operaciones. MODEL: Es una plantilla para todas las bases de datos creadas en el servidor, se implementa cuando se ejecuta el comando CREATE DATABASE. MSDB: Empleada por SQL Server Agent, guarda información de servicios de automatización, historial de copias de seguridad, tareas, alertas, planes de mantenimiento entre otros registros. Estructura de Base de Datos en Sql Server Tablas: La tabla es el primer objeto de una base de datos y se organiza en filas y columnas, una fila equivale a un registro y las columnas definen los campos del registro, los campos se definen sobre un tipo de datos. Campos: Representa los Atributos de una entidad o tabla. Existen 2 tipos de Campos:

a) Campo Clave: Es el campo que representa un valor único e identifica a un registro de la tabla.

b) Campo Foráneo: Campo que une a otra entidad formando una extensión de la tabla fuente. Registro: Representa el Conjunto de valores por cada campo de una misma fila. Dato: Es un valor que no representa nada mientras no se une a otros datos.

Estructura de una Base de Datos en Sql Server

Estructura de una Tabla en Sql Server

Esquema de Archivos en Sql Server

TIPOS DE DATOS EN SQL SERVER 2014 Un tipo de datos, realmente define el conjunto de valores válidos para los campos definidos de ese tipo. Indica si el campo puede contener: datos numéricos, de caracteres, moneda, fecha y hora, etc. SQL Server proporciona un conjunto de tipos de datos del sistema que define todos los tipos de datos que pueden utilizarse. También podemos definir nuestros propios tipos de datos en Transact-SQL. Los tipos de datos más utilizados son:    

Numéricos: int, decimal, money Fecha y hora: datetime Cadena de caracteres: varchar Binarios

Tipos de datos numéricos. SQL Server dispone de varios tipos de datos numéricos. Cuanto mayor sea el número que puedan almacenar mayor será en consecuencia el espacio utilizado para almacenarlo. Como regla general se recomienda usar el tipo de dato mínimo posible. Todos los datos numéricos admiten el valor NULL.          

Bit: Una columna o variable de tipo bit puede almacenar el rango de valores de 1 a 0. Tinyint: Una columna o variable de tipo tinyint puede almacenar el rango de valores de 0 a 255. SmallInt: Una columna o variable de tipo smallint puede almacenar el rango de valores -32768 a 32767. Int: Una columna o variable de tipo int puede almacenar el rango de valores -231 a 231-1. BigInt: Una columna o variable de tipo bigint puede almacenar el rango de valores -263 a 263-1 . Decimal (p,s): Una columna de tipo decimal puede almacenar datos numéricos decimales sin redondear. Donde p es la precisión (número total del dígito) y s la escala (número de valores decimales) Float: Una columna de datos float puede almacenar el rango de valores -1,79x10308 a 1,79x-10308, si la definimos con el valor máximo de precisión. La precisión puede variar entre 1 y 53. Real: Sinónimo de float (24). Puede almacenar el rango de valores -3,4x-1038 a 3,4x-1038 Money: Almacena valores numéricos monetarios de -263 a 263-1, con una precisión de hasta diez milésimas de la unidad monetaria. SmallMoney: Almacena valores numéricos monetarios de -214.748,3647 a 214.748,3647, con una precisión de hasta diez milésimas de la unidad monetaria.

Tipos de Datos Fecha y Hora.   

Datetime: Almacena fechas con una precisión de milisegundo. Debe usarse para fechas muy específicas. SmallDatetime: Almacena fechas con una precisión de minuto, por lo que ocupa la mitad de espacio de que el tipo datetime, para tablas que puedan llegar a tener muchos datos es un factor a tener muy en cuenta. TimeStamp: Se utiliza para marcar un registro con la fecha de inserción – actualización. El tipo timestamp se actualiza automáticamente cada vez que insertamos o modificamos los datos.

Tipos de datos Cadena de Caracteres. 



 

 

Char(n): Almacena n caracteres en formato ASCII, un byte por cada letra. Cuando almacenamos datos en el tipo char, siempre se utilizan los n caracteres indicados, incluso si la entrada de datos es inferior. Por ejemplo, si en un char (5), guardamos el valor ‘A’, se almacena ‘A’, ocupando los cinco bytes. Varchar(n): Almacena n caracteres en formato ASCII, un byte por cada letra. Cuando almacenamos datos en el tipo varchar, únicamente se utilizan los caracteres necesarios, Por ejemplo, si en un varchar(255), guardamos el valor ‘A’, se almacena ‘A’, ocupando solo un byte bytes. Varchar(max): Igual que varchar, pero al declararse como max puede almacenar 231-1 bytes. Nchar(n): Almacena n caracteres en formato UNICODE, dos bytes por cada letra. Es recomendable utilizar este tipo de datos cuando los valores que vayamos a almacenar puedan pertenecer a diferentes idiomas. Nvarchar(n): Almacena n caracteres en formato UNICODE, dos bytes por cada letra. Es recomendable utilizar este tipo de datos cuando los valores que vayamos a almacenar puedan pertenecer a diferentes idiomas. Nvarchar(max): Igual que varchar, pero al declararse como max puede almacenar 2311 bytes.

Tipos de datos binarios.   

Binary: Se utiliza para almacenar datos binarios de longitud fija, con una longitud máxima de 8000 bytes. Varbinary: Se utiliza para almacenar datos binarios de longitud variable, con una longitud máxima de 8000 bytes. Es muy similar a binary, salvo que varbinary utiliza menos espacio en disco. Varbinary(max): Igual que varbinary, pero puede almacenar 231-1 bytes

Existen otros tipos de Datos que podemos utilizar en SQL Server, pero estos son los más utilizados…. Propiedades de Datos Propiedad NULL: Hay dos formas de expresar el término NULL, al implementarlo como NULL estamos indicando que el contenido de dicha columna no es obligatorio, si se necesita especificar que el campo es obligatorio se implementará con NOT NULL. Propiedad IDENTITY: Propiedad sólo aplicada a campos numéricos, ya que define un autoincremento automático de valores.

COMO CREAR UNA BASE DE DATOS EN SQL SERVER Para crear una base de datos pulsaremos con el botón derecho del ratón sobre "Base de datos" y elegiremos "Nueva base de datos":

Introduciremos el nombre para la nueva base de datos, por ejemplo "bdfacturacion" y los datos generales, como el tamaño estimado inicial, ubicación de los ficheros de la base de datos, propietario, etc. Una vez elegidas las opciones pulsaremos en "Aceptar":

Una vez creada la base de datos, la desplegaremos y si queremos crear una nueva tabla pulsaremos con el botó nderecho del ratón sobre "Tablas" y seleccionaremos "Tabla":

EJEMPLO:

Añadiremos los campos y tipo de datos de cada campo para la tabla, por ejemplo, un campo "codigo" de tipo "int" y con "Especificación de identidad" para que sea autoincremental:

Podemos establecer como clave primaria de la tabla el campo autoincremental "codigo" anterior, para ello pulsaremos con el botón derecho del ratón sobre el campo creado y seleccionaremos "Establecer clave principal":

Añadiremos el resto de campos con su tipo de datos y sus propiedades (permitir nulos, tamaño, valor predeterminado, descripción, etc.). En la parte derecha, en la ventana de "Propiedades" podremos establecer el nombre para la tabla en la propiedad "Nombre", por ejemplo "factura":

Una vez añadidos todos los campos pulsaremos en el botón "Guardar" para crear la tabla:

Y de esta forma sencilla tendremos disponible la tabla "factura" para su uso en SQL Server:

RELACIONES El modo de relacionar registros entre tablas es por tanto mediante referencias, para lo cual se usan los identificadores definidos como claves primarias y foráneas. Clave primaria En el diseño de bases de datos relacionales, se llama clave primaria (Primary Key) a un campo o a una combinación de campos que identifica de forma única a cada fila de una tabla. Una clave primaria comprende de esta manera una columna o conjunto de columnas. No puede haber dos filas en una tabla que tengan la misma clave primaria. Una clave primaria debe identificar a todas las posibles filas de una tabla y no únicamente a las filas que se encuentran en un momento determinado. Ejemplos de claves primarias son DNI (asociado a una persona) o ISBN (asociado a un libro). Las guías telefónicas y diccionarios no pueden usar nombres o palabras o números del sistema decimal de Dewey como claves candidatas, porque no identifican unívocamente números de teléfono o palabras. Clave foránea En el contexto de bases de datos relacionales, una clave foránea o clave ajena (o Foreign Key FK) es una limitación referencial entre dos tablas. La clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija o referendo) que se refiere a una columna o grupo de columnas en otra tabla (tabla maestra o referenciada). Las columnas en la tabla referendo deben ser la clave primaria u otra clave candidata en la tabla referenciada. Los valores en una fila de las columnas referendo deben existir solo en una fila en la tabla referenciada. Así, una fila en la tabla referendo no puede contener valores que no existen en la tabla referenciada. De esta forma, las referencias pueden ser creadas para vincular o relacionar información. Esto es una parte esencial de la normalización de base de datos. Múltiples filas en la tabla referendo pueden hacer referencia, vincularse o relacionarse a la misma fila en la tabla referenciada. Mayormente esto se ve reflejado en una relación uno (tabla maestra o referenciada) a muchos (tabla hija o referendo). Diagrama Relacional Base de Datos en Sql Server 2014 Dentro de las opciones que nos ofrece nuestra base de datos, encontramos la opción Diagrama de la Base de Datos, que nos permite realizar las relaciones de las tablas en forma Gráfica. Para acceder a esta opción le damos click derecho y crearemos un nuevo Diagrama de Base de Datos.

Ejemplo: Diagrama relacional de la Base de datos.

LENGUAJE SQL El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de agregados. Estos elementos se Combinan en las instrucciones para crear, actualizar y Manipular las bases de datos. Existen 2 tipos de Comandos SQL: Lenguaje de Definición de Datos (DDL), comandos para crear y definir nueva base de datos, tablas, campos e índices. Lenguaje de Manipulación de Datos (DML), comandos para insertar, modificar y eliminar registros, así como ordenar, filtrar y extraer información de la base de datos. 1. Lenguaje de Definición de Datos SENTENCIA CREATE (Comando de Creación de Objetos de la Base de Datos): Permite crear base de datos, tablas, desencadenadores, procedimientos, funciones, vistas e Índices de una base de Datos. SENTENCIA ALTER (Comando de Modificación de Objetos de la Base de Datos): Permite la modificación de un objeto asociado a una base de Datos, puede modificar archivos, grupo de archivos, cambiar atributos de un Objeto. SENTENCIA DROP (Comando de Eliminación de Objetos de la Base de Datos): Permite la eliminación de un objeto asociado a una Base de Datos. Archivos de Base de Datos

RESPALDAR Y RESTAURAR UNA BASE DE DATOS SQL SERVER USANDO MÚLTIPLES ARCHIVOS Introducción: Las copias de seguridad de SQL Server proveen una importante solución para proteger datos críticos que están almacenados en bases de datos SQL. Y para minimizar el riego de pérdida de datos, usted necesita asegurarse de que respalda sus bases de datos regularmente tomando en consideración los cambios aplicados a sus datos. Es una buena práctica probar sus copias de seguridad restaurando archivos de copias de seguridad al azar a un ambiente de pruebas y verificar que los archivos no estén corruptos. En adición al desastre normal de pérdida de datos, el DBA puede beneficiarse de copias de seguridad si hay un fallo de medios en uno de los discos o cualquier daño de hardware, un borrado o eliminación accidental aplicados por uno de los usuarios o usualmente copiar los datos desde un servidor a otro para propósitos como configurar un sitio con reflejo o Grupos de Disponibilidad AlwaysOn. Antes de programar el trabajo de copias de seguridad, usted necesita tener una estimación de cuánto espacio de disco será usado por la copia de seguridad completa de la base de datos. También, usted necesita tener una estimación inicial del incremento en el tamaño de la base de datos, porque cuando este se incrementa las copias de seguridad completas requerirán más espacio de almacenamiento. Es mejor primero estimar cuándo espacio de disco requiere para su copia de seguridad completa. La operación de respaldo copia los datos en la base de datos al archivo de respaldo, este contiene sólo el espacio de datos usado sólo en su base de datos y no en la que no está siendo usada. El cual es usualmente más pequeño que el tamaño de la base de datos. Para estimar el tamaño de la copia de seguridad completa de la base de datos usted puede usar el procedimiento almacenado de sistema sp_spaceused, que mostrará el número de filas, el espacio reservado en disco y el espacio de disco usado por una tabla, una vista de índice o muestra el espacio de disco reservado y usado por la base de datos dependiendo de los parámetros. SQL Server ofrece muchos tipos de copias de seguridad, lo cual depende del modelo de recuperación de la base de datos, que controla cómo el registro de transacciones es manejado en su base de datos: Copias de seguridad completas, diferenciales, de archivos, de grupos de archivos y copias de seguridad transaccionales del registro. Como un administrador de bases de datos, usted debería asegurarse de que cada base de datos es respaldada exitosamente y a tiempo. La toma de copias de seguridad en SQL Server es simple de hacer vía SQL Server Management Studio, usando el comando T-SQL BACKUP DATABASE o el comando de PowerShell Backup-SqlDatabase . Pero en el caso de bases de datos más grandes, toma mucho tiempo completar el proceso de copia de seguridad, usted no tiene suficiente espacio para completar la copia de seguridad vía la red o los medios de respaldo.

¿Qué debería hacerse para asegurar que una base de datos es respaldada completamente a tiempo en tales casos? Una idea posible para recuperarse de problemas de espacio y tiempo con respaldos de bases de datos es dividir la copia de seguridad en múltiples archivos y reducir el tiempo necesario para realizar las copias de seguridad y usar el espacio disponible en múltiples dispositivos. Lo que hace a este proceso más rápido es que usted tiene la habilidad de escribir a múltiples archivos al mismo tiempo y por tanto dividir la carga de trabajo usando múltiples hilos, así como teniendo archivos más

pequeños que pueden ser movido a través de la red o copiados al medio de respaldo. Otra ventaja de dividir la copia de seguridad en múltiples archivos es obtener un mejor rendimiento I/O. Para realizar el proceso de respaldo a múltiples archivos desde SQL Server Management Studio, haga clic derecho en su base de datos, elija Back Up de la lista de tareas como sigue:

En el diálogo Backup Databases, especifique dónde mantener los archivos de la copia de seguridad haciendo clic en el botón Add, debajo de Destination. Lo que difiere aquí es que necesitamos especificar más de un archivo a los que respaldar la base de datos SQLShackDemo. En nuestro ejemplo, el primer archivo de la copia de seguridad reside en el disco D, y el segundo archivo de la copia de seguridad reside en el disco C, donde cada archivo será de un tamaño idéntico.

Si usted está usando SQL Server 2008 Enterprise Edition o SQL Server 2008 R2 o SQL Server 2012 Ediciones Standard y Enterprise, usted incluso puede tomar los beneficios de la característica Compresión de Copias de Seguridad de Bases de Datos para reducir el tamaño de la copia de seguridad, desde la pestaña opciones como sigue:

En la opción Set backup compression, usted puede elegir Use the default server setting, el cual tomará el ajuste ya establecido en la opción de configuración de servidor backup compression default. O elija Compress backup , lo cual comprimirá la copia de seguridad, sin importar la opción que esté por defecto a nivel de servidor, o finalmente elija Do not compress backup , lo cual creará una copian de seguridad no comprimida, sin importar la opción que esté por defecto a nivel de servidor. Desde el diálogo Backup, haga clic en el botón OK para iniciar el respaldo a múltiples archivos para la base de datos. Un diálogo aparecerá una vez que el respaldo finalice exitosamente. Usted puede realizar el mismo proceso de respaldo a múltiples archivos usando el siguiente script T-SQL: BACKUP DATABASE [SQLShackDemo] TO DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup\SQLShackDemo.bak', DISK = N'D:\ Backup\SQLShackDemo2.bak' WITH NOFORMAT, NOINIT, NAME = N'SQLShackDemo-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, COMPRESSION, STATS = 10 GO Ahora, intentemos restaurar nuestra base de datos desde la copia de seguridad de múltiples archivos que tomamos previamente. Desde SQL Server Management Studio, haga clic derecho en el nodo Databases y seleccione la opción Restore Database. En el diálogo Restore Database, especifique la fuente donde están los archivos de la copia de seguridad y seleccione la casilla debajo de Restore plan. Aquí usted tiene que especificar ambos archivos de la copia de seguridad para restaurar la base de datos exitosamente. Si usted no especifica todos los archivos que el proceso de respaldo generó, obtendrá el siguiente mensaje de error:

Finalmente, haga clic en OK en el diálogo Restore Database para restaurar la base de datos desde los archivos de respaldo especificados. Un diálogo aparecerá una vez que la restauración sea completada exitosamente. Usando el siguiente script T-SQL usted puede realizar un proceso de restauración de la base de datos desde múltiples archivos aplicados previamente: USE [master] RESTORE DATABASE [SQLShackDemo] FROM DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup\SQLShackDemo.bak', DISK = N'D:\Backup\SQLShackDemo2.bak' WITH FILE = 1, NOUNLOAD, STATS = 5 GO Pruebe la copia de seguridad a múltiples archivos para verificar cuán rápido usted puede hacer que sus copias de seguridad funcionen y que es más fácil copiarla a una ruta de red o un dispositivo de cinta. Usted puede tener un escenario de prueba de respaldo y restauración en una base de datos de producción usando la opción copy-only backup, que es una opción de respaldo de SQL Server que es independiente de la secuencia de respaldo de la base de datos, la cual usted puede usar para tomar una copia de seguridad sin afectar la operación general de respaldo para su base de datos.