Está en la página 1de 25

MANUAL DE

PRCTICAS

ADMINISTRACIN DE
BASES DE DATOS

SCB-1001

ndice

PLAN ISIC-20102004
INGENIERA EN SISTEMAS
COMPUTACIONALES

INTRODUCCIN-----------------------------------------------------------------------------------------------------------------1
PRCTICA 1
Fundamentos de la Inteligencia Artificial------------------------------------------------------------------------------------1

PRCTICA 2
Representacin del conocimiento--------------------------------------------------------------------------------------------1
PRCTICA 3
Sistemas de razonamiento lgico--------------------------------------------------------------------------------------------1
PRCTICA 4
Bsqueda y Satisfaccin de Restricciones---------------------------------------------------------------------------------1
LISTA DE MATERIAL, EQUIPO O REACTIVO A UTILIZAR---------------------------------------------------------1
LISTA DE BIBLIOGRAFA REQUERIDA----------------------------------------------------------------------------------1
CONTROL DE CAMBIOS DEL MANUAL DE PRCTICAS

Administracin de Bases de Datos


[SCB-1001]

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

Fecha de Actualizacin 9/09/2013

Pgina 1

Administracin de Bases de Datos


[SCB-1001]

Prctica

SUBTEMA:

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.- OBJETIVO
Conocerlas funciones del administrador de Base de datos
2.- MARCO TERICO
SGBD 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.- PROCEDIMIENTO
I.
II.
III.
IV.

Organizar por equipos a los alumnos (2 integrantes mximo).


Entrevistar a personas que cubren la funcin de ABD en empresas de la regin
Realizar un manual de actividades para el ABD en una empresa ficticia,
Cuadro comparativo de los SMBD.

propuesta por el docente5.- APARATOS E INSTRUMENTOS


I. Computadora
6. ACTIVIDADES, DATOS Y RESULTADOS
El alumno conocer las funciones del administrador de base de datos..
CONCLUSIONES
Al 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

Fecha de Actualizacin 9/09/2013

Pgina 2

Administracin de Bases de Datos


[SCB-1001]

Prctica

SUBTEMA:

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.- OBJETIVO

Conocer la instalacin y configuracin de un SMBD en diferentes S.O., considerando una base


de datos para una aplicacin real.
2.- MARCO TERICO

Requisitos previos
Antes de instalar PostgreSQL, comprueba que tienes el siguiente software en tu ordenador:

Un descompresor de ficheros Zip


Windows XP los maneja automticamente; si no tienes uno disponible, instlate
WinZip, por ejemplo.

Microsoft Installer
Presente 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:
o

Para Windows 95/98/Me

Para Windows NT/2000/XP

Adems, 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 informacin
Esta informacin est basada en el documento InstallingthePeerDirectPostgreSQL beta for
Windows. En el web ofical de PostgreSQL puedes encontrar toda la informacin sobre
Fecha de Actualizacin 9/09/2013

Pgina 3

Administracin de Bases de Datos


[SCB-1001]

PostgreSQL, incluyendo documentacin, tutoriales, utilidades e informacin sobre otras


versiones de PostgreSQL que funcionan bajo Windows

Definicin de SQLite
SQLite 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 UTILIZAR
En 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 ESPECFICAS
Organizar por equipos a los alumnos (2 integrantes mximo).
Instalacin

I.
II.

1. Bjate el fichero Zip que contiene PostgreSQL y descomprmelo en c:\. Se crear un


directorio postgres_beta4. Cmbiale el nombre a pgsql
2.

Crea las siguientes variables de entorno:


o

PGHOME=C:\pgsql

Fecha de Actualizacin 9/09/2013

Pgina 4

Administracin de Bases de Datos


[SCB-1001]
o

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:
o

initdb

Fecha de Actualizacin 9/09/2013

Pgina 5

Administracin de Bases de Datos


[SCB-1001]
o

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 adicionales
Es 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.

Instalacin

Fecha de Actualizacin 9/09/2013

Pgina 6

Administracin de Bases de Datos


[SCB-1001]

1.

Descargar de la pgina: http://www.sqlite.org/download.html


"sqlite3.exe", disponible gratuitamente.

2.

