Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad 1 Fundamentos de La Admnistracion de Bases de Datos PDF
Unidad 1 Fundamentos de La Admnistracion de Bases de Datos PDF
Desarrollo de software
Programa de la asignatura:
Administración de base de datos
Unidad 1.
Fundamentos de la administración de bases de datos
Clave:
Licenciatura TSU
15142422 16142523
Índice
Propósitos de la unidad
Competencia específica
Analizar las condiciones para Instalar MySQL, como sistema gestor de bases de datos
relacionales, en los sistemas operativos Windows y Linux, mediante los requisitos y paquetes
de instalación.
Temario de la unidad
Una vez que sabes cómo diseñar una base de datos; es decir, a partir de una situación dada
donde obtienes un modelo y lo codificas en un gestor, el paso que debes considerar es saber
manipular la información que siempre esté disponible; todo ello lo realizarás a través de un
Sistema Gestor de Bases de datos; que, para el desarrollo de esta materia, será utilizado el
MySQL. El primer tema está enfocado a las funciones que como administrador de bases de
datos se deben cumplir y estará apoyada en el capítulo 16. Administración de base de datos
en: Rob, J. (2009); Después, en el segundo tema referente a la instalación de MySQL,
revisarás directamente la página oficial del MySQL, donde encontrarás los pasos a seguir para
la instalación del mismo, en Linux y en Windows; por último, en el tercer tema, abordarás la
estructura del disco duro, para así poder administrarlo de acuerdo a lo que necesites. Todos
estos temas están enfocados a cumplir con el logro de la competencia en donde podrás, con
todos estos requisitos, hacer un análisis de las condiciones requisitos y paquetes de instalación
para la instalación de MySQL en Windows y Linux.
Para continuar con los fundamentos de la administración de una base de datos, es importante
comprender que: ésta deberá ser entendida y aceptada dentro de la organización, para lograr
el éxito de la administración por medio de exploración, integridad y resultados de los datos en
los diferentes niveles de administración.
Para profundizar el tema Funciones de bases de datos, consulta el tema 16.1 Ciclos de datos
en: Rob, J. (2009, pp. 756- 757)1. Pues, una estrategia exitosa para la administración de las
bases de datos requiere que la mayoría de los datos sean considerados como los recursos de
información más importantes y de gran valor, los cuales deberán ser tratados y manejados
como activos corporativos dentro de una organización. No olvides revisar la Figura 1. Ciclos de
1
Cada uno de los textos que se te pide revisar los podrás descargar en formato PDF de la sección: materiales de
estudio de la unidad.
datos, pues en ella se muestra el flujo que sigue la información y las diferentes etapas por las
que tiene que pasar.
Para conocer las funciones de un administrador de bases de datos DBA, consulta Rob (2009,
p. 760) en donde apunta que un administrador de base de datos (DBA), es la persona
encargada de administrar, analizar, documentar la información contenida en la base de datos.
Y, en consecuencia, en algunas ocasiones, tendrá la necesidad de realizar modificaciones a la
estructura original del diseño de la base de datos para poder mejorar la integridad de los datos
y/o información almacenada. Revisa la imagen Organización funcional de la administración de
Bases de datos en Rob (2009, p. 762), donde se abordan las principales responsabilidades
que deberá cumplir un DBA; éstas se muestran a manera de árbol en donde la raíz la forma el
DBA.
Te invitamos a consultar a Rob, P. (2009, p.765), pues en la tabla 16.2 Habilidades deseadas
del DBA, se especifican las principales responsabilidades que deberá cumplir un DBA.
Posteriormente revisa la tabla 6.2 Habilidades deseadas del DBA en: Rob (2009, p. 765), estas
dos imágenes te darán una semblanza de las características que debe tener la persona
responsable de administrar una base de datos y de sus funciones.
Para que un DBA pueda administrar la estructura de una base de datos, tiene la necesidad de
participar conjuntamente con el equipo de desarrollo para el diseño inicial de la misma, además
de su puesta en práctica para controlar y administrar los requerimientos que ayude a los
desarrolladores a evaluar distintas alternativas que beneficien la creación de la estructura
principal de la base de datos.
Una base de datos puesta en producción, siempre necesitará de los usuarios de diferentes
áreas de la empresa para adicionar nuevos requerimientos a la base de datos y eso es
inevitable cuando esté en operación. Estos cambios implican nuevas formas o métodos para
obtener diferentes resultados de las consultas realizadas a la base de datos, durante el proceso
de modificación, adecuación o corrección; el DBA tendrá que llevar un control sobre el impacto
de cualquier alteración a la base de datos, ya que se verá reflejado en más de una aplicación o
sistema que trabaja de forma directa con la base de datos.
Para saber cómo se relaciona con diferentes áreas de una empresa será necesario contar con
un organigrama de los departamentos de una empresa y cómo se relacionan entre ellos, para
entonces establecer cuál será el flujo que sigue en la información en cada una de las áreas.
Revisa este ejemplo de una empresa que tiene el siguiente organigrama de departamentos:
GERENCIA ADMINISTRATIVA
Una vez que el DBA conoce la relación entre los departamentos entiende cómo se va a
relacionar con todas las áreas, ya que el DBA tiene inferencia en cada una de ellas, porque
todo se maneja a través de la base de datos. Del ejemplo anterior, se obtiene que el DBA se
relaciona con:
Compras, almacén y ventas, pues cada producto, tanto materia prima, como producto
terminado tiene un código, descripción, etc. y esto se encuentra almacenado en la base de
datos.
El DBA debe vigilar que la base de datos siempre esté disponible para todas las áreas, para
que el flujo de la información sea conocido en cada una de ellas. Es el DBA quien determina la
lectura y escritura que posee cada área en la base de datos.
Los sistemas manejadores de bases de datos son utilizados para remplazar el manejo de los
archivos manuales, lo cual ayuda para obtener acceso a los datos con mayor rapidez. Utilizar
un sistema de manejo de bases de datos (SGDB, en español o DBMS en inglés), no es
garantía para que los datos que se procesan puedan ser usados de la mejor forma y los
resultados obtenidos sean los más adecuados. Debe quedar muy claro que un SGDB es
únicamente una herramienta para automatizar los procesos de manejo de los datos y no es una
solución a problemas de confiabilidad en la información.
Revisa Nevado (2010, p.32) quien enfatiza la diferencia entre un SGBD y una BD y,
apoyándote en esas definiciones, podrás decir que un SGBD contribuye a la automatización,
manejo y administración de la información, si es aplicado de forma correcta y así serán más
confiables los resultados obtenidos. Es conveniente adecuar un SGBD a las necesidades de
las actividades del negocio más no del sistema manejador de bases de datos.
Hoy en día existen en el mercado una gran variedad de sistemas de gestión de bases de
datos, entre los más conocidos están:
SQL
DB2
ORACLE
INFORMIX
PARADOX
MYSQL
FOXPRO
SYBASE
Cada tipo de SGBD ofrece ventajas y desventajas, dependerá del DBA que SGBD se acopla
más a las necesidades del negocio y de la planeación de la estructura de la base de datos.
Vamos a hacer una comparación entre Oracle y SQL Server 2012, también una comparación
entre MySQL y SQL Server 2012 (ambas versiones gratuitas).
Una vez que ya conozcas las diferencias y particularidades de cada uno de los sistemas, tienes
un panorama más general para poder decidir cuál SGBD es el que conviene de acuerdo a tus
necesidades.
Como se comentó en los temas anteriores, entre las actividades que debe realizar el DBA, está
la administración de los datos, ya que es necesario protegerlos del procesamiento de los
usuarios, debido a que la base de datos es un recurso compartido con muchas áreas, por tanto
es importante implementar: estándares, guías, procedimientos y políticas de acción que
contribuyan con el control necesario para garantizar que los usuarios pueden trabajar en forma
conjunta y complementaria al procesar los datos.
Para conocer más de este tema te invitamos a leer el tema Administración de datos y
administración de una base de datos en: Date (2001 pp.16-19)2 en donde se definen los
estándares sobre la estructura de la base de datos y la conveniencia de llevar un control,
registrar y documentar el flujo de los datos para que el personal de desarrollo u otros usuarios
involucrados puedan tener acceso.
2
Para acceder al texto da clic en el autor y año de la obra o ingresa a la sección materiales para consultar de la
unidad en curso.
La documentación es de suma importancia pues será el medio por el cual se podrá consultar
aquellos estándares implementados para la administración de los datos; de la misma forma, es
de gran utilidad para saber qué modificaciones y cómo y cuándo fueron realizadas a la
estructura de la base de datos. Cualquier cambio que sea realizado a la estructura, puede
derivar errores a corto o largo plazo, los cuales se podrán solucionar consultando la
documentación realizada de forma adecuada.
Este primer tema muestra un panorama general sobre la administración de las bases de datos,
donde se abordarán las funciones básicas que debe cubrir un administrador, la estructura, los
cambios y necesidades que sobre la marcha se realizan; así también, es importante llevar un
control de los usuarios y las área que necesitan conectarse a la base de datos, con cuáles
permisos y qué tipos de operaciones van a realizar a la misma, ya que, un usuario sólo puede
acezar y sacar reportes, otro usuario puede encargarse de llenar los datos de cierta área (por
ejemplo: pedidos), otro podría llenar la base de datos con ventas, etc.
Por último, en el presente tema, se habla sobre cómo debe considerarse que sean
administrados los datos, de manera que una de sus funciones sean: que la base de datos
cumpla con los estándares que se rigieron durante el diseño de la misma, para lo cual es
necesario conservar los documentos que se generaron durante la planeación y diseño de la
BD.
Una vez que ya se conocen todos estos puntos, es importante que se tome la decisión, con
respecto a, si el sistema gestor de bases de datos va a trabajar sobre que plataforma; en el
tema 2 se muestra el procedimiento para la instalación del MySQL en Linux y en Windows, qué
paquetes existen en el mercado y cuáles son los requisitos de cada uno de ellos.
La instalación de MySQL varía mucho de una plataforma a otra, mientras que para Windows
suele ser relativamente simple, pues sólo usa un paquete instalador guiado por el asistente de
instalación, en Linux resulta algo complejo, por el grado de conocimiento del sistema operativo.
Requisitos previos
Debido a sencillez de instalación de MySQL sobre Windows, se tienen que considerar los
siguientes requisitos previos antes poder definir el equipo de cómputo que será destinado para
la instalación:
Requisitos de hardware.
Requisitos de software.
Para encontrar más información, revisa la página oficial del MySQL en el tema 2.3.1. Requisitos
de Windows, disponible en:
http://dev.mysql.com/doc/refman/5.0/es/windows-system-requirements.html
Con respecto a los requerimientos para Linux, lo primero que se debe considerar es que la
distribución Linux con que se trabajará debe tener soporte RPM (Red Hat Package Manager).
Los RPM son paquetes y archivos en GNU/Linux que son usados para actualizar, desinstalar,
verificar y solicitar software. Como ya sabes, hay muchos software de Linux: Fedora
Linux, Mandriva Linux y SuSE Linux, pero esta herramienta también se usa en otros Linux,
originalmente desarrollado por Red Hat para Red Hat Linux, pero ahora se usa en muchos
otros. Por lo tanto, para instalar el sistema gestor en Linux debes considerar lo siguiente:
Para la instalación en plataforma Linux, MySQL requiere por lo menos la versión 2.0.
Al igual que en la plataforma de Windows, en Linux las especificaciones de hardware son
sin ningún requerimiento especial.
Para profundizar en el tema, revisa la página oficial de MySQL en el tema 2.4 Instalar MySQL
en Linux disponible en: http://dev.mysql.com/doc/refman/5.0/es/linux-rpm.html en donde
encontrarás el procedimiento y los archivos que necesitas para instalar MySQL en Linux.
Paquetes de Instalación
Existen versiones de MySQL estables o versiones beta en desarrollo; para esto, se deberá
tomar una decisión sobre que versión escoger. Para conocer más de estos temas tienes
consultar la siguiente dirección en internet de MySQL:
http://dev.mysql.com/doc/refman/5.1/en/introduction.html
En ella encontrarás que en la versión 5.0 de MySQL, hay tres paquetes para elegir cuando se
instala MySQL para Windows. Son: el paquete Essentials, el paquete Complete (Completo) y el
paquete Noinstall (Noinstall Archive). Ingresa a la siguiente página para revisar su descripción:
http://dev.mysql.com/doc/refman/5.0/es/windows-choosing-package.html
MySQL ofrece una serie de archivos RPM disponibles para versiones específicas en cada
distribución Linux y de igual forma también distribuye aplicaciones RPM para versiones de
código abierto o genérico. Algunas de las versiones MySQL son:
Linux –Generic 2.6. Versión RPM para arquitecturas independientes.
Debian Linux 6.0. Versión para distribuciones Debian para procesadores x86, 32 y 64
bits.
Red Hat /Oracle Enterprise 6.0. Versión para distribuciones Linux RedaHat y Oracle
Enterprise.
Actualmente se distribuyen RPMs que son específicos para algunas plataformas y la diferencia
entre uno específico y uno genérico se basa en que: el primero se desarrolla para la distribución
Linux específica y el genérico está destinado para distribuciones Linux Threads.
La plataforma Linux ofrece un medio de instalación mediante comandos usados dentro de una
terminal para poder realizar la instalación, en este ejemplo se toma como base la distribución de
Linux Fedora 17 y se muestra en la consola administración Linux Fedora 17 e instalación de
MySQL server 5.5.27
El procedimiento de instalación lo podrás encontrar en el sitio:
http://dev.mysql.com/doc/refman/5.0/es/linux-rpm.html
Durante este tema, se enfatizó que, al momento de instalar un sistema gestor de bases de
datos es indispensable saber y decidir la plataforma sobre la que se va a trabajar. En el tema
se presentaron y mostraron las más comunes: Windows y Linux. Además, revisaste qué
requieren cada una de ellas o los requisitos previos y los pasos a seguir para una instalación
correcta del sistema gestor de bases de datos seleccionado, dando así paso al siguiente punto
a considerar: planear cómo va a ser regida la administración del disco duro, qué tanto espacio
requiere para almacenar la información (la cual depende de los campos o tamaños de atributos
que se tienen en la base de datos) y, así decidir, si es conveniente segmentar el disco duro, en
qué tamaños conviene separarlo y saber exactamente el espacio que va a ocupar la base de
datos.
En este subtema revisaremos cómo se lleva a cabo la administración del Disco Duro. MySQL,
al igual que los demás sistemas gestores de bases de datos, requiere almacenar los datos en
algún lugar del disco duro del equipo. Por lo general, una base de datos tiende a ser de gran
tamaño, por lo cual es de utilidad poder almacenarla en un lugar físico, comúnmente en el disco
duro. El sistema de gestión de bases de datos, necesita almacenar la información que procesa
en medios físicos de almacenamiento.
Los datos son organizados por bloques que pueden ser manejados por tamaños fijos o
variables, el acceso a cierto bloque de datos en un disco duro variará de acuerdo a la suma del
tiempo que tarda en brazo del cabezal a la pista correcta del plato, esperar la rotación del eje
hasta el sector que deberá ser leído y en transferir los datos desde el inicio del sector hasta el
extremo del sector.
El proceso de lectura y escritura dentro del disco duro ocurre cuando el brazo del cabezal se
desplaza al sector indicado para leer o escribir los datos que se procesan dentro de MySQL. El
SGBD puede leer una sección continua de datos desde el disco duro, por medio de peticiones
de operaciones de exploración al sistema operativo, para organizar los datos en el disco duro
en un orden secuencial, al optimizar MySQL mediante comando optimize table, las tablas de
sus grupos de registros y de los índices son agrupados en forma de bloque.
MySQL tiene como característica principal en su estructura que separa todos los detalles de
Entrada/Salida además de la asignación de la información en memoria secundaria, esto es:
separa el motor de almacenamiento al resto de los componentes de la estructura general.
La siguiente imagen muestra la estructura general donde los conectores representan la API
(Interfaz de Programación de Aplicaciones) de MySQL que ofrece al usuario (Cliente). La
administración de servicios y uilidades, son aplicaciones que estan incluidas con el SGBD las
cuales se pueden instalar como aplicaciones adicionales: respaldos, replicación, aplicaciones
administrativas de interface gráfico y herramienta de diseño.
La estructura lógica de MySQL, establece una división entre los componentes que forman parte
del mismo servidor de bases de datos o SGBD, así como, la interacción entre las partes del
sistema operativo en las que se basa el almacenamiento físico y las aplicaciones cliente que
realizan las peticiones.
El almacenamiento de la base de datos será alojado en fichero o archivos incluidos dentro del
espacio del disco duro, segmentado para su propósito. MySQL utiliza diferente motores para el
almacenamiento de los datos. Un motor de almacenamiento es la parte fundamental de MySQL
ya que es el encargado de crear, recuperar eliminar y actualizar los registros de una base de
datos los cuales pueden ser almacenados de diversas formas.
Los motores de almacenamiento que se usan en MySQL tienen características propias que
distinguen unos de otros; los diferentes tipos de motores de almacenamiento usados en
MySQL son: MyISAM, Merge, Memory, Example, Archive, CSV, InnoDB. Para profundizar en el
tema, ingresa a la siguiente dirección de MYSQL y revisa las características de cada uno de
ellos:
http://dev.mysql.com/doc/refman/5.0/es/storage-engines.html
MySQL cuenta con una variedad bastante completa para los tipos de datos que serán utilizados
para la creación de una base de datos. Hablando específicamente de las tablas que integrarán
esa base de datos, en MySQL, debe respetarse un tamaño máximo, el cual varía dependiendo
del sistema operativo donde se encuentre instalado el MySQL. Para lo cual, te invitamos a que
revises el tema en el siguiente vínculo web, pero, observa detalladamente la lista de límites de
tamaños de ficheros u archivos según el sistema operativo en el que se encuentra instalado:
Ingresa a: http://dev.mysql.com/doc/refman/5.0/es/table-size.html
Al conocer estos datos el administrador y planeador de la base de datos conocerás el máximo
crecimiento al que puede llegar una base de datos.
El tamaño de las tablas variará dependiendo del tamaño de los tipos de datos, los cuales
pueden ser comúnmente: numéricos, caracteres y fechas.
Existen valores null, este se considera como valor no existente y se puede aplicar a todos los
tipos de columnas; existen también símbolos utilizados para la definición de los diferentes tipos
de datos en MySQL.
El tamaño ocupado de acuerdo a cada tipo de columnas en el disco duro, está en función de
las especificaciones descritas en la siguiente página web, aceza a ella y observa los
requerimientos de almacenamiento para cada tipo de datos y así poder hacer un cálculo del
espacio que ocupará la base de datos según se vaya llenando; a la vez, se puede calcular el
espacio en disco duro que se necesitará en cada etapa de crecimiento de la base de datos,
según se agregue información:
Ingresa a: http://dev.mysql.com/doc/refman/5.0/es/storage-requirements.html
De acuerdo al análisis anterior de los tipos de datos y diferentes tamaños de los valores de
caracteres y número usados para la creación de tablas de una base de datos, se puede asumir
el tamaño que utilizará la base de datos dentro del segmento asignado en el disco duro,
asistido por el motor de almacenamiento usado por MySQL. El motor de almacenamiento
InnoDB, emplea E/S en disco asíncrona simulada, creando un número de procesos que usarán
las operaciones de almacenamiento.
A lo largo de este subtema de la unidad pudiste: analizar la forma en que va a ser almacenada
la información en la base de datos y, con eso, establecer el tamaño y la estructura del disco
conforme a la cantidad de información que se va a almacenar según la cantidad de datos y sus
tipos; conocer el espacio que va a ocupar cada registro; y, si en algún momento hay un
crecimiento de los datos, saber a cuánto puede ascender y los límites máximos a los que
puede crecer según el sistema operativo que se use.
Cierre de la unidad
Has concluido la primera unidad del curso. A lo largo de ésta recordaste conceptos básicos: las
funciones básicas de un administrador de bases de datos; cómo se relaciona con otras áreas;
lo que debes analizar para seleccionar el manejador de bases de datos y lo que debes
administrar en los datos; los requisitos, los paquetes y los pasos para instalar MySQL en
Windows o Linux y cómo administrar el disco duro haciendo un análisis de su estructura,
segmentación y espacio.
Es aconsejable que revises nuevamente la unidad, en caso de que los temas que se acaban de
mencionar no te sean familiares, o no los recuerdes; de no ser éste tu caso, ya estás
preparado(a) para seguir con la unidad dos, en donde continuarás con el tema de Operaciones
básicas y en donde manejarás DDL (Data Definición Languaje), DML (Data Manipulation
Languaje) y DCL (Data Control Languaje). Todo ello con el fin de obtener el prototipo final,
cuando termines la última unidad del curso de Administración de Bases de Datos.
Fuentes de consulta
Date. C. (2001). Introducción a los sistemas de Bases de datos. México: Prentice Hall