taller de base de datos

63
TALLER DE BASE DE DATOS UNIDAD I Instalación y configuración del sistema gestor de bases de datos en distintas plataformas Ing. Domingo Trujillo Venegas

Upload: linda-ruedaflores

Post on 25-Jan-2016

7 views

Category:

Documents


0 download

DESCRIPTION

Taller de Base de DatosTaller de Base de Datos

TRANSCRIPT

Page 1: Taller de Base de Datos

TALLER DE BASE DE DATOS

UNIDAD IInstalación y configuración del sistema gestor de

bases de datos en distintas plataformasIng. Domingo Trujillo Venegas

Page 2: Taller de Base de Datos

TALLER DE BASES DE DATOS Instalación del Sistema Gestor de Base de Datos.

Base de Datos. Es un conjunto, colección o depósito de datos almacenados en un soporte informático de acceso directo.

Ventajas de las Bases de datos: REFERIDAS A:

Los Datos. Independencia de datos respecto a los tratamientos y viceversa. Mejor disponibilidad de los mismos. Mejor eficiencia en la recogida, codificación y entrada en el sistema.

Resultados Mayor coherencia, Mayor valor informativo. Mejor y más normalizada documentación de la información.

Page 3: Taller de Base de Datos

TALLER DE BASES DE DATOS

Los usuarios. Acceso más rápido y sencillo de los usuarios

finales. Más facilidades para compartir los datos por el

conjunto de los usuarios. Mayor flexibilidad para atender las demandas

cambiantes.

Page 4: Taller de Base de Datos

TALLER DE BASES DE DATOS

Desventajas de las Bases de datos. Referidas A:

Implantación. Costosa en equipo. Ausencia de estándares. Larga y difícil puesta en marcha. Rentabilidad a mediano plazo.

A los Usuarios: Personal especializado. Desfase entre teoría y práctica.

Page 5: Taller de Base de Datos

TALLER DE BASES DE DATOS

Sistema Gestor de Base de Datos(SGBD). Denominado también como DBMS. Se puede definir como un conjunto coordinado de programas,

procedimientos, lenguajes, etc., que suministra, tanto a los usuarios no informáticos como a los analistas, programadores o al administrador, los medios necesarios para describir, recuperar y manipular los datos almacenados en la base, manteniendo su integridad, confidencialidad y seguridad.

Lenguajes de bases de datos. Los SGBD proporcionan un lenguaje de definición de

datos(DDL) para especificar el esquema de la base de datos y un lenguaje de manipulación de datos(DML), para expresar las consultas y las modificaciones de las bases de datos.

Page 6: Taller de Base de Datos

TALLER DE BASES DE DATOS

Nos indica esta pantalla que se comenzara , a instalar el MySQL Server 5.5 , en nuestra computadora.

Page 7: Taller de Base de Datos

TALLER DE BASES DE DATOS

Esta pantalla , nos indica si estamos de acuerdo con el acuerdo , de usuario final al utilizar este software.

Page 8: Taller de Base de Datos

TALLER DE BASES DE DATOS

Aqui tendremos que escojer el tipo de setup que queremos utilizar para instalar nuestro software.

Page 9: Taller de Base de Datos

TALLER DE BASES DE DATOS

Para empezar la instalaión de este softaware, tendremos que dar click en botón Install.

Page 10: Taller de Base de Datos

TALLER DE BASES DE DATOS

En este momento el instalador de MySQL, comenzara a copiar los archivos necesarios, para completar dicha instalación.

Page 11: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 12: Taller de Base de Datos

TALLER DE BASES DE DATOS

Daremos click al botón de Finalizar, para salirnos del setup y empezar con la configuración de nuestro software.

Page 13: Taller de Base de Datos

TALLER DE BASES DE DATOS

Este setup nos permitira configurar el MySQL Server 5.5, para comenzar con la configuración daremos click en el botón de next.

Page 14: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 15: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 16: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 17: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 18: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 19: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 20: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 21: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 22: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 23: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 24: Taller de Base de Datos

TALLER DE BASES DE DATOS

Page 25: Taller de Base de Datos

TALLER DE BASES DE DATOS

Como instalar MySQL en CenTOS 6.41. Primeramente se cambiara como usuario root2. $ su3. Password:-------------4. Posteriormente se jecutara el comando yum

1. $ yum install mysql mysql-server

5. Ya instalado se levantara el servico del demonio de MySQL6. $ service mysqld start o bien7. $ chkconfig mysqld on8. Se dara posteriormente el password al usuario root de

mysql9. $ mysql_secure_installation

Page 26: Taller de Base de Datos