seleccionaremos en "PrecompiledBinariesForWindws" el enlace "sqlite3_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 :

Fecha de Actualizacin 9/09/2013

el ejecutable

Pgina 7

Administracin de Bases de Datos


[SCB-1001]

IV.
V.

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.

Instalar y configurar del manejador elegido para el desarrollo de la materia, sin utilizar
los asistentes y en sistemas operativos distintos
Seleccionar DBMS para desarrollar un proyecto integrador relacionado con otras
materias

5. RESULTADOS

El alumno lograr habilidades de instalacin de diferentes DBMS.


6. CONCLUSIONES
.
7.- BIBLIOGRAFA
1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill,
2006
2. 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 Hill
7. Ramakrishnan, Sistemas de Gestion de Bases de Datos Editorial McGrawHill
8. Rosa, Maria Elizabeth. SQL Server, Bases de Datos robustas y confiables,
Coleccin Manuales USERS, Editorial MP Ediciones.2005
9. 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 desde
Internet en: http://msdn.microsoft.com/es-mx/sqlserver/bb671064.aspx. Con acceso el 24 de febrero de
2010.

Fecha de Actualizacin 9/09/2013

Pgina 8

Administracin de Bases de Datos


[SCB-1001]

Prctica

SUBTEMA:

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.- OBJETIVO
Disear e implementar la BD del sistema en desarrollo.

3.- MATERIAL, EQUIPO, REACTIVO o SOTFWARE A UTILIZAR


En 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.
Fecha de Actualizacin 9/09/2013

Pgina 9

Administracin de Bases de Datos


[SCB-1001]
4.

Determinar los espacios que ocupa en su proyecto.

5.- RESULTADOS
Construir el espacio de tablas temporales en su proyecto
6. CONCLUSIONES
Desarrollar su proyecto en unSMBD
7.- BIBLIOGRAFA
1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill,
2006
2. 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 Hill
7. Ramakrishnan, Sistemas de Gestion de Bases de Datos Editorial McGrawHill
8. Rosa, Maria Elizabeth. SQL Server, Bases de Datos robustas y confiables,
Coleccin Manuales USERS, Editorial MP Ediciones.2005
9. 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 desde
Internet en: http://msdn.microsoft.com/es-mx/sqlserver/bb671064.aspx. Con acceso el 24 de febrero de
2010.

Prctica

SUBTEMA:

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.- OBJETIVO
Anlisis y diseo de la BD para el sistema a realizar durante el curso y seguridad.
2.- MARCO TERICO
En 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.
Fecha de Actualizacin 9/09/2013

Pgina 10

Administracin de Bases de Datos


[SCB-1001]
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 anteriores
El 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 REACTIVO
a)
b)
c)
d)

Server2Go en USB
Servidor de MySql
Manual de MySQL
Postgres.

4.- COMPETENCIAS ESPECFICAS


I. 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 consultasmin
f) 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),
Fecha de Actualizacin 9/09/2013

Pgina 11

Administracin de Bases de Datos


[SCB-1001]
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 SMBD
7.- BIBLIOGRAFA
1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill,
2006
2. 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 Hill
7. Ramakrishnan, Sistemas de Gestion de Bases de Datos Editorial McGrawHill
8. Rosa, Maria Elizabeth. SQL Server, Bases de Datos robustas y confiables,
Coleccin Manuales USERS, Editorial MP Ediciones.2005
9. 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 desde
Internet en: http://msdn.microsoft.com/es-mx/sqlserver/bb671064.aspx. Con acceso el 24 de febrero de
2010.

Prctica

CONCURRENCIA.
Fecha de Actualizacin 9/09/2013

Pgina 12

Administracin de Bases de Datos


[SCB-1001]

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 rollback
1.- OBJETIVO
Aplicar las propiedades de las transacciones y analizar como afectan a las aplicaciones.
2.- MARCO TERICO

