Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UNIDAD 1 Introduccion PDF
UNIDAD 1 Introduccion PDF
INTRODUCCIÓN
2
CONTENIDO
1. Administración de base de datos
2. Sistema de Administración de Base de Datos (DBMS).
3. Consideraciones para instalar SQL Server
4. Métodos de instalación y Actualización
5. Configuración SQL Server Enterprise Manager
6. Introducción a las estructuras de datos
7. Creación de bases de datos
8. Administración de bases de datos
9. Colocación de archivos y registros de bases de datos
10. Optimización de una base de datos mediante RAID basado en hardware
11. Optimización de una base de datos mediante grupos de archivos
12. Optimización de la base de datos mediante grupos de archivos con RAID
basado en hardware
1. Estimación de la capacidad
2. Consideraciones acerca del rendimiento
3. Troubleshooting
3
1. Administración de base de datos(I)
4
1. Administración de base de datos(II)
5
2. Sistema de Administración de Base de
Datos (DBMS).
en inglés: DataBase Management System.
6
2. Sistema de Administración de Base de
Datos (DBMS).
Distintos objetivos que deben cumplir los SGBD:
Abstracción de la información
Consistencia
Seguridad
Integridad
Respaldo
Control de la concurrencia
Manejo de Transacciones
7
2. Sistema de Administración de Base de
Datos (DBMS).
SGBD libres SGBD no libres Microsoft Access
Apache Derby Advantage Microsoft SQL
DB2 Express-C Database Server
Firebird CA-IDMS NexusDB
MySQL dBase Open Access
PostgreSQL FileMaker Oracle
SQLite Fox Pro Paradox
IBM DB2 Universal PervasiveSQL
SGBD no libres y gratuitos Database (DB2 Progress (DBMS)
UDB) Sybase ASE
Microsoft SQL Server IBM Informix
Compact Edition Basica Sybase ASA
Sybase ASE Express IBM IMS Base de Sybase IQ
Edition para Linux Datos Jerárquica
Interbase de Softland ERP
Oracle Express Edition CodeGear, filial de WindowBase
10 para Windows Borland
Flexline
MAGIC
8
3. SQL Server 2008
3.1. Componentes de SQL SERVER
Permite distribuir las cargas Incluye el servicio principal para
de trabajo de datos en varias almacenar, procesar y proteger
bases de datos sin tener que datos; también incluye
programar complejas replicación, búsqueda de texto
funciones internas de completo y herramientas para
comunicación y mensajería.
administrar datos XML y
relacionales.
10
3.1. Componentes de SQL SERVER
11
3.1. Componentes de SQL SERVER
12
3.1. Componentes de SQL SERVER
Es un conjunto de
herramientas gráficas y
objetos programables para
mover, copiar y transformar
datos.
13
Herramientas de
administración Descripción
Es un entorno integrado para tener acceso, configurar, administrar y
SQL Server desarrollar componentes de SQL Server. Permite a los
Management desarrolladores de software y administradores con diferentes grados
Studio de experiencia usar SQL Server. Requisito: Internet Explorer 6
Service Pack 1 o una versión posterior.
Administrador de Proporciona administración de configuración básica para los
configuración de servicios, protocolos de servidor, protocolos de cliente y alias de
SQL Server cliente de SQL Server.
SQL Server Brinda una interfaz gráfica de usuario para supervisar una instancia
Profiler del Database Engine (Motor de BD) o de Analysis Services.
Asistente para la
optimización de
Crea conjuntos óptimos de índices, vistas indizadas y particiones.
Database Engine
(Motor de BD)
Business
Es un IDE (Entorno de Desarrollo Integrado) para las soluciones
Intelligence
Analysis Services, Reporting Services y Integration Services.
Development
Requisito: Internet Explorer 6 Service Pack 1 o una versión posterior.
Studio
Componentes de Instala componentes para la comunicación entre clientes y
conectividad servidores, y bibliotecas de red para DB-Library, ODBC y OLE DB.
14
Documentación y
ejemplos Descripción
Libros en
pantalla de SQL Documentación principal para SQL Server.
Server
15
3.2. Versiones de SQL Server 2008
Versión Descripción
Permite a los desarrolladores crear cualquier tipo de aplicación basada en SQL Server.
SQL Server 2008 Incluye toda la funcionalidad de SQL Server 2008 Enterprise, pero su uso está
Developer (x86, x64 autorizado como sistema de desarrollo y pruebas, no como servidor de producción. SQL
e IA64) Server 2008 Developer es una opción ideal para las personas que crean y prueban
aplicaciones.
SQL Server 2008 Es ideal para ejecutar bases de datos ubicadas en sucursales y proporciona una
Workgroup administración de datos confiable y una plataforma de informes que incluye capacidades
(x86 y x64) de sincronización y de administración seguras y remotas.
SQL Server 2008 Proporciona capacidades de administración y escalabilidad para propiedades web, tanto
Web (x86, x64) de pequeña como de gran escala.
SQL Server Express Se basa en SQL Server 2008. Es una sustitución de Microsoft Desktop Engine (MSDE).
(x86 y x64) Gracias a su integración con Visual Studio, SQL Server Express facilita el desarrollo de
aplicaciones controladas por datos que tienen una gran capacidad, ofrecen un
SQL Server Express almacenamiento seguro y se implementan con rapidez.
with Tools (x86 y x64) SQL Server Express es gratuito. SQL Server Express es ideal para obtener información
y crear pequeñas aplicaciones de servidor y de escritorio. Esta edición es la mejor
SQL Server Express opción para los fabricantes de software independientes, los desarrolladores no
con Advanced profesionales y los aficionados que crean aplicaciones cliente.
Services (x86 y x64) Se puede actualizar sin problemas a versiones más sofisticadas de SQL Server.
Compact 3.5 SP1 Permite crear aplicaciones independientes que se conectan ocasionalmente para
(x86) dispositivos móviles, escritorios y clientes web en todas las plataformas de Windows.
Componente Requisito
Procesador Tipo de procesador:
•Procesador compatible con Pentium III o superior
Velocidad de procesador:
•Mínimo: 1,0 GHz
•Recomendado: 2,0 GHz o más
Sistema En versiones de:
operativo Windows XP
Windows Server 2003
Windows Server 2003
Windows Vista
Windows Server 2008
Memoria RAM:
•Mínimo: 256 MB para SQL Server Express
•Mínimo: 512 MB para SQL Server Express con herramientas y SQL Server
Express con Advanced Services
•Máximo: 1 GB para Database Engine (Motor de base de datos) que se
instala con SQL Server Express, SQL Server Express con herramientas y
SQL Server Express con Advanced Services, 4 GB para Reporting Services
que se instala con SQL Server Express con Advanced Services
18
SQL Server 2008 Express x64 (64 bits)
Componente Requisito
Procesador Mínimo: AMD Opteron, AMD Athlon 64, Intel Xenon
compatible con Intel EM64T, Intel Pentium IV
compatible con EM64T
Velocidad de procesador:
•Mínimo: 1,4 GHz
•Recomendado: 2,0 GHz o más
Sistema operativo: Windows Vista Ultimate x64
Windows Vista Home Premium x64
Windows Vista Home Basic x64
Windows Server 2003 x64, Windows Vista Enterprise x64
Windows Server 2003 SP2 Windows Vista Business x64
de 64 bits x64 Standard1 Windows Server 2008 de 64 bits x64 Web1
Windows Server 2008 de 64 bits x64 Standard
Windows Server 2003 SP2 Windows Server 2008 de 64 bits x64 Standard sin Hyper-V1
de 64 bits x64 Data Center Windows Server 2008 de 64 bits x64 Data Center
Windows Server 2008 de 64 bits x64 Data Center sin Hyper-V1
Windows Server 2003 SP2 Windows Server 2008 de 64 bits x64 Enterprise
de 64 bits x64 Enterprise1 Windows Server 2008 de 64 bits x64 Enterprise sin Hyper-V1
Memoria RAM:
• Mínimo: 256 MB
• Máximo: 1 GB para Database Engine (Motor de
base de datos)
Requisito de espacio en disco
Característica Requisito de espacio en disco
Database Engine (Motor de base 280 MB
de datos) y archivos de datos,
Replicación y Búsqueda de texto
Analysis Services y archivos de 90 MB
datos
Reporting Services y 120 MB
Administrador de informes
Integration Services 120 MB
Componentes de cliente 850 MB
Libros en pantalla de SQL Server 240 MB
y Libros en pantalla de SQL
Server Compact
4. Métodos de instalación y Actualización
Métodos de instalación
Instalación Normal
Instalación Desatendida *
21
5. Herramienta SQL Server Management Studio
22
5. Herramienta SQL Server Management Studio
Crear bd
Tamaño inicial
Crecimiento automatico
Ruta de acceso
Diagrama de Tablas
Definir relaciones entre tablas
Tipos de actualización al insertar o actualizar registros.
Tablas. Creación, modificación, inserción de datos a
cada tabla, etc.
Vistas
Sinónimos
23
5. Herramienta SQL Server Management Studio
Programación
Procedimientos almacenados
Funciones
Desencadenadores (triggers)
Ensamblados. Un módulo de aplicación administrado que contiene metadatos de clase
y código administrado como un objeto de SQL Server
Tipos
Tipos de datos del sistema
Tipos de datos definidos por el usuario
Reglas. Objeto de base de datos que está enlazado a columnas o a tipos de
datos definidos por el usuario, y especifica qué valores de datos son aceptables
en una columna
Valores predeterminados. Valor predeterminado definido para una base de datos
específica y que comparten columnas de tablas diferentes.
Service Broker. Diseñado para permitir que los servicios y las aplicaciones de
instancias con configuraciones distintas se comuniquen de forma sencilla y eficaz
Almacenamiento
Seguridad 24
6. Introducción a las estructuras de datos
25
6.1. Cómo se almacenan los datos
Pagina
La unidad fundamental del
almacenamiento de datos en SQL
Server es la página.
Cada página empieza con un Base de Datos
encabezado de 96 bytes, que se
utiliza para almacenar la información
del sistema acerca de la página
(número de página, el tipo de página,
espacio disponible y el Id. de unidad
de asignación del objeto propietario Datos Registro
de la página. (archivo) (archivo_log)
.mdf o .ndf .ldf
Extensión
Tablas (8 espacios
Pagina contiguos,
(8 KB) páginas de 8
KB)
Tamaño máximo de fila = 8060 bytes
26
6.2. Cómo funciona el registro de transacciones
27
7. Creación de bases de datos
Puntos a desarrollar:
Qué ocurre durante la creación de una
base de datos
Especificación de opciones durante la
creación de una base de datos
Cambio de opciones de la base de datos
una vez creada
Presentación de las propiedades de base
de datos
28
7.1. Qué ocurre durante la creación de
una base de datos
Se crea un archivo de datos y un registro
de transacciones
Permite definir:
El nombre de la base de datos
Las propiedades de la base de datos
La ubicación de los archivos de la base de datos
29
7.2. Especificación de opciones durante la
creación de una base de datos
Archivo principal
Registro de transacciones
Nombre y ubicación de archivo
Tamaño
Crecimiento de archivo
Tamaño máximo
Intercalación. Proporcionan propiedades de distinción entre mayúsculas y
minúsculas, acentos y reglas de ordenación para los datos)
30
7.3. Cambio de opciones de la base de
datos una vez creada
Categoría de Controles
opciones de BD
Automatico Determinados comportamientos automáticos
Cursor Comportamiento y el alcance del cursor
Recuperación El modelo de recuperación de la base de datos
Estado Tipo de acceso a la Base de Datos (Single, multiple,
restricted)
Estado de la BD; si está disponible para su acceso.
32
8. Administración de bases de datos
33
8.1. Administración del crecimiento de
los archivos de datos y de registro
Uso del crecimiento automático de los archivos
Determinación de la expansión automática
En Propiedades de la base de datos, seleccione la página Archivos.
Para aumentar el tamaño de un archivo existente, aumente el valor de la
columna Tamaño inicial (MB) correspondiente al archivo. Debe aumentar el
tamaño de la base datos en 1 megabyte como mínimo.
Sintaxis:
DBCC SHRINKDATABASE
( database_name | database_id | 0
[ , target_percent ] -- % de espacio disponible que se desea dejar
[ , { NOTRUNCATE | TRUNCATEONLY } ]
)
[ WITH NO_INFOMSGS ]
35
8.2. Reducción automática de una base de
datos o de un archivo de base de datos(II)
Ejemplo de NOTRUNCATE. Mueve las paginas no asignadas al principio del archivo, sin
eliminar el espacio vacio que queda.
DBCC SHRINKDATABASE
( BDCondominio,
NOTRUNCATE
)
36
8.2. Reducción automática de una base de
datos o de un archivo de base de datos
Para reducir una base de datos con el SQL Server
Management Studio
1. En el Explorador de objetos, Expanda Bases de datos, clic secundario en la
base de datos que desee reducir.
2. Seleccione Tareas y Reducir y haga clic en Base de datos.
3. También puede seleccionar la casilla de verificación Reorganizar archivos antes
de liberar espacio no utilizado. Si se selecciona, debe especificarse un valor en
Cantidad máxima de espacio disponible en los archivos después de la
reducción (target_percent)
4. Haga clic en Aceptar.
Similar los pasos arriba descritos solo que en ves de Base de datos,
selecciona archivos
37
8.3. Eliminación de una base de datos
Métodos de eliminación de una base de
datos
SQL
Quita dos bases de datos BD1,BD2;
DROP DATABASE BD1,BD2;
SQL Server Management Studio
Clic derecho sobre la BD en el explorador de objetos, eliminar,
Aceptar
39
9.1. Páginas de archivo de datos
Están enumeradas secuencialmente, comenzando por cero (0) para la
primera página del archivo.
Cada archivo de una base de datos tiene un número de identificador único.
Identificar de forma página = identificador del archivo + número de la página
Ejemplo: Números de página de una base de datos que tiene un archivo de
datos principal de 4 MB y un archivo de datos secundario de 1 MB.
La primera página de cada archivo es una
página de encabezado de archivo que contiene
información acerca de los atributos del archivo.
41
10.1. Grupos de archivos de una base de datos
Los objetos y archivos de una base de datos se pueden agrupar en grupos de
archivos con fines de asignación y administración.
Hay dos tipos de grupos de archivos:
1. Principal
Todas las páginas de las tablas del sistema están asignadas al grupo de
archivos principal.
2. Definidos por el usuario
Los grupos de archivos definidos por el usuario son los grupos de archivos
especificados mediante la palabra clave FILEGROUP en la instrucción
CREATE DATABASE o ALTER DATABASE.
Los archivos de registro nunca forman parte de un grupo de archivos.
El espacio del registro se administra de forma independiente del espacio de
datos.
42
10.2. Introducción a los grupos de
archivos definidos por el usuario
OrdHist1.ndf OrdHist2.ndf
43
10.3. Creación de grupos de archivos
definidos por el usuario
Métodos de creación de grupos de archivos definidos por el
usuario
Elección de un grupo de archivos predeterminado
SQL Server designa un grupo de archivos como el
predeterminado
El grupo de archivos predeterminado se establece como el
principal
Cambie el grupo de archivos predeterminado principal si crea
grupos de archivos definidos por el usuario
Definición del tamaño del grupo de archivos principal
predeterminado
Presentación de la información de los grupos de archivos
44
Sintaxis para la creación de una Base de Datos
45
Ejemplo de archivos y grupos de archivos
CREATE DATABASE MiBD
ON PRIMARY
( NAME='MiBD_Primaria',
FILENAME= 'c:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\MiBD_Primaria.mdf',
SIZE=4MB,
MAXSIZE=10MB,
FILEGROWTH=1MB), -- Especifica el incremento de crecimiento automático del archivo
FILEGROUP MiBD_GrupoArch1
( NAME = 'MiBD_GrupoArch1_Datos1',
FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\MiBD_GrupoArch_1.ndf',
SIZE = 1MB,
MAXSIZE=10MB,
FILEGROWTH=1MB),
( NAME = 'MiBD_GrupoArch1_Datos2',
FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\MiBD_GrupoArch_2.ndf',
SIZE = 1MB,
MAXSIZE=10MB,
FILEGROWTH=1MB)
LOG ON
( NAME='MiBD_log',
FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\MiBD.ldf',
SIZE=1MB, ALTER DATABASE MiBD
MAXSIZE=10MB, MODIFY FILEGROUP MiBD_GrupoArch1 DEFAULT; --grupo de archivo por defecto
GO
FILEGROWTH=1MB);
-- Creando una tabla en el grupo de archivos definido por el usuario
GO USE MiBD;
CREATE TABLE MiTabla
( cola int PRIMARY KEY,
colb char(8) )
ON MiBD_GrupoArch1;
GO 46
11.4. Propiedades de los grupos de archivo
USE MiBD;
GO
SELECT FILEGROUPPROPERTY ('MiBD_GrupoArch1', 'IsUserDefinedFG' ) AS 'Grupo definido por el usuario'
GO
SELECT FILEGROUPPROPERTY('PRIMARY', 'IsDefault') AS 'Grupos de archivos por defecto';
GO
47
10.5. Uso de grupos de archivos para
realizar tareas de mantenimiento
Realizar copias de seguridad y restaurar archivos o
grupos de archivos individuales en vez de hacer la
copia de seguridad o restauración de toda la base de
datos.
48
10.6. Consideraciones acerca de la
creación de grupos de archivos
Supervisar rendimiento del sistema
49
Creación de índices
Crea un índice relacional en una vista o tabla especificada en una tabla especificada.
UNIQUE No se permite que dos filas tengan el mismo valor de clave del índice.
CLUSTERED Crea un índice en el que el orden lógico de los valores de clave determina el orden
físico de las filas correspondientes de la tabla.
Una tabla o vista permite un índice agrupado al mismo tiempo
NONCLUSTERED Crea un índice que especifica la ordenación lógica de una tabla.
Con un índice no agrupado, el orden físico de las filas de datos es independiente
del orden indizado.
Ejemplo:
CREATE NONCLUSTERED INDEX iContacto
ON contacto(nombre);
GO
Indice unico, que restringirá que existen dos profesiones con el mismo nombre.
CREATE UNIQUE INDEX iProfesion
ON profesion(nombre);
GO 50
Índices cluster(agrupado)
Sólo puede haber un índice clúster por cada tabla.
El índice cluster determina el orden de almacenamiento
de las filas de datos.
Recomendaciones: Los campos que lo conformen
Se pueden utilizar en consultas frecuentes.
Proporcionan un alto grado de unicidad.
Se pueden utilizar en consultas de intervalo.
Nota: Cuando se crea una restricción PRIMARY KEY, se
crea automáticamente un índice único en las columnas.
De forma predeterminada, este índice está agrupado;
sin embargo, puede especificar un índice no agrupado
cuando crea la restricción de la columna.
51
Estructuras de índices clúster
52
Tabla con llave no agrupada
use BDCondominio;
53
11. Estimación de la capacidad
54
Objetivos de la estimación del tamaño
de una Base de Datos
Para determinar la configuración de hardware
que necesitará:
Conseguir el rendimiento que necesitan las
aplicaciones (ej. reducir la normalización y ganar
tiempo en consultas).
Asegurar la cantidad física adecuada de espacio en
disco necesario para almacenar los datos y los
índices.
55
Calculo del espacio necesario para
almacenar datos en una tabla
1. Calcular el espacio necesario para el
montón o índice agrupado(cluster).
2. Calcular el espacio necesario para cada
índice no agrupado (no Cluster)
3. Sumar los valores calculados en los pasos 1
y 2.
56
Ejemplo de estimación del tamaño de
una tabla.
57