TALLER DE BASE DE DATOS

Lenguaje de definición de datos (DDL). Esquema de base de datos.

El esquema de una base de datos (en inglés, database schema) describe la estructura de una base de datos, en un lenguaje formal soportado por un sistema de gestión de base de datos (DBMS). En una base de datos relacional, el esquema define sus tablas, sus campos en cada tabla y las relaciones entre cada campo y cada tabla.

Niveles de esquema de base de datos. Esquema Conceptual, un mapa de conceptos y sus

relaciones. Esquema Lógico, un mapa de las entidades y sus atributos y

las relaciones. Esquema Físico, una aplicación de un esquema lógico.

Page 27: Taller de Base de Datos

TALLER DE BASE DE DATOS

Un modelo de datos es un lenguaje que, típicamente, tiene dos sublenguajes: Un Lenguaje de Definición de Datos o DDL (Data

definition Language), orientado a describir de una forma abstracta las estructuras de datos y las restricciones de integridad.

Un Lenguaje de Manipulación de Datos o DML (Data Manipulation Language), orientado a describir las operaciones de manipulación de los datos.

A la parte del DML orientada a la recuperación de datos, usualmente se le llama Lenguaje de Consulta o QL (Query Language).

Page 28: Taller de Base de Datos

TALLER DE BASE DE DATOS

 Clasificación de los modelos de datos. Modelos de Datos Conceptuales

Son los orientados a la descripción de estructuras de datos y restricciones de integridad. Se usan fundamentalmente durante la etapa de Análisis de un problema dado y están orientados a representar los elementos que intervienen en ese problema y sus relaciones. El ejemplo más típico es el Modelo Entidad-Relación.

Modelos de Datos Lógicos Son orientados a las operaciones más que a la descripción de una realidad.

Usualmente están implementados en algún Manejador de Base de Datos. El ejemplo más típico es el Modelo Relacional, que cuenta con la particularidad de contar también con buenas características conceptuales (Normalización de bases de datos).

Modelos de Datos Físicos Son estructuras de datos a bajo nivel implementadas dentro del propio 

manejador. Ejemplos típicos de estas estructuras son los Árboles B+, las estructuras de Hash, etc.

Page 29: Taller de Base de Datos

TALLER DE BASE DE DATOS

Creación del esquema de la base de datos. Para entrar al SGBD MySQL, entraremos al modo comando

de windows. C:\users\dtrujill> mysql Entramos en línea de comando de mysql, que enviara las

ordenes al mysql server. Para crear una base de datos en mysql utilizamos los

siguientes comandos: Mysql> create database empleado Mysql> create database if not exists empleado Para ver si esa Base deDatos se creo lo veremos con los

siguiente comado: Mysql> show databases;

Page 30: Taller de Base de Datos

TALLER DE BASE DE DATOS

Tipos de datos: Al describir las tablas que conforman nuestra base de

datos, debemos de definir que tipo de datos, debe de tener los campos que conforman nuestra tabla.

Los tipos de datos que puede haber en uncampo, se pueden agrupar en tres grandes grupos:

Tipos numéricos Tipos de Fecha Tipos de Cadena

Los tipos numéricos se pueden dividir en dos grandes grupos los que estan en coma flotante(decimales) y los que no.

Page 31: Taller de Base de Datos

TALLER DE BASE DE DATOS

Tinyint: es un número entero con o sin signo, que presenta los siguientes valores: -128 a 127 con signo 0 a 255 sin signo

Bit o Bool : Es un tipo entero que puede ser 0 ó 1. SmallInt : Es de tipo entero con y sin signo con

los valores siguientes: Con signo: -32768 a 32767 Sin signo: 0 a 65535

MediumInt: Es de tipo entero con y sin signo con los valores siguientes:

Page 32: Taller de Base de Datos

TALLER DE BASE DE DATOS

Con signo: -8,388,608 a 8388607 Sin signo: 0 a 16,777,215 Integer, Int: Es de tipo entero con y sin signo

con los valores siguientes: Con signo: -2,147,483,648 a 2,147,483,647 Sin signo: 0 a 4,294,967,295 BigInt: Es de tipo entero con y sin signo con

los valores siguientes: Con signo: -9,223,372,036,854,775,808 a 9,223,372,036,854,775,807

Page 33: Taller de Base de Datos

TALLER DE BASE DE DATOS

Sin signo: 0 a 18,446,744,073,709,551,615 Float: número pequeño de coma flotante de

presición simple. Sus valores son: -3.402823466E+38 a -1.175494351E-38 y desde 1.175494351E-38 a -3.402823466E+38. xReal, Double: número de coma flotante de