Transacciones
Las 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=balance100.00WHEREnombre=(SELECTsucursalFROMcuentasWHEREnombre='Alicia');
UPDATEcuentasSETbalance=balance+100.00WHEREnombre='Roberto';
UPDATEsucursalesSETbalance=balance+100.00WHEREnombre=(SELECTsucursalFROMcuen
tasWHEREnombre='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;
Fecha de Actualizacin 9/09/2013

Pgina 13

Administracin de Bases de Datos


[SCB-1001]
UPDATEcuentasSETbalance=balance-100.00WHEREnombre='Alicia';
-- etcetc
COMMIT;

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 Walter
ROLLBACKTOmi_savepoint;
UPDATEcuentasSETbalance=balance+100.00WHEREnombre='Walter';
COMMIT;
4.- COMPETENCIAS ESPECFICAS
I. 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 modcoches
Fecha de Actualizacin 9/09/2013

Pgina 14

Administracin de Bases de Datos


[SCB-1001]

El 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

Fecha de Actualizacin 9/09/2013

Pgina 15

Administracin de Bases de Datos


[SCB-1001]
7.- BIBLIOGRAFA
1. Post, Gerald V. Sistemas de Administracin de Bases de Datos, 3 Edicin, Editorial Mc Graw Hill,
2006
2. 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.

Prctica

SUBTEMA:

RECUPERACIN
SERVER.

DE

DATOS

DE

SQL

Observaciones: Esta prctica incluye a la Prctica # 6del temario deAdministrador


de Base de Datos que dice Crear y recuperar respaldos del
SBD.
1.- OBJETIVO

Conocer las herramientas y funciones para el manejo de seguridad en un SGBD.


2.- MARCO TEORICO
Recuperacin de datos de SQL Server con OfficeRecovery

Recoveryfor 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)
Caractersticas

Nuevo en la recuperacin de SQL Server 4.7:

Fecha de Actualizacin 9/09/2013

Pgina 16

Administracin de Bases de Datos


[SCB-1001]

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

Fecha de Actualizacin 9/09/2013

Pgina 17

Administracin de Bases de Datos


[SCB-1001]

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 desinstalacin

Limitaciones

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 REACTIVO


Requisitos 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 colores

4.- Competenicas
I. 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 INSTRUMENTOS
I. Computadora
Fecha de Actualizacin 9/09/2013

Pgina 18

Administracin de Bases de Datos


[SCB-1001]
6. ACTIVIDADES, DATOS Y RESULTADOS
Se tendr configurado el servidor y su primera base de datos creada.
CONCLUSIONES
Al 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

Prctica

SUBTEMA:

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 TEORICO
El 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 REACTIVO
a) Server2Go en USB , SqlServer,postgress
b) Servidor de MySql, Sql Server
c) Manual de MySQL,Sql Server
4.- PROCEDIMIENTO
a) Organizar por equipos a los alumnos (3 integrantes mximo).

Fecha de Actualizacin 9/09/2013

Pgina 19

Administracin de Bases de Datos


[SCB-1001]

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.

Fecha de Actualizacin 9/09/2013

Pgina 20

Administracin de Bases de Datos


[SCB-1001]

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 INSTRUMENTOS


a) Computadora
6. ACTIVIDADES, DATOS Y RESULTADOS
I.
II.

Integrante mximo de 2 alumnos


Realizar la restauracin de su base de datos con su proyecto integrador.

CONCLUSIONE
El 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 UTILIZAR


FOLI
O

NOMBRE DEL MATERIAL, EQUIPO O REACTIVO

Computadora

Postgress,SQL server, mysql

CANT.

UNIDAD

Fecha de Actualizacin 9/09/2013

Pgina 21

Administracin de Bases de Datos


[SCB-1001]

9.- LISTA DE BIBLIOGRAFA REQUERIDA


FOLI
O

BIBLIOGRAFIA

CANT

1
2
3
4
5
6

Fecha de Actualizacin 9/09/2013

Pgina 22

10.- CONTROL DE CAMBIOS DEL MANUAL DE PRCTICAS

Administracin de Bases de Datos


[SCB-1001]

DATOS GENERALES
FECHA DE
ACTUALIZAC
ION
09/09/2013

ELABOR Y/O
ACTUALIZ

ING. SUSANA GARRIDO

Fecha de Actualizacin 26/08/2010

DESCRIPCIN DE LA ACTUALIZACIN

ELABORACION DE LAS PRACTICAS.

Pgina 23

También podría gustarte