ADMINISTRACÓN DE BASE DE DATOS Jaroslav Reznik Tomas Ochmann.

Slides:



Advertisements
Presentaciones similares
Transacciones y Concurrencia en Oracle
Advertisements

SQL Sigla del nombre “Structured Query Language”.
LENGUAJE ESTRUCTURADO DE CONSULTA “SQL”
Base de Datos Orientada a Objetos (OODBMS)
Administración de transacciones y bloqueos
ACCESO A BASES DE DATOS ORACLE CON PHP
Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: DML Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información Otros objetos de Base de Datos Ing. Alfonso Vicente, PMP
Bases de Datos SQL, Structured Query Language
PRIVILEGIOS DE ACCESO EN INFORMIX
Unidad 3 Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
4.3. Privilegios de usuarios
Cristian Alaniz - Daniel Hielpos. Agenda - Arquitectura - Tipos de Objetos - Lenguaje de Consulta - Transacciones - Backup y Recuperación - Seguridad.
PL/SQL Francisco Moreno Universidad Nacional.
Contenido de la sesión 1 Bases de Datos Relacionales Lenguaje SQL
Transacciones (MySQL). Definición: Conjunto de sentencias que se tratan como una sola. Comienzan con BEGIN/START TRANSACTION; Se puede confirmar (COMMIT)
Mayo de 2009Dos Ideas - La visión de Sistemas desde el Desarrollo Definición de Datos Conceptos básicos.
MySQL M.C. Pedro Bello López.
Lenguaje SQL (Structured Query Language)
SQL Lenguaje de consulta estructurado
1 BD Activas: Motivación zLos SGBD convencionales son “pasivos”. Sólo ejecutan preguntas o transacciones realizadas por los usuarios o por los programas.
Bases de Datos Relacionales
Motores de almacenamiento en MySQL por Mario López y Juan A. Sánchez.
PL/SQL Francisco Moreno Universidad Nacional.
Universidad del Cauca – FIET – Departamento de Sistemas
Procedimientos Almacenados Funciones Agregadas
Bases de datos en la Web n Las bases de datos permiten almacenar de una forma estructurada y eficiente toda la información de un sitio web n Ventajas –Proporcionar.
Lenguaje Estructurado de Consultas
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Dr. Mario Rossainz López Aplicaciones WEB Primavera 2015.
Laboratorio de Bases de datos
Universidad del Cauca – FIET – Departamento de Sistemas CAPITULO 11 Creando Vistas.
T ABLESPACES EN O RACLE JULIÁN JOSÉ TORRES ZABALA PEDRO JAVIER SILVA CRISTIAN CAMILO RAMIREZ JULIAN ARJONA UNIVERSIDAD DEL TOLIMA INGENERIA DE SISTEMAS.
SQL: DDL Francisco Moreno & Carlos Mario Zapata. SQL:DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la Base de Datos Tipos de Objetos:
SQL (Structured Query Language / Lenguaje de consulta estructurado)‏
Félix Tovar C.I: Daniel Hernández C.I:
Programación en Visual Basic Lección #8: SQL Por Antonio F. Huertas.
Vista Externa de Una Base de Datos John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Características Objeto-Relacionales en Oracle Francisco Moreno Universidad Nacional.
LENGUAJE SQL.
Structured Query Language (Lenguaje Estructurado de Consultas)
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
SQL: DDL Francisco Moreno. SQL: DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la BD Tipos de objetos: - Tablas: corresponden a las.
CONSTRUCCIÓN DE BASES DE DATOS
LENGUAJE ESTRUCTURADO DE CONSULTAS
Vista Externa de Una Base de Datos John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Base de Datos I. SQL es el lenguaje estándar para trabaja con base de datos relacionales. MySQL, el sistema de gestión de bases de datos SQL Open Source.
Diseña y administra base de datos avanzadas
Consultas SQL. SQL SQL es un lenguaje de consulta estructurado (Structured Query Languague). Se utiliza para: Eliminar Modificar Consultar La base de.
Base de datos Francisco Castro. Creación de una tabla drop table TABLA cascade constraints; /*==============================================================*/
PUESTO-TRABAJO (Código-Puesto, Empresa, Sueldo, DNI- Contratado) TITULADO (DNI-Titulado, Nombre, Apellidos, Dirección) TITULACION (Iden-Titulación, Nombre,
Comandos DDL Los comandos DDL son las siglas de Data Definition Language, y se corresponde con el conjunto de órdenes que permiten definir las estructuras.
Usuarios y privilegios
SQL es un estándar internacional para trabajar con bases de datos, que consta de dos partes: una parte para manipular datos y una parte para definir tipos.
MULTIPLAN Multiplan es la práctica en grupo que hemos tenido que realizar durante el curso según las especificaciones dadas en la asignatura.
SQL Lenguaje Estructurado de Consultas. Structured Query Lenguaje (SQL). Lenguaje de acceso a bases de datos. Proyecto de Investigación de IBM. La mayoria.
Usuarios. Colocar el servidor en el modo de autenticación Windows/SqlServer. En SQL Server Management Studio, click derecho, Propiedades en la Instancia.
ORACLE SQL - DCL.
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
Sentencias DDL y DML PostgreSQL. Base de Datos I – Fundamentos Básicos PostgreSQL PostgreSQL es un servidor de base de datos relacional libre bajo la.
SQL: DDL.
6 Triggers ORACLE - II Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega.
3 Cursores ORACLE Bases de datos II I-2014 Universidad del Cauca In. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca In. Wilson Ortega.
Administración de Base de Datos Integridad Prof Mercy Ospina Torres Prof Renny A. Hernandez
DML Transact SQL Sesión X Triggers. Duración 2 Horas.
6 Triggers ORACLE Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega.
Lenguaje MySQL, DDL (Lenguaje de definición de datos) Ing. Linda Masias Morales.
6 Triggers ORACLE - III Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega.
BASE DE DATOS IUPSM CLASE PRACTICA. PROF. ING. JOSE L GUZMAN H.
Transcripción de la presentación:

ADMINISTRACÓN DE BASE DE DATOS Jaroslav Reznik Tomas Ochmann

ABD - Primera práctica Creación de la Base de Datos y carga inicial  DDL (data definition language) CREATE, DROP, ALTER triggers grants Estudio de Indices  Indices para los atributos candidatos Reorganización de la BD  lógica y física

Creación de la BD I. Creación de la Base de Datos  DDL script create database oraXE  Nombre de la base de dato oraXE  Tamaño del bloque 8192B  Tamaño de memoria 80M  raíz a ficheros de BD C:\oraclexe\oradata\oraXE Creación de usuario  CREATE USER ABDDBA IDENTIFIED BY clave

Creación de la BD II. Derecho de conexión a BD GRANT "CONNECT" TO ABDDBA ; Derecho de la BD GRANT DROP ANY TRIGGER TO ABDDBA ; GRANT UPDATE ANY TABLE TO ABDDBA ; GRANT ALTER ANY TRIGGER TO ABDDBA ; GRANT ALTER ANY TABLE TO ABDDBA ; GRANT SELECT ANY TABLE TO ABDDBA ; GRANT CREATE ANY TABLE TO ABDDBA ; GRANT CREATE ANY TRIGGER TO ABDDBA ; GRANT DROP ANY TABLE TO ABDDBA ;

Creación de la BD III. Creación de las tablas de la BD  Según un diagrama entidad-relación  DDL CREATE TABLE nombre...  atencion_medica  paciente  motivo  medico  clinica  consulta

Creación de la BD III. Carga de datos  Recuperación Falta dato necesario (trigger) Trigger before insert Hay que quedar integridad de la BD create or replace trigger puesto_null before insert on personal for each row when ( (new.puesto is NULL)) begin :new.puesto := 'falta!!!'; end; /

Creación de la BD IV. Tablas externas para cargar datos de ficheros ORGANIZATION EXTERNAL ( TYPE ORACLE_LOADER DEFAULT DIRECTORY MIDIRECTORIO ACCESS PARAMETERS ( records delimited by newline fields ( cod_clinica POSITION( 1:6) INTEGER EXTERNAL, direccion POSITION( 7:66) CHAR, ciudad POSITION ( 67:96) CHAR, telefono POSITION( 97:105) CHAR ) LOCATION ( 'clinica.txt' ) REJECT LIMIT UNLIMITED;

Estudio de indices I. Datos pegueños y grandes 3 sentencias de Select 1 sentencia de Update Medida de los Tiempos  Sin cláves foráneas  Con cláves foráneas  Atributos candidatos

Estudio de indices II. Creación de claves primarios  ALTER TABLE paciente ADD CONSTRAINT paciente_pk PRIMARY KEY (cod_paciente); Creación de claves foráneas  ALTER TABLE atencion_medica ADD CONSTRAINT atencion_medica_paciente_fk FOREIGN KEY (cod_paciente) REFERENCES paciente (cod_paciente); Indices para atributos candidatos  Atributo candidato – sentencia SQL contiene atributo en WHERE parte

Estudio de indices III. Mejor tiempos  Claves primarios y secundarios Datos pegueños  indice cod_paciente en tabla atencio_medico  indice operacione en tabla paciente  indice fecha_nac en tabla paciente Datos grandes  Todos indices sin turno en tabla madico

ABD - Segunda práctica Catálogo de la Base de Datos  Tres vistas para ABD sobre catálogo  Para indices y tablas Ejecución de Transacciones Concurrentes  Estudio detallado de la ejecución de transactiones

Catálogo de la Base de Datos I. Catálogo  almacena metadata de la BD estructura de la Base de Datos indices... Vistas  CREATE VISTA nombre AS SELECT...  muchas vista de cátalogo DBA_TABLES DBA_INDEXES...

Catálogo de la Base de Datos II. Vista A  Por cada indice: nombre del indice nombre de la tabla a la que indexa si es único o no y por cada atributo  el nombre  la posición  el tipo de datos  la longitud del atributo

Catálogo de la Base de Datos III. Vista A CREATE VIEW VISTA_A AS SELECT DISTINCT DBA_INDEXES.INDEX_NAME, DBA_INDEXES.TABLE_NAME, DBA_INDEXES.UNIQUENESS, DBA_IND_COLUMNS.COLUMN_NAME AS ATRIBUTE_NAME, DBA_IND_COLUMNS.COLUMN_POSITION AS ATRIBUTE_POSITION, DBA_TAB_COLUMNS.DATA_TYPE AS ATRIBUTE_TYPE, DBA_IND_COLUMNS.COLUMN_LENGTH AS ATRIBUTE_LENGTH FROM DBA_INDEXES, DBA_IND_COLUMNS, DBA_TAB_COLUMNS WHERE (DBA_INDEXES.INDEX_NAME=DBA_IND_COLUMNS.INDEX_NAME) AND (DBA_IND_COLUMNS.COLUMN_NAME=DBA_TAB_COLUMNS.COLUMN_NAME) AND (DBA_INDEXES.OWNER='ABDDBA') ORDER BY DBA_INDEXES.INDEX_NAME;

Catálogo de la Base de Datos IV. Vista B  Por cada indice: nombre del indice nombre de la tabla a la que indexa si está activo o no la longitud total de clave de indice

Catálogo de la Base de Datos V. Vista B CREATE VIEW VISTA_B AS SELECT DBA_INDEXES.INDEX_NAME, DBA_INDEXES.TABLE_NAME, STATUS AS ACTIVE, (SELECT SUM(COLUMN_LENGTH)+COUNT(*) FROM DBA_IND_COLUMNS WHERE INDEX_NAME=DBA_INDEXES.INDEX_NAME) AS OVERALL_LENGTH FROM DBA_INDEXES WHERE (DBA_INDEXES.OWNER='ABDDBA') ORDER BY INDEX_NAME;

Catálogo de la Base de Datos VI. Vista C  Por cada tabla en la BD: nombre de l tabla cuenta de columnas tamaño de columna la longitud TABLE_NAME COLUMNS COLUMNS_LENGTH NUM_ROWS TOTAL_LENGTH

Catálogo de la Base de Datos VII. Vista C CREATE VIEW VISTA_C AS SELECT DBA_TABLES.TABLE_NAME, (SELECT COUNT(DBA_TAB_COLS.COLUMN_NAME) FROM DBA_TAB_COLS WHERE (DBA_TABLES.TABLE_NAME=DBA_TAB_COLS.TABLE_NAME)) AS COLUMNS, (SELECT SUM(DBA_TAB_COLS.DATA_LENGTH) FROM DBA_TAB_COLS WHERE (DBA_TABLES.TABLE_NAME=DBA_TAB_COLS.TABLE_NAME)) AS COLUMNS_LENGTH, DBA_TABLES.NUM_ROWS, (SELECT SUM(DBA_TAB_COLS.DATA_LENGTH)*DBA_TABLES.NUM_ROWS FROM DBA_TAB_COLS WHERE (DBA_TABLES.TABLE_NAME=DBA_TAB_COLS.TABLE_NAME)) AS TOTAL_LENGTH FROM DBA_TABLES WHERE (DBA_TABLES.OWNER='ABDDBA') ORDER BY DBA_TABLES.TABLE_NAME;

Catálogo de la Base de Datos VIII. Privilegios para usuario ABDDBA GRANT SELECT ON DBA_INDEXES TO ABDDBA; GRANT SELECT ON DBA_IND_COLUMNS TO ABDDBA; GRANT SELECT ON DBA_TAB_COLUMNS TO ABDDBA; GRANT SELECT ON DBA_TABLES TO ABDDBA; GRANT SELECT ON DBA_TAB_COLS TO ABDDBA; GRANT CREATE VIEW TO ABDDBA;

Ejecución de Trans. Concurentes I. Isolation levels en Oracle  READ COMMITED por defecto en Oracle nonrepeatable query  SERIARIZABLE más restrictivo Mode  READ ONLY Solo para lectura

Ejecución de Trans. Concurentes II. Transactiones  SET TRANSACTION ISOLATION LEVEL  READ COMMITED  SERIARIZABLE NAME 'nombre'  COMMIT Termina transaction y aplica a la BD  ROLLBACK Termina transaction y deshecho

Ejecución de Trans. Concurentes III. ISOLATION LEVEL READ COMMITED  lectura – lectura no hay ninguna problema  lectura-escritura lee solo datos que están commited, nonrepeatable read  esctritura - escritura puede ocurrir un interbloqueo

Ejecución de Trans. Concurentes IV. ISOLATION LEVEL SERIARIZABLE  lectura – lectura no hay ninguna problema  lectura-escritura datos en lo mismo estado como en momento de empieza de transaction – repeatable read  esctritura - escritura puede ocurrir un interbloqueo – un error ORA-08177: can't serialize access for this transaction

Ejecución de Trans. Concurentes V. INTERBLOQUEO  dos transactiones concurentes T1 y T2  en mismo tiempo misma fila  fila cerrada por T1  T2 no puede hacer cambios COMMIT; SET TRANSACTION ISOLATION LEVEL READ COMMITED NAME 'T1'; UPDATE CLINICA SET CIUDAD='Sevilla' WHERE COD_CLINICA='1'; SELECT * FROM CLINICA WHERE COD_CLINICA='1' OR COD_CLINICA='2'; UPDATE CLINICA SET CIUDAD='Madrid' WHERE COD_CLINICA='2'; SELECT * FROM CLINICA WHERE COD_CLINICA='1' OR COD_CLINICA='2'; COMMIT; COMMIT; SET TRANSACTION ISOLATION LEVEL READ COMMITED NAME 'T2'; UPDATE CLINICA SET CIUDAD='Praha' WHERE COD_CLINICA='2'; SELECT * FROM CLINICA WHERE COD_CLINICA='1' OR COD_CLINICA='2'; UPDATE CLINICA SET CIUDAD='Brno' WHERE COD_CLINICA='1'; SELECT * FROM CLINICA WHERE COD_CLINICA='1' OR COD_CLINICA='2'; COMMIT;

ABD – Artículo I. Diferentes entre SGBD  Varios presentación de datos  Diferentes lenguas  Fecha y tiempo  Triggers and procedures Precio de cambio  costa dinero  costa tiempo

ABD – Artículo II. Morpheus  Architectura SGBD independiente 3 principales partes  Core  Metadata model  Database abstraction layer Access contol subsystem  Derechos de ususarios

ABD – Artículo III. Resultados de Morpheus  Implementacion en PHP  Pruebas del tiempo  Buenos resultados con muchos datos y usuarios  Posible uso en Web o televisión digital