32
MANUAL DE INGENIERÍA EN SISTEMAS COMPUTACIONALES PLAN ISIC-2010- 2004 ADMINISTRACIÓN DE BASES DE DATOS SCB-1001

36m

Embed Size (px)

DESCRIPTION

MUY BUENA ENTREVISTA

Citation preview

Manual de Prcticas

Administracin de Bases de Datos [SCB-1001]

ADMINISTRACIN DE BASES DE DATOS

SCB-1001

Manual de Prcticas

PLAN ISIC-2010-2004Ingeniera en Sistemas Computacionalesndice

INTRODUCCIN1

PRCTICA 1Fundamentos de la Inteligencia Artificial1PRCTICA 2Representacin del conocimiento1PRCTICA 3Sistemas de razonamiento lgico1PRCTICA 4Bsqueda y Satisfaccin de Restricciones1

LISTA DE MATERIAL, EQUIPO O REACTIVO A UTILIZAR1LISTA DE BIBLIOGRAFA REQUERIDA1

CONTROL DE CAMBIOS DEL MANUAL DE PRCTICAS1

INTRODUCCIN

La informacin en una Base de Datos (BD) est sujeta a diversos peligros, tanto deliberados comoaccidentales. Por tanto, el Sistema Gestor de Base de Datos (SGBD) deber ofrecer un conjunto apropiado de controles paraproteger la BD contra este tipo de riesgos. Entre los controles necesarios estn los derecuperacin, concurrencia, seguridad e integridad.

Los problemas de recuperacin y concurrencia estn muy ligados con la nocin deprocesamiento de transacciones. En este captulo presentamos el concepto de transaccin,usado para representar una unidad lgica de procesamiento de la BD. Estudiaremos lastcnicas de control de concurrencia, utilizadas para asegurar que mltiples transaccionesrealizadas por varios usuarios no interfieren entre s produciendo resultados incorrectos.Tambin analizaremos las tcnicas para la recuperacin desde transacciones fallidas.

Los temas a tratar son diversos y dependen del SGBD ocupado

Prctica1SUBTEMA:

ADMINISTRADOR DE BASE DE DATOS.

Observaciones Esta prctica incluye a la Prctica # 1 del temario deAdministrador de Base de Datos que dice Funciones de un DBA

1.- OBJETIVOConocerlas funciones del administrador de Base de datos2.- MARCO TERICOSGBD SMBD: Conjunto de programas que controla todo el acceso a la Base de Datos , y proporciona la interfaz entre el usuario y el sistema de Base de Datos.Base de Datos: Es una coleccin de archivos interrelacionados, creados con un SGBD. El contenido de una Base de Datos engloba la informacin concerniente (almacenadas en archivos) de una organizacin, de tal manera que los datos estn disponibles para los usuarios, una finalidad de la base de datos es eliminar la redundancia o al menos minimizarla.Server2Go. Servidor portable para el desarrollo de aplicaciones que incluye entre otros MySQL, Apache, PHP, etc.

3.- MATERIAL, EQUIPO O REACTIVO

4.- PROCEDIMIENTOI. Organizar por equipos a los alumnos (2 integrantes mximo).II. Entrevistar a personas que cubren la funcin de ABD en empresas de la reginIII. Realizar un manual de actividades para el ABD en una empresa ficticia,IV. Cuadro comparativo de los SMBD.propuesta por el docente5.- APARATOS E INSTRUMENTOSI. Computadora6. ACTIVIDADES, DATOS Y RESULTADOSEl alumno conocer las funciones del administrador de base de datos..

CONCLUSIONESAl concluir esta prctica el alumno habr realizado la entrevista y el cuadro comparativo para adquirir conocimientos de los SMBD.7. PRACTICA A RESOLVER

8.- BIBLIOGRAFA

Prctica2SUBTEMA:

INSTALACIN Y CONFIGURACIN DE UN SMBD

Observaciones: Esta prctica incluye las propuestas en el temario: 1) Instalar y configurar un manejador de base de datos, usando los asistentesproporcionados por el fabricante del gestor, 2) Realizar un anlisis comparativo de diferentes manejadores de bases de datos, 3) Instalar y configurar del manejador elegido para el desarrollo de la materia, sin utilizar los asistentes y en sistemas operativos distintos, y 4) Desarrollar un proyecto integrador relacionado con otras materias.

1.- OBJETIVOConocer la instalacin y configuracin de un SMBD en diferentes S.O., considerando una base de datos para una aplicacin real.2.- MARCO TERICORequisitos previosAntes de instalar PostgreSQL, comprueba que tienes el siguiente software en tu ordenador: Un descompresor de ficheros ZipWindows XP los maneja automticamente; si no tienes uno disponible, instlate WinZip, por ejemplo. Microsoft InstallerPresente por defecto en Windows 2000, Me y XP. Puedes comprobar si lo tienes instalado seleccionando "Ejecutar..." en el men Inicio y escribiendo MSIEXEC. Si no aparece un cuadro de dilogo informndote de la versin, debes instalar una versin apropiada: Para Windows 95/98/Me Para Windows NT/2000/XPAdems, debes saber cmo cambiar las variables de entorno de Windows. Esto depende de tu versin de Windows, pero normalmente puedes hacerlo desde el Panel de Control, opcin "Sistema", etiqueta "Avanzado" o similar. Para ms informacinEsta informacin est basada en el documento InstallingthePeerDirectPostgreSQL beta for Windows.En el web ofical de PostgreSQL puedes encontrar toda la informacin sobre PostgreSQL, incluyendo documentacin, tutoriales, utilidades e informacin sobre otras versiones de PostgreSQL que funcionan bajo WindowsDefinicin de SQLiteSQLite es un sistema de gestin de bases de datos relacional compatible con ACID (Atomicity, Consistency, Isolation and Durability Atomicidad, Consistencia, Aislamiento y Durabilidad). SQLite slo necesita una librera (biblioteca) que ocupa poco ms de 700KB (tclsqlite3.dll). Desarrollada en C, SQLite es un proyecto de dominio pblico creado por D. Richard Hipp.A diferencia de los sistemas de gestin de base de datos cliente-servidor (Oracle, MySQL, Microsoft SQL Server, DB2, etc.), el motor de SQLite no es un proceso independiente con el que el programa principal se comunica, sino que es una biblioteca (finchero DLL) que se enlaza con el software mediante llamadas a funciones y subrutinas. Esto reduce la latencia en el acceso a la base de datos, debido a que las llamadas a funciones son ms eficientes que la comunicacin entre procesos. La base de dato SQLite (definiciones, tablas, ndices y datos) se guarda como un slo fichero estndar en la mquina host. Este diseo simple se logra bloqueando todo el fichero de base de datos al principio de cada transaccin.Actualmente, SQLite va por la versin 3.6.11, que permite bases de datos de hasta 2 Terabytes de tamao, y tambin permite la inclusin de campos tipo BLOB.Este motor de base de datos es muy til para realizar aplicaciones de propsito general que necesiten guardar datos en base de datos y que no sean "intrusivos", es decir, programas que con un ejecutable, una DLL y un fichero de base de datos funcionaran perfectamente, sin necesidad de instalacin de motores de base de datos, ni de ningn otro componente.3.- MATERIAL, EQUIPO, REACTIVO o SOTFWARE A UTILIZAREn la lista siguiente se describe el hardware, el software, la infraestructura de red que necesitar: Microsoft Access Laboratorio de Centro de cmputo. Sistema Operativo Windows Xp Sistema Operativos Linux

4.- COMPETENCIAS ESPECFICASI. Organizar por equipos a los alumnos (2 integrantes mximo).II. Instalacin1. Bjate el fichero Zip que contiene PostgreSQL y descomprmelo en c:\. Se crear un directorio postgres_beta4. Cmbiale el nombre a pgsql2. Crea las siguientes variables de entorno: PGHOME=C:\pgsql PGDATA=%PGHOME%\data PGLIB=%PGHOME%\lib PGHOST=localhost

3. Aade a la variable de entorno PATH la cadena ;%PGHOME%\bin

4. Utilizando la opcin "Ejecutar..." del men Inicio, lanza los siguientes programas: initdb post_svc -install pg_ctlstart

El primero de ellos inicializa la base de datos. El segundo instala PostgreSQL como un servicio de Windows, y el tercero arranca el servicio. A partir de este momento, puedes arrancar o parar el servidor de base de datos mediante la opcin Servicios del Panel de Control. El nombre del servidor es UltraSQLDatabaseService

Utilidades adicionalesEs recomendable que instales tambin la utilidad de administracin grfica de PostgreSQL, que proporciona entre otras cosas un entorno ms cmodo que psql bajo Windows. Antes de poder utilizarla has de instalar tambin el controlador ODBC para PostgreSQL. III. Instalacin1. Descargar de la pgina: http://www.sqlite.org/download.html el ejecutable "sqlite3.exe", disponible gratuitamente.2. seleccionaremos en "PrecompiledBinariesForWindws" el enlace "sqlite-3_6_11.zip":

3. Descomprimiremos el fichero descargado "sqlite-3_6_11.zip", al descomprimirlo tendremos el fichero "sqlite3.exe" de 490KB. A continuacin abriremos una ventana de MS-DOS (lnea de comandos), desde "Inicio" - "Ejecutar" escribiremos "cmd" y pulsaremos "Aceptar" o en explorador de archivos :

4. En la lnea de comandos, accederemos a la carpeta donde hayamos descomprimido el fichero sqlite3.exe, con los comandos:5. Se hace la instalacin.IV. Instalar y configurar del manejador elegido para el desarrollo de la materia, sin utilizar los asistentes y en sistemas operativos distintosV. Seleccionar DBMS para desarrollar un proyecto integrador relacionado con otras materias

5. RESULTADOSEl alumno lograr habilidades de instalacin de diferentes DBMS.