presición doble. Sus valores son: -1.7976931348623157E+308 a -2.225073858507385585072014E-308

Page 34: Taller de Base de Datos

TALLER DE BASE DE DATOS

y desde 2.2250738585072014E-308 a 1.7976931348623157E+308 Decimal, Dec, Numeric: número en coma

floante desempaquetado.Eñ número se almacena en una cadena.

Tipos Fecha: Al momento de almacenar fechas mysql solamente comprueba si el mes esta entre q y 12 y que el día este entre 0 y 31.

DATE Time: Almacena una fecha. El rango de valores va desde el 1 de Enero del 1001 al 31 de Diciembre de 9999. El formato es año-mes-dia.

Page 35: Taller de Base de Datos

TALLER DE BASE DE DATOS

TimeStamp: Combinación de fecha y hora. El rango va desde el 1 de enero de 1970 al año 2037.

Tamañobytes

Formato

14 Año MesDiaHoraMinutoSegundoaaaammddhhmmss

12 Año MesDiaHoraMinutoSegundoaammddhhmmss

8 AñoMesDia aaaammdd

6 AñoMesDia aammdd

4 Añomes aamm

2 Año aa

Page 36: Taller de Base de Datos

TALLER DE BASE DE DATOS

Time: almacena una hora. En el siguiente rango:

-838 horas,59 minutos y 50 segundos a 838 horas 59 minutos, 59 segundos. El formato es ‘HH:MM:SS’ .

Year: almacena un año. Que va desde elaño 1901 al año 2155.

Tipos de cadena: Char(n): almacena una cadena de longitud

fija. Puede contener desde 0 a 255 caracteres.

Page 37: Taller de Base de Datos

TALLER DE BASE DE DATOS

VarChar(n): almacena una cadena de longitud variable. Podrá contener desde 0 a 255 caracteres.

Dentro los tipos de cadena existen dos tipos: Text. BLOB(Binary large Object). La diferencia entre ellos es que cuando se

realizan ordenamientos y comparaciones, en Test se ordena sin tomar en cuenta mayúsculas y minúsculas y el tipo BLOB se ordena teniéndolas en cuenta.

Page 38: Taller de Base de Datos

TALLER DE BASE DE DATOS

Los tipos BLOB se utilizan para almacenar datos binarios.

TinyText y TinyBlob :Columna con una longitud máxima de 2555 caracteres.

Blob y Text: texto con un máximo de 65535 caracteres.

MediumBlob y MediumText: texto con un máximo de 16,777,215 caracteres.

Page 39: Taller de Base de Datos

TALLER DE BASE DE DATOS

LongBlob y LongText: un texto con un máximo de caracteres de 4,294,967,295. Pero se tiene que tomar encuenta que debido a los protocolos de comunicación los paquets deben de tener un máximo de 16 Mb.

Enum : campo que puede tener un único valor de una lista que se específica. El tipo Enum acepta hasta 65535 valores distintos.

Set : un campo que puede contener ninguno, uno o varios valores de una lista. La lista puede tener hasta un máximo de 64 valores.

Page 40: Taller de Base de Datos

TALLER DE BASE DE DATOS Creación de Tablas en MySQL.

Vamos usar el siguiente ejemplo de un base de datos denominada empleados, su esquema es el siguiente:

empleado(id_empl, nom_empl, pue_empl, id_depa)

departamento(id_depa,nom_depa) habempl(id_empl,hab_habe) cliente(id_clie, nom_clie, dir_clie, con_clie,

cnum_clie) asignacion( id_clie, id_empl, fent_asig, hor_asig)

Page 41: Taller de Base de Datos

TALLER DE BASE DE DATOS

drop database empleados if exists empleado create database empleado use empleado create table departamento ( id_depa int not null auto_increment primary

key, nom_depa varchar(30) } Engine = InnoDB;

Page 42: Taller de Base de Datos

TALLER DE BASE DE DATOS

create table empleado (

id_empl int not null auto_increment primary key,

nom_empl varchar(60), pue_empl varchar(30), id_depa int not null references

departamento(id_depa) )Engine = InnoDB;

Page 43: Taller de Base de Datos

TALLER DE BASE DE DATOS

create table habempl (

id_empl int not null references empleado(id_empl),

hab_habe varchar(25) not null, primary key(id_empl, hab_habe) ) Engine = InnoDB

Page 44: Taller de Base de Datos

TALLER DE BASE DE DATOS

create table cliente (

id_clie int not null auto_increment primary key,

nom_clie varchar(40), dir_clie varchar(90), con_clie varchar(70), cnum_clie varchar(12) )Engine = InnoDB;

Page 45: Taller de Base de Datos

TALLER DE BASE DE DATOS

create table asignacion (

id_clie int not_null references cliente(id_clie), id_empl int not_null references

empleado(id_empl), fent_asig date not mull, hor_asig float, primary key (id_clie, id_empl, fent_asig) )Engine = InnoDB;

Page 46: Taller de Base de Datos

TALLER DE BASE DE DATOS

Motores de almacenamiento. MySQL puede manejar varios motores de

almacenamiento como pueden ser: InnoDB MyISAM MERGE Memory (HEAP) BDB(BerkeleyDB) FEDERATED ARCHIVE CSV

Page 47: Taller de Base de Datos

TALLER DE BASE DE DATOS

MyISAM y InnoDB El motor de almacenamiento (storage-engine) se

encarga de almacenar, manejar y recuperar información de una tabla.

La decisión de utilizar uno u otro motor de almacenamiento depende de la utilización que se la va dar a la base de datos.

 Si necesitamos transacciones, claves foráneas y bloqueos, tendremos que escoger InnoDB. Por el contrario,escogeremos MyISAM en aquellos casos en los que predominen las consultas SELECT a la base de datos. InnoDB dota a MySQL de un motor de almacenamiento transaccional (conforme a ACID) con capacidades de commit (confirmación), rollback (cancelación) y recuperación de fallos. InnoDB realiza bloqueos a nivel de fila.

Page 48: Taller de Base de Datos

TALLER DE BASE DE DATOS

Soporta también las restricciones FOREIGN KEY.

MyISAM es el motor por defecto. Para crear una tabla InnoDB se debe especificar la opción ENGINE = InnoDB o TYPE = InnoDB en la sentencia SQL de creación de tabla.

Page 49: Taller de Base de Datos

TALLER DE BASE DE DATOS

Ventajas. InnoDB Soporte de transacciones Bloqueo de registros Nos permite tener las características ACID (Atomicity, Consistency, Isolation and

Durability: Atomicidad, Consistencia, Aislamiento y Durabilidad en español), garantizando la integridad de nuestras tablas.

Es probable que si nuestra aplicación hace un uso elevado de INSERT y UPDATE notemos un aumento de rendimiento con respecto a MyISAM.

MyISAM Mayor velocidad en general a la hora de recuperar datos. Recomendable para aplicaciones en las que dominan las sentencias SELECT ante

los INSERT / UPDATE. Ausencia de características de atomicidad ya que no tiene que hacer

comprobaciones de la integridad referencial, ni bloquear las tablas para realizar las operaciones, esto nos lleva como los anteriores puntos a una mayor velocidad.

Page 50: Taller de Base de Datos

TALLER DE BASE DE DATOS

Forma general de estatuto create table. create[temporary] table [if not exists] tbl-nomb [(definiciones_de_create] o puede ser create[temporary] table [if not exists] tbl-

nomb like tbl-existente. definiciones_de crate.

nom_col tipo [not null | null] [default valor] [auto_increment] [primary key] [definicion references]

Page 51: Taller de Base de Datos

TALLER DE BASE DE DATOS

primary key(index nom_col) key [index_nom] (index nom_col..) index [index_nom] (index nom_col..) unique [index] [index_nom] (index

nom_col..) fulltext [index] [index_nom] (index

nom_col..) foreign key [index_nom] (index

nom_col..) [reference_definicion]

Page 52: Taller de Base de Datos

TALLER DE BASE DE DATOS

Podemos borrar una base de datos de la siguiente manera:

drop database nom_bd; También podemos borrar una tabla de la

BD: drop table nom_tabla; Bien podemos borrar los indexes crados. drop index nom_index on mon_tabla

Page 53: Taller de Base de Datos

TALLER DE BASE DE DATOS

También podemos modificarla estructura de la base de datos y de la tablas que lo conforman.

Podemos agregar campos, index a la tabla alter table nom_tabla add (definición de la columna) Alter table nom_tabla add (definición del index). ejemplos

Page 54: Taller de Base de Datos

TALLER DE BASE DE DATOS

alter table empleado add sex enum(“m”,”f”) default “m”; alter table empleado add index name (nom_empl); Otra forma de crear index podemos hacerlo

de la siguiente forma: create index name on empleado(nom_empl); create index part_nom on

empleado(nom_empl(5));

Page 55: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 56: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 57: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 58: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 59: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 60: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 61: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 62: Taller de Base de Datos

TALLER DE BASE DE DATOS

Page 63: Taller de Base de Datos

TALLER DE BASE DE DATOS