Introducción a SQL Server
Qué es SQL Server
SQL Server es un sistema de gestión de bases de datos relacionales (RDBMS) de Microsoft
que está diseñado para el entorno empresarial. SQL Server se ejecuta en T-SQL (Transact -
SQL), un conjunto de extensiones de programación de Sybase y Microsoft que añaden varias
características a SQL estándar, incluyendo control de transacciones, excepción y manejo de
errores, procesamiento fila, así como variables declaradas.
Arquitectura de SQL Server
La arquitectura interna de las bases de datos en SQL Server están compuestas por 2 tipos de
estructura, la estructura lógica y la estructura física. Es muy importante conocer cómo es que
estas estructuras están compuestas y cuál es la relación que tienen los objetos de base de
datos con cada una de estas estructuras.
Estructura Lógica:
Desde el punto de vista lógico, la base de datos debe tener al menos 1 “FileGroup” el cual
contiene a toda la metadata de la misma base de datos, es decir tablas y vistas de sistema, a
este “FileGroup” inicial se le conoce como “Primario” y está presente en todas las bases de
datos. Todos los objetos de usuario que contengan data, ya sean tablas o índices, deben estar
ligados a un “FileGroup”, esto se puede definir al momento de ejecutar la sentencia DDL de
creación del objeto, si no se indica a que “FileGroup” estará ligado ese objeto, este
pertenecerá al “FileGroup” por defecto definido en la base de datos. La base de datos solo
puede tener definido 1 solo default “FileGroup”.
Estructura Física:
Desde el punto de vista físico, como ya hemos visto, tenemos los “DataFiles” que los en
realidad los archivos de datos, es decir donde se guarda toda la información de la base de
datos. Un “DataFile” solo puede pertenecer a 1 “FileGroup”.
Internamente los “DataFiles” están divididos en “Extends” y estos a su vez en “Pages”. Las
“Pages” son la unidad minima de almacenamiento dentro de la base de datos. Un “Page” tiene
8 Kb de tamaño en espacio de disco. Un “Extend” tiene 8 “Pages” contiguas que lo conforman,
es decir, un “Extend” tiene como tamaño 64 Kb de espacio en disco.
Versiones de SQL Server
Historia de versiones5
Versión Año Nombre de la versión Nombre clave
1.0
1989 SQL Server 1-0 SQL
(OS/2)
4.21
1993 SQL Server 4.21 SEQUEL
(WinNT)
6.0 1995 SQL Server 6.0 SQL95
6.5 1996 SQL Server 6.5 Hydra
7.0 1998 SQL Server 7.06 Sphinx
SQL Server 7.0
- 1999 Plato
OLAP Tools
8.0 2000 SQL Server 20007 Shiloh
SQL Server 2000
8.0 2003 Liberty
64-bit Edition
9.0 2005 SQL Server 20058 Yukon
10.0 2008 SQL Server 20089 Katmai
10.25 2010 SQL Azure DB CloudDatabase
10.50 2010 SQL Server 2008 R210 Kilimanjaro
11.0 2012 SQL Server 201211 Denali
12.0 2015 SQL Server 201412 SQL14 (antes Hekaton)
13.0 2016 SQL Server 2016
14.0 2017 SQL Server 2017 vNext 2017
Bases de datos de SQL Server
master
model
msdb
tempdb
Seguridad de SQL Server
Microsoft SQL Server tiene varias capas de seguridad, la primera capa es la seguridad del
canal de comunicación que es aplicada por TSL o protocolo SSL. La segunda capa está en el
nivel de instancia que está protegido por la API de
Protección de datos de Windows (DPAPI), DPAPI es en la función de cifrado en la
plataforma de Windows para cifrar y descifrar datos y el algoritmo es diferente en cada
máquina. Los inicios de sesión, los roles de servidor y las credenciales son objetos de
seguridad de nivel de instancia en SQL Server y el usuario, el certificado, las
funciones, los esquemas y las claves de cifrado son objetos de seguridad de nivel de
base de datos. La figura siguiente muestra las capas de seguridad de SQL Server.
SQL Server Service Key es la clave de cifrado básica en la plataforma SQL Server y
está protegida por DPAPI, la clave de servicio siempre se crea mediante el proceso de
SQL Server durante el primer inicio y el usuario no puede crearla, el usuario tiene la
capacidad de hacer una copia de seguridad y restaurarla en la misma instancia u otras
instancias. La clave maestra es una clave opcional en cada base de datos y puede
protegerse mediante la clave de servicio o una contraseña segura proporcionada por
el usuario. El usuario puede hacer una copia de seguridad de la clave maestra y
restaurarla en la misma base de datos u otra base de datos. Regenerar la clave del
servicio regenerará todas las claves secundarias, como las claves maestra y de
encriptación (simétrica o asimétrica).
Trabajo con SQL Server
Instalación de SQL Server
Requerimientos de hardware y software
Componente Requisito
.NET SQL Server 2016 (13.x) RC1 y posterior requieren .NET Framework 4.6 para el
Framework Motor de base de datos, los Servicios de datos maestros o la Replicación. La
instalación de SQL Server 2016 (13.x) instala automáticamente .NET
Framework. También puede instalar .NET Framework manualmente desde Microsoft
.NET Framework 4.6 (instalador web) para Windows .
La vista previa de SQL Server 2019 requiere .NET Framework 4.6.2. Disponible en
el Centro de descargas
Para obtener más información, recomendaciones y orientación sobre .NET
Framework 4.6, consulte la Guía de implementación de .NET Framework para
desarrolladores .
Windows 8.1 y Windows Server 2012 R2 requieren KB2919355 antes de instalar
.NET Framework 4.6.
Componente Requisito
Software de Los sistemas operativos compatibles para SQL Server tienen software de red
red [Link] instancias nombradas y predeterminadas de una instalación
independiente son compatibles con los siguientes protocolos de red: memoria
compartida, canalizaciones con nombre, TCP / IP y VIA.
Nota: el protocolo VIA no se admite en clústeres de conmutación por error. Los
clientes o aplicaciones que se ejecutan en el mismo nodo del clúster de conmutación
por error que la instancia de SQL Server, pueden usar el protocolo de memoria
compartida para conectarse a SQL Server utilizando su dirección de canalización
local. Sin embargo, este tipo de conexión no es compatible con clústeres y fallará
después de una instancia de conmutación por error. Por lo tanto, no se recomienda y
solo se debe utilizar en escenarios muy específicos.
Importante:El protocolo VIA está en desuso. Esta característica está en modo de
mantenimiento y puede eliminarse en una versión futura de Microsoft SQL
Server. Evite usar esta función en un nuevo trabajo de desarrollo y planee modificar
las aplicaciones que actualmente usan esta función.
Para obtener más información sobre Protocolos de red y bibliotecas de red,
consulteProtocolos de red y Bibliotecas de red .
Disco duro SQL Server requiere un mínimo de 6 GB de espacio disponible en el disco duro.
Los requisitos de espacio en disco variarán según los componentes de SQL Server que
instale. Para obtener más información, consulte Requisitos de espacio en el disco
duromás adelante en este artículo. Para obtener información sobre los tipos de
almacenamiento admitidos para archivos de datos, consulte Tipos de almacenamiento
para archivos de datos .
Conducir Se requiere una unidad de DVD, según corresponda, para la instalación desde el disco.
Monitor SQL Server requiere un monitor Super-VGA (800x600) o de mayor resolución.
Internet La funcionalidad de Internet requiere acceso a Internet (pueden aplicarse tarifas).
Componente Requisito
Memoria * Mínimo:
Ediciones Express: 512 MB
Todas las demás ediciones: 1 GB
Recomendado:
Ediciones Express: 1 GB
Componente Requisito
Todas las otras ediciones: Al menos 4 GB y deben aumentarse a medida que aumenta
el tamaño de la base de datos para garantizar un rendimiento óptimo.
Velocidad Mínimo: x64 Procesador: 1.4 GHz
del
procesador Recomendado: 2.0 GHz o más rápido
Tipo de Procesador x64: AMD Opteron, AMD Athlon 64, Intel Xeon con soporte Intel
procesador EM64T, Intel Pentium IV con soporte EM64T
Métodos de instalación de SQL Server
Actualización de SQL Server
Actualizaciones de ediciones y versiones admitidas
Preparar la actualización mediante la ejecución de Data Migration Assistant
¿Desea actualizar desde SQL Server 2005?
Actualizar Analysis Services
Actualizar el motor de base de datos
Actualizar Data Quality Services
Actualizar Integration Services
Actualizar Master Data Services
Actualización de PowerPivot para SharePoint
Actualizar bases de datos replicadas
Actualizar y migrar Reporting Services
Actualizar las herramientas de administración de SQL Server
Upgrade SQL Server Using the Installation Wizard (Setup) (Actualización de SQL
Server mediante el Asistente para instalación [programa de instalación])
Actualizar a una edición diferente de SQL Server (programa de instalación)
Verificación de la instalación
El informe de detección de SQL Server se puede utilizar para comprobar la versión de SQL
Server y las características de SQL Server instaladas en el equipo. En el Informe de detección
de características instaladas de SQL Server se muestra un informe de todos los productos y
características de SQL Server 2000 (8.x), SQL Server 2005 (9.x), SQL Server 2008, SQL
Server 2008 R2, SQL Server 2012 (11.x), SQL Server 2014 (12.x), SQL Server 2016 (13.x) y
SQL Server 2017 (14.x) que están instalados en el servidor local. El informe de detección de
características de SQL Server está disponible en la página Herramientas del Centro de
instalación de SQL Server.
Configuración del Servidor de SQL Server
Inicie una sesión en Windows como miembro del grupo Administradores y abra
Management Studio.
En el cuadro de diálogo Conectar con el servidor , haga clic en Cancelar.
Si Servidores registrados no aparece, en el menú Ver , haga clic en Servidores
registrados.
Con Motor de base de datos seleccionado en la barra de herramientas
Servidores registrados, expanda Motor de base de datos, haga clic con el
botón derecho en Grupos de servidores locales, seleccione Tareasy, después,
haga clic en Registrar servidores locales. Se muestran todas las instancias de
Motor de base de datos instaladas en el equipo. La instancia predeterminada
no tiene nombre y aparece como el nombre del equipo. Una instancia con
nombre aparece como el nombre del equipo seguido de una barra inversa (\) y
del nombre de la instancia. En SQL Server Express, la instancia se denomina
<nombre_equipo> \sqlexpress, a no ser que se haya cambiado el nombre
durante la instalación.
Creación y administración de bases de datos
Creación de bases de datos en SQL Server
Creación de archivos de bases de datos
Administración de bases de datos
Introducción a las estructuras de datos
Creación de tipos de datos y tablas
Creación de los tipos de datos
Creación de tablas
Generación de valores de columnas
Generación de secuencias de comandos
Implementación de la integridad de datos
Tipos de integridad de datos
Exigir integridad de los datos
Definición de restricciones
Tipos de restricciones
Deshabilitación de restricciones
Uso de valores predeterminados y reglas
Introducción a la programación de SQL Server
Diseño de la arquitectura de aplicaciones corporativas
Herramientas de programación de SQL Server
Introducción al Lenguaje de programación Transact-SQL
Elementos de Transact-SQL
Tipos de Sentencias del lenguaje Transact-SQL
Formas de ejecutar instrucciones Transact-SQL
Herramientas para trabajar con Transact-SQL
Analizador de Consultas de SQL
Utilización del Visor de Objetos del Analizador de Consultas
Utilización de Plantillas del Analizador de Consultas
Introducción al osql
Ejecución de sentecias Transact-SQL
Trabajando con sentencias SELECT
Retornando datos utilizando SELECT
Filtros de datos
Dar formato a los resultados
Descripción de modo de ejecución de las sentencias (Procesamiento)
Consideraciones de Rendimiento
Generar Resúmenes de Datos
Cláusulas TOP n, Funciones de Agregados, Group by, Realización de Joins
con múltiples tablas
Trabajando con Subconsultas
Cláusulas EXISTS y NOT EXISTS
Modificación de Datos
Utilización de transacciones
Inserción de datos en tablas
Eliminación de datos
Actualización de datos
Consideración de desempeño y rendimiento
Trabajando con Índices
Descripción de índices
Consideraciones en la creación de índices
Objetos de Programación en Transac-SQL
Introducción a las vistas
Consideraciones en la creación de vistas
Introducción a los procedimientos almacenados
Descripción de Triggers
Funciones Definidas por el usuario
Temas básicos de Administración de Bases de Datos
Administración de la seguridad
Implementación del modo de Autenticación
Asignación de cuentas de inicio de sesión a usuarios y funciones
Administración de la seguridad de la aplicación
Realización de tareas administrativas
Tareas de configuración
Tareas administrativas rutinarias de SQL Server
Automatización de las tareas de mantenimiento rutinarias
SQLCMD
Server Management Objects (SMO)
Copia de seguridad de bases de datos
Definición de estrategias de copias de seguridad
Copia de seguridad de SQL Server
Consideraciones acerca del rendimiento
Restauración de bases de datos desde una copia de seguridad
Transferencia de datos
Introducción a la transferencia de datos
Herramientas para importar y exportar datos en SQL Server
Introducción a DTS, OLTP, OLAP, ETL