6. CONCLUSIONES.7.- BIBLIOGRAFA1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill, 20062. Mannino Michael V. Administracin de bases de datos: Diseo y desarrollo de aplicaciones.2da. Edicin, Editorial Mc Graw Hill. Ao 2009.3. Abraham Silbertshatz, Henry F. Korth, S. Sudarshan, Fundamentos de base de datos, 5ta edicin, Mc Graw Hill.4. PEREZ, C. Oracle 10g. Administracin y Anlisis de Bases de Datos. 2 edicin.Editorial Ra-ma.5. Everest Gordon C. Database management. Objectives, system function & administration.3ra. Edicin McGrawHill.6. Farley, Gua de Seguridad e Integridad de Datos, Serie LanTimes, Editorial Mc-Graw Hill7. Ramakrishnan, Sistemas de Gestion de Bases de Datos Editorial McGrawHill8. Rosa, Maria Elizabeth. SQL Server, Bases de Datos robustas y confiables,Coleccin Manuales USERS, Editorial MP Ediciones.20059. Oracle. 2010. Documentacin oficial del Administrador de Base de Datos. Disponible en Internet desde:http://www.oracle.com/technology/documentation/index.html.10. Mysql. 2009.- Manuales de Referencia del Manejador de Base de Datos.-Disponible en Internet en: http://dev.mysql.com/doc/refman/5.0/es/index.html. Con acceso el 24 de febrero de 2010.11. Microsoft. 2010. Centro de desarrollo de SQL Server. Disponible desdeInternet en: http://msdn.microsoft.com/es-mx/sqlserver/bb671064.aspx. Con acceso el 24 de febrero de 2010.

Prctica3SUBTEMA:

DISEO E IMPLEMENTACIN DE LA BASE DE DATOS

Observaciones: Esta prctica incluye la propuesta en el temario: 1) Definir espacios de trabajo independientes para tres bases de datos coexistentes, realizando una carga de datos y 2) Desarrollar un proyecto integrador relacionado con otras materias.

1.- OBJETIVODisear e implementar la BD del sistema en desarrollo.

3.- MATERIAL, EQUIPO, REACTIVO o SOTFWARE A UTILIZAREn la lista siguiente se describe el hardware, el software, la infraestructura de red que necesitar: Microsoft Postgred Microsoft SQL Ser Laboratorio de Centro de cmputo. Sistema Operativo Windows Xp Sistema Operativos Linux

4.- COMPETENCIAS ESPECFICAS

Creacin de un espacio virtual de almacenamiento:1. Seguidamente se van a crear un espacio de tablas y antes hay que saber localizar donde se encuentran los ficheros de datos. Para ello existe una vista que da esta informacin: DBA_DATA_FILES, sacar por pantalla slo los campos de la vista que nos interesa para obtener esta informacin.2. Crear un espacio de tablas temporal de 10M que se llamar TEMP_USERXXXX (denotando las letras x vuestro nmero de usuario). Se crear con almacenamiento gestionado localmente con un tamao mximo de 20M extensible automticamente en tamaos de 640k.3. Crear un espacio de tablas permanente llamado DESARROLLO, con un tamao mnimo de 3M y mximo de 10M, con extensiones de 1280K y gestionado automticamente.4. Determinar los espacios que ocupa en su proyecto.

5.- RESULTADOSConstruir el espacio de tablas temporales en su proyecto6. CONCLUSIONESDesarrollar su proyecto en unSMBD

7.- BIBLIOGRAFA1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill, 20062. Mannino Michael V. Administracin de bases de datos: Diseo y desarrollo de aplicaciones.2da. Edicin, Editorial Mc Graw Hill. Ao 2009.3. Abraham Silbertshatz, Henry F. Korth, S. Sudarshan, Fundamentos de base de datos, 5ta edicin, Mc Graw Hill.4. PEREZ, C. Oracle 10g. Administracin y Anlisis de Bases de Datos. 2 edicin.Editorial Ra-ma.5. Everest Gordon C. Database management. Objectives, system function & administration.3ra. Edicin McGrawHill.6. Farley, Gua de Seguridad e Integridad de Datos, Serie LanTimes, Editorial Mc-Graw Hill7. Ramakrishnan, Sistemas de Gestion de Bases de Datos Editorial McGrawHill8. Rosa, Maria Elizabeth. SQL Server, Bases de Datos robustas y confiables,Coleccin Manuales USERS, Editorial MP Ediciones.20059. Oracle. 2010. Documentacin oficial del Administrador de Base de Datos. Disponible en Internet desde:http://www.oracle.com/technology/documentation/index.html.10. Mysql. 2009.- Manuales de Referencia del Manejador de Base de Datos.-Disponible en Internet en: http://dev.mysql.com/doc/refman/5.0/es/index.html. Con acceso el 24 de febrero de 2010.11. Microsoft. 2010. Centro de desarrollo de SQL Server. Disponible desdeInternet en: http://msdn.microsoft.com/es-mx/sqlserver/bb671064.aspx. Con acceso el 24 de febrero de 2010.

Prctica4SUBTEMA:

PLANTEAMIENTO DE LA BASE DE DATOS

Observaciones: Esta prctica incluye la propuesta en el temario: 1) Desarrollar un proyecto integrador relacionado con otras materias.

1.- OBJETIVOAnlisis y diseo de la BD para el sistema a realizar durante el curso y seguridad.2.- MARCO TERICOEn otras unidades hemos aprendido cmo es una base de datos relacional yhemos estudiado un lenguaje, el SQL, que nos proporciona mecanismos paracrear estas bases de datos, as como para actualizarlas y consultarlas.Sin embargo, todava debemos resolver algunas cuestiones fundamentalespara poder emplear la tecnologa de las bases de datos relacionales; por ejemplo, cmo se puede decidir qu relacin es debe tener una base de datos determinada o qu atributos deben presentar las relaciones, qu claves primarias yqu claves forneas se deben declarar, etc. La tarea de tomar este conjunto dedecisiones recibe el nombre dedisear la base de datos.Una base de datos sirve para almacenar la informacin que se utiliza en un sistema de informacin determinado. Las necesidades y los requisitos de los futuros usuarios del sistema de informacin se deben tener en cuenta para podertomar adecuadamente las decisiones anterioresEl diseo de una base de datos consiste en definir la estructura de los datos que debe tener la base de datos de un sistema deinformacin determinado. En el caso relacional, esta estructura ser unconjunto de esquemas de relacin con sus atributos, dominios de atributos, claves primarias, claves forneas, etc.Al concepto de seguridad tambin se le puede llamar privacidad.El problema de la seguridad consiste en lograr que los recursos de un sistema sean, bajo toda circunstancia, utilizados para los fines previstos.

3.- MATERIAL, EQUIPO O REACTIVOa) Server2Go en USB b) Servidor de MySqlc) Manual de MySQLd) Postgres.4.- COMPETENCIAS ESPECFICASI. Organizar por equipos a los alumnos (2 integrantes mximo).II. Realizar el diseo de su proyecto y en script de su base de datos.III. Realizar los siguientes pasos para la seguridad de su proyecto:a) Supongamos que se nos ha olvidado la contrasea del superusuarioPostgres, qu debemoshacer para poder acceder a la base de datos y cambiar la contrasea.b) Nuestro servidor acepta conexiones TCP/IP, por qu?. Configurar el fichero de accesos para permitir cualquier acceso sin necesidad de introducir contraseas.c) Modificar el fichero de accesos para que el usuario postgresse conecte sin contrasea y los usuarios de la red del servicio de informtica se puedan conectar a la base de datos bdnueva pidiendo password.d) .Qu problema de seguridad tiene la anterior configuracin? Resolver el problema, y adems, queremos impedir que los usuarios que se encuentran en nuestra misma fila de mesas no puedan acceder a ninguna de nuestras bases de datos desde sus mquinas.e) .Por ltimo, resulta que tenemos varios usuarios de sistema especiales, comopostgres, por ejemplo el usuario backup al que debemos permitir que se conecte a la base de datos como superusuario para realizar determinadas operaciones sin validarse. Adems, queremos que los operadores, operval, opercas y operali, si se conectan localmente slo puedan conectarse con un usuario llamado consultasmax y si esremotamente, dentro de nuestra red, con un usuario llamado consultasminf) Vamos a crear una base de datos, curso sobre un tablespace tbscurso con codificacin LATIN9 y lenguaje es_ES. g) Sobre esa base de datos, tenemos que crear dos esquemas, coches y empresa.h) Adems crearemos cuatro usuarios, mgrcoches, modcoches, mgrempresa y modempresa , siendo los mgr* los propietarios de los esquemas. En cada esquema, creamos una tabla con la siguiente estructura:

CREATE TABLE marcas(cifm VARCHAR(4) not null,nombre VARCHAR(10) not null,ciudad VARCHAR(10) not null,CONSTRAINTpk_marcas PRIMARY KEY (cifm) );CREATE TABLE departamentos( numdeptNUMERIC (2) NOT NULL,nomdeptVARCHAR (14) NOT NULL, localidad VARCHAR (13) NOT NULL,jefeNUMERIC(4),CONSTRAINT pk_departamentos PRIMARY KEY ( numdept ));

Se trata de asignar los permisos necesarios tal como se cumple en esta tabla

i) Guardar el script "b05_bdborrar.sql"

5. RESULTADOS

6. CONCLUSIONES

Desarrollar una base de datos con SMBD7.- BIBLIOGRAFA1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill, 20062. Mannino Michael V. Administracin de bases de datos: Diseo y desarrollo de aplicaciones.2da. Edicin, Editorial Mc Graw Hill. Ao 2009.3. Abraham Silbertshatz, Henry F. Korth, S. Sudarshan, Fundamentos de base de datos, 5ta edicin, Mc Graw Hill.4. PEREZ, C. Oracle 10g. Administracin y Anlisis de Bases de Datos. 2 edicin.Editorial Ra-ma.5. Everest Gordon C. Database management. Objectives, system function & administration.3ra. Edicin McGrawHill.6. Farley, Gua de Seguridad e Integridad de Datos, Serie LanTimes, Editorial Mc-Graw Hill7. Ramakrishnan, Sistemas de Gestion de Bases de Datos Editorial McGrawHill8. Rosa, Maria Elizabeth. SQL Server, Bases de Datos robustas y confiables,Coleccin Manuales USERS, Editorial MP Ediciones.20059. Oracle. 2010. Documentacin oficial del Administrador de Base de Datos. Disponible en Internet desde:http://www.oracle.com/technology/documentation/index.html.10. Mysql. 2009.- Manuales de Referencia del Manejador de Base de Datos.-Disponible en Internet en: http://dev.mysql.com/doc/refman/5.0/es/index.html. Con acceso el 24 de febrero de 2010.11. Microsoft. 2010. Centro de desarrollo de SQL Server. Disponible desdeInternet en: http://msdn.microsoft.com/es-mx/sqlserver/bb671064.aspx. Con acceso el 24 de febrero de 2010.

Prctica5

CONCURRENCIA.

Observaciones Esta prctica incluye del temario de Administrador de Base de Datos que dice Desarrollar ejercicios para ejecutar instrucciones DML bajo el concepto de transaccin y se visualice el efecto del commit o rollback1.- OBJETIVOAplicar las propiedades de las transacciones y analizar como afectan a las aplicaciones.

2.- MARCO TERICO

TransaccionesLas transacciones son un concepto fundamental de todos los sistemas de bases de datos. El punto esencial de una transaccin es su capacidad para empaquetar varios pasos en una sola operacin todo o nada. Los estados intermedios entre los pasos no son visibles para otras transacciones concurrentes, y si ocurre alguna falla que impida que se complete la transaccin, entonces ninguno de los pasos se ejecuta y no se afecta la base de datos en absoluto.Por ejemplo, considere una base de datos bancaria que contiene balances de varias cuentas de clientes y balances totales de depsito de sucursales. Suponga que queremos registrar un pago de $100 de la cuenta de Alicia a la de Roberto. Simplificando la operacin exageradamente, las rdenes SQL para hacerlo se veran as:UPDATEcuentasSETbalance=balance-100.00WHEREnombre='Alicia';UPDATEsucursalesSETbalance=balance-100.00WHEREnombre=(SELECTsucursalFROMcuentasWHEREnombre='Alicia');UPDATEcuentasSETbalance=balance+100.00WHEREnombre='Roberto';UPDATEsucursalesSETbalance=balance+100.00WHEREnombre=(SELECTsucursalFROMcuentasWHEREnombre='Roberto');Los detalles de estas rdenes no son importantes en este momento; lo que importa es que hay varias actualizaciones separadas involucradas para lograr esta operacin ms o menos sencilla. Los operadores bancarios van a querer estar seguros de que o todos estos pasos se ejecutan o no se ejecuta ninguno. Definitivamente no sera aceptable si una falla del sistema resulta en que Roberto recibe $100 que no fueron debitados de la cuenta de Alicia. Tampoco si a Alicia le debitaran y a Roberto no le abonaran. Se necesita una garanta de que si algo sale mal en el transcurso de la operacin, ninguno de los pasos ejecutados hasta el momento tendrn efecto. Para el ejemplo anterior, agrupar las actualizaciones en una transaccin proporciona esa garanta. De las transacciones se dice que son atmicas: desde el punto de vista de otras transacciones, la transaccin ocurre completamente o no ocurre en absoluto.En PostgreSQL, una transaccin se indica encerrando las rdenes SQL de la transaccin entre las rdenes BEGIN y COMMIT. Entonces la transaccin bancaria del ejemplo de arriba se vera as:BEGIN;UPDATEcuentasSETbalance=balance-100.00WHEREnombre='Alicia';-- etcetcCOMMIT;Si en medio de una transaccin se decide que ya no se quiere registrar los cambios (tal vez el balance de Alicia se volvi negativo en algn momento, por ejemplo), se puede recurrir a la orden ROLLBACK en lugar de COMMIT y todas las actualizaciones hasta ese punto quedaran canceladas.De hecho, PostgreSQL trata cada declaracin de SQL como si se estuviera ejecutando dentro de una transaccin. Si uno no especifica una orden BEGIN, entonces cada declaracin individual tiene un BEGIN y, si es exitosa, un COMMIT alrededor de ella. Algunas veces, a un grupo de declaraciones encerradas entre BEGIN y COMMIT se les llama un bloque de transaccin.Retomando el ejemplo de la base de datos bancaria, suponga que se debitan $100 de la cuenta de Alicia y se abonan a la cuenta de Roberto, pero que despus resulta que se debi abonar a la cuenta de Walter. Esto se podra hacer usando un punto de recuperacin:BEGIN;UPDATEcuentasSETbalance=balance-100.00WHEREnombre='Alicia';SAVEPOINTmi_savepoint;UPDATEcuentasSETbalance=balance+100.00WHEREnombre='Roberto';-- Uy ... no era la cuenta de Roberto sino la de WalterROLLBACKTOmi_savepoint;UPDATEcuentasSETbalance=balance+100.00WHEREnombre='Walter';COMMIT;4.- COMPETENCIAS ESPECFICASI. Organizar por equipos a los alumnos (2 integrantes mximo).II. hay que ejecutar el script "b05_bdcrear.sql" Este ltimo es un ejemplo de script que invoca a otros. $ psql template1 f b05_b99_bdborrar.sql; $ psql template1 f b05_bd00.sql 2>&1 | tee resultado.txt 1. Reglas ACID: comprobar la propiedad Atomicidadlo que se ejecuta en una transaccin se ejecuta todo o nada, usando la tabla clientes. 2. Reglas ACID: comprobar la propiedad Consistencia - Integridad, usando la tablaclientes. 3. Reglas ACID: comprobar la propiedad Aislamiento,los cambios en una transaccin no terminada no se ven en otra sesin, usando la tabla clientes. Nota, para ejecutar dossesiones, basta con el pgAdmin3 abrir dos ventanas SQL distintas, aunque sea con el mismo usuario. Cuidado con las ventanas que abrimos de SQL o de ver los datos en pgAdmin3porque cada una ocupa una sesin!.4. Reglas ACID: comprobar la propiedad Persistencia: se confirma una transaccin, se para y enciende el servidor y se ve si estn los datos., usando la tabla clientes.

III. Vamos a comprobar el funcionamiento del Control de Concurrencia Multiversin. Ahora lo probaremos sobre la tabla Distribucin que indicala cantidad de coches distribuidos por cada concesionario. Necesitamos, para verlo, variassesiones, una con el usuario mgrcochesy otra con el usuarios modcochesEl proceso sera: a) sesin 1: iniciamos una transaccin, vemos los datos que hay, actualizamos los datos y no confirmamos la transaccin. b) sesin 2: iniciamos la transaccin y consultamos la informacin de distribucin. c) sesin 2: iniciar una transaccin e intentar sumar 5 a la cantidad. d) sesin 1: confirmamos los cambios y vemos qu pasa con los datos vistos desde esta sesin y luego vamos a ver los datos vistos desde la sesin 2. e) sesin 2: confirmamos los cambios .IV. Vamos a probar la Serializacin. Vamos a trabajar sobre la tabla clientes, para el cliente cuyodni es 0001. Intentaremos cambiar su nombre de LUIS a LUISA en ambas sesiones, el proceso sera, antes de empezar las transacciones, activar el modo de transacciones a serializable: a) sesin 1: iniciamos una transaccin, vemos los datos que hay. b) sesin 2: hacemos lo mismo. c) sesin 1: actualizamos el nombre y no confirmamos la transaccin. d) sesin 2: hacemos lo mismo. e) sesin 1: confirmamos la transaccin y vemos los datos f) sesin 2: hacemos lo mismo.

V. Ahora pasamos al esquema empresa, donde los departamentos pueden tener un jefe que es un empleado, y los empleados tienen un jefe que tambin es un empleado, as como pertenecen a un departamento. Normalmente, los jefes de los departamentos, son empleados que ya existen, pero imaginemos que demos de alta un departamento que tiene un empleado nuevo, con lo que hay que darlo de alta tambin, realizar esta operacin para estos datos:

Es posible realizar esto en una transaccin, dandode alta primero el departamento y luego el empleado?. Qu tendramos que hacer para poder realizar la transaccin?.

Si la clave ajena la hubisemos definido como DEFERRABLE INITIALLY IMMEDIATE, Qu tendramos que hacer para poder ejecutar la transaccin?

5. RESULTADOS

6. CONCLUSIONES

Aplicar en su proyecto integrador

7.- BIBLIOGRAFA1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill, 20062. Mannino Michael V. Administracin de bases de datos: Diseo y desarrollo de aplicaciones.2da. Edicin, Editorial Mc Graw Hill. Ao 2009.3. Abraham Silbertshatz, Henry F. Korth, S. Sudarshan, Fundamentos de base de datos, 5ta edicin, Mc Graw Hill.4. PEREZ, C. Oracle 10g. Administracin y Anlisis de Bases de Datos. 2 edicin. Editorial Ra-ma.5. Everest Gordon C. Database management. Objectives, system function & administration. 3ra. Edicin McGrawHill.

Prctica6SUBTEMA:

RECUPERACIN DE DATOS DE SQL SERVER.

Observaciones: Esta prctica incluye a la Prctica # 6del temario deAdministrador de Base de Datos que dice Crear y recuperar respaldos delSBD.

1.- OBJETIVOConocer las herramientas y funciones para el manejo de seguridad en un SGBD.

2.- MARCO TEORICORecuperacin de datos de SQL Server con OfficeRecoveryRecoveryfor SQL Server est diseado para una recuperacin efectiva de bases de datos daados de Microsoft SQL Server. Te permite evitar la prdida de informacin importante. El procesador de texto de Microsoft SQL Server es la herramienta ms amplia para la creacin de cualquier tipo de base de datos, incluyendo bases de datos corporativos. Escanea, analiza los archivos daados y exporta todos los datos del archivo. Si la bases de datos est muy daado, la perdida de datos es inevitable. Todos los datos recuperados se guardan en un set de archivos SQL. Despus de la recuperacin la base de datos se convierte disponible para procesar.El dato importante que el programa solamente analiza los archivos daados y no cambia los datos originales. La recuperacin para SQL Server trabaja con archivos de texto con varios formatos: la base de datos de Microsoft SQL Server de diferentes versiones (archivos .mdf, .ndf, .bak, .ldf)CaractersticasNuevo en la recuperacin de SQL Server 4.7: Es compatible con SQL Server 2008 R2 Soporta SCSU (el esquema de compresin estndar para Unicode) Compatible con los ndices XML Es compatible con archivos encriptados de SQL Server 2008 Recupera respaldos comprimidas de SQL Server 2008 Recupera SQL Server 2005, 2008 datos comprimidos (tipos ROW, RAGE) Recupera SQL Server 2008 tipo de datos filestream. Ten en cuenta que la base de datos deben ser recuperados en el mismo equipo donde se encuentra la base de datos originalmente Recupera informacin tipo varchar (max) Procesa archivos de la base de datos daados de Microsoft SQL Server (.mdf,.ndf,.dat,.dlf,.bak) y crear un script SQL con la estructura de base de datos recuperados Soporta versiones Microsoft SQL Server 2008 R2, 2008, 2008 x64, 2008 Express, 2005, 2005 x64, 2005 Express, 2000, 2000 x64, 7.0 y 6.5 Registro de soporte para MS SQL Server 2005 y 2008. Recupera respaldos de Microsoft SQL Server para todas las versiones Recupera archivos de varios volmenes de base de datos Recupera tablas, procedimientos almacenados, vistas Recupera valores predeterminados, normas, Chequeos limitados, datos de usuario (Permitir nulo, default, regla) Recupera las claves principales, clave nica, ndices (incluyendo IGNORE_DUP_KEY, CLUSTERED, STATISTICS_NORECOMPUTE, FILLFACTOR), claves forneas Recupera SQL Server 2008 columnas dispersas Recupera los triggers Restaura el orden de las claves de ndice Recupera archivos borrados y los guarda en un script SQL por separado Recupera archivos parcialmente daados, y los guarda en un archivo de lotes separados Reconstruccin de la Base de datos del lote se genera automticamente Los resultados de la reconstruccin del script de la base de datos se divide en varias partes para la conveniencia de visualizar y editar Caracteres nacionales (diresis, jeroglficos, etc.) se recuperan Funcin de informes de recuperacin Instalacin completa / Soporte de desinstalacinLimitaciones Las fechas que no entran en el rango de enero, 1, 1900 Diciembre 31, 2199 no se pueden recuperar correctamente El orden de las filas en las tablas recuperadas puede diferir de la orden original

3.- MATERIAL, EQUIPO O REACTIVORequisitos del sistema Sistema operativo: Windows 2000, XP, Vista, 7, Server 2003 o Server 2008. Windows 95, 98, ME no son compatibles. RAM: 256-1024 MB (depende de la base de datos, respaldos y el tamao de registro y el rango de corrupcin) Disco duro: mnimo 10 MB de espacio libre necesario para la instalacin Pantalla: 640 x 480 o de mayor resolucin, 256 colores4.- CompetenicasI. Organizar por equipos a los alumnos (2 integrantes mximo).II. Realizar procedimientos para recuperacin de la base de datos de su proyecto a partir de los archivos de respaldo.III. Realizar procedimiento para migracin de la base de datos de su proyecto.IV. Realizar los dos punto con interfaz en un lenguaje anfitrin.5.- APARATOS E INSTRUMENTOSI. Computadora6. ACTIVIDADES, DATOS Y RESULTADOSSe tendr configurado el servidor y su primera base de datos creada.

CONCLUSIONESAl concluir esta prctica el alumno habr realizado el respaldo, migracin e migracin de su base de datos

7. PRACTICA A RESOLVER

8.- BIBLIOGRAFA Silberschatz, Abraham. Fundamentos de Base de Datos. Ed. McGraw Hill. http://www.mysql.com www.server2go.com

Prctica7SUBTEMA:

RESTAURACION DE BD.

Observaciones: Esta prctica incluye a la Prctica #7del temario deAdministracin de Base de Datos que dice Establecer estrategias para crearmtodos de restauracin de datos.

1.- OBJETIVO

I. Crear puntos de restauracin y recuperacin de bases de datos (simulacin dedaos)

2.- MARCO TEORICOEl objetivo de una restauracin completa de la base de datos es restaurar toda la base de datos. Durante el proceso de restauracin, la base de datos completa se encuentra sin conexin. Antes de que ninguna parte de la base de datos tenga conexin, se recuperan todos los datos a un punto coherente en el que todas las partes de la base de datos se encuentran en el mismo momento y en el que no existe ninguna transaccin sin confirmar.

3.- MATERIAL, EQUIPO O REACTIVOa) Server2Go en USB , SqlServer,postgressb) Servidor de MySql, Sql Serverc) Manual de MySQL,Sql Server

4.- PROCEDIMIENTOa) Organizar por equipos a los alumnos (3 integrantes mximo).En general, la recuperacin de una base de datos hasta el momento del error incluye los siguientes pasos bsicos:1. Realizar una copia de seguridad del registro de transacciones activo (denominado el final del registro). De esta forma se crea una copia de seguridad de registros despus del error. Si el registro de transacciones activo no est disponible, todas las transacciones de esa parte del registro se pierden. Importante:

En el modelo de recuperacin por medio de registros de operaciones masivas, realizar la copia de seguridad de un registro que contiene operaciones de registro masivo requiere acceso a todos los archivos de datos de la base de datos. Si no se puede tener acceso a los archivos de datos, no se puede realizar una copia de seguridad del registro de transacciones. En ese caso, debe repetir manualmente todos los cambios realizados desde la copia de seguridad de registros ms reciente.

2. Para obtener ms informacin, vea Copias de seguridad de registros despus del error. 3. Restaurar la copia de seguridad completa ms reciente sin recuperar la base de datos (RESTORE DATABASE database_name FROM backup_device WITH NORECOVERY).4. Si existen copias de seguridad diferenciales, restaurar la ms reciente sin recuperar la base de datos (RESTORE DATABASE database_name WITH NORECOVERY).5. Restaurar los registros secuencialmente con la opcin NORECOVERY, comenzando por la primera copia de seguridad del registro de transacciones creada despus de la copia de seguridad que recin restaurada. 6. Recuperar la base de datos (RESTORE DATABASE database_name WITH RECOVERY). Como alternativa, este paso se puede combinar con la restauracin de la ltima copia de seguridad de registros. 7. Una restauracin completa de la base de datos normalmente se puede recuperar hasta un punto o transaccin marcada en una copia de seguridad de registros. Sin embargo, en el modelo de recuperacin por medio de registros de operaciones masivas, si la copia de seguridad de registros contiene cambios de registros de operaciones masivas, no es posible la recuperacin a un momento dado. Para obtener ms informacin, vea Restaurar bases de datos a un punto de una copia de seguridad.Al restaurar completamente una base de datos, debe utilizar una nica secuencia de restauracin. En el siguiente ejemplo se muestran las opciones ms importantes de una secuencia de restauracin para el caso de una restauracin completa en que la base de datos se restaura al momento del error. Una secuencia de restauracin consta de dos o ms operaciones de restauracin que mueven datos en una o varias fases de restauracin. La sintaxis y los detalles no relevantes para este propsito se omiten. La base de datos se restaura y se pone al da. Para reducir el tiempo de puesta al da se utiliza una copia diferencial de la base de datos. Esta secuencia de restauracin est orientada a eliminar la prdida de trabajo; la ltima copia de seguridad que se restaura es una copia de seguridad de registros despus del error. La sintaxis bsica de RESTORE para la secuencia de restauracin es:1. RESTORE DATABASE database FROM full database backup WITH NORECOVERY;2. RESTORE DATABASE database FROM full_differential_backup WITH NORECOVERY;3. RESTORE LOG database FROM log_backup WITH NORECOVERY;Repita este paso de restauracin del registro para cada copia de seguridad de registros adicional.4. RESTORE DATABASE database WITH RECOVERY;

5.- APARATOS E INSTRUMENTOSa) Computadora

6. ACTIVIDADES, DATOS Y RESULTADOSI. Integrante mximo de 2 alumnosII. Realizar la restauracin de su base de datos con su proyecto integrador.

CONCLUSIONEEl alumno aplicar sus conocimiento en la restauracin de una base de datos

7. PRACTICA A RESOLVER

8.- BIBLIOGRAFA Silberschatz, Abraham. Fundamentos de Base de Datos. Ed. McGraw Hill. http://www.mysql.com www.server2go.com MySql con clase http://www.conclase.net

8.- LISTA DE MATERIAL, EQUIPO O REACTIVO A UTILIZARFOLIONOMBRE DEL MATERIAL, EQUIPO O REACTIVOCANT.UNIDAD

1Computadora

2Postgress,SQL server, mysql

3

9.- LISTA DE BIBLIOGRAFA REQUERIDAFOLIOBIBLIOGRAFIACANT

1

2

3

4

5

6

Administracin de Bases de Datos [SCB-1001]

Fecha de Actualizacin 9/09/2013Pgina 16

10.- CONTROL DE CAMBIOS DEL MANUAL DE PRCTICAS

DATOS GENERALES

FECHA DE ACTUALIZACIONELABOR Y/O ACTUALIZDESCRIPCIN DE LA ACTUALIZACIN

09/09/2013 ING. SUSANA GARRIDO

ELABORACION DE LAS PRACTICAS.

Fecha de Actualizacin 26/08/2010Pgina 22