Está en la página 1de 8

Instituto Tecnolgico de Oaxaca

Periodo escolar Ene-Jun/2012

Materia: Taller de Sistemas Operativos

Practica Creacin de una base de datos

Catedrtico: Valverde Jarqun Reyna

Equipo:.exe

Grupo: ISB

Semestre:4

Para listar todos los procesos referentes a postgres tecleamos ps auw | grep postgres.

Matamos los procesos de postgres con la sentencia killall -15 postgres y volvemos a listar los procesos mediante el top

Podemos notar que efectivamente ya no se encuentra los procesos referentes a postgres.

Ahora volvemos a arrancar el postgres mediante el comando sudo /etc/init.d/postgresql start

Volvemos a listar para comprobar que efectivamente que el demonio de postgres se encuentra trabajando.

Para detener el demonio tecleamos /etc/init.d/postgresql stop

Volvemos a listar los procesos con el comando top

Volvemos a correr l demonio con el comando que utilizamos anteriormente /etc/init.d/postgresql start

Primeramente nos logeamos con el usuario de postgres con la sintaxis su postgres , podemos notar que que el prompt se ha cambiado a /home/ubuntuvirtual$ posteriormente listaremos las bases de datos existentes con el comando psql -l

Para identidad del usuario postgres desde root teclamos id

Ingresamos a cualquiera de las base de datos existentes en este caso tecleamos psql template1, este nos modificar el prompt el cual ahora nos mostrara template1=#

Para salir de dicha base de datos tecleamos \q

Ahora salimos del psql con el comando exit

Volvemos a listar y podremos notar que sigue corriendo el postgres volviendo como root.

Volvemos a entrar a postgres con el comando su - postgres , en este paso crearemos un usurio postgres con el comando createuser el cual nos pedir que tecleemos el nombre del nuevo rol de superusuario.

Tecleamos psql l para que nos arroje la lista de la base de datos.

Ahora crearemos una base de datos con el nombre de prueba utilizando la siguiente sintaxis createdb nombreBase de datos.

Ahora ingresamos a la base de datos con la siguiente sintaxis psql prueba, podemos notar que nuestro prompt ha cambiado al nombre de prueba

Crearemos un Schema con la siguiente sintaxis CREATE SCHEMA esquema , aclaro esto se puedo o no realizar ya que cuando se agregan una tabla y no existe ningn schema creado este se agregaran a un schema public por default.

Ahora crearemos una tabla con asignndola al esquema creado anteriormente con el nombre de Usuario, agregndole como atributos un id_usario siendo su clave primaria, nombre de usuario, direccin, ciudad y telfono usuario, al finalizar nos debe de arrojar un mensaje de tabla creada.

Creamos una tabla libro al igual que la anterior esta se almacenara en el schema esquema, teniendo los siguientes atributos: id_libro como clave primaria, nombre libro, autor, editorial, edicin y fecha de edicin.

La tabla Prstamo que crearemos cuenta con claves forneas debido a eso ser la ultima en crearse, esta cuenta con los siguientes atributos: id_prestamo como clave primaria, fecha de

prstamo, fecha de entrega, id_libro como clave fornea de Libro, id_usuario como clave fornea de usuario.

Ahora corroboraremos que las tablas se hayan creado con la siguiente sintaxis SELECT*FROM esquema.Prestamo; podemos notar que la tabla se encuentra vacia debido a que aun no se le ha agregado ningn registro.

Ahora insertaremos un registro a la tabla usuario con la siguiente sintaxis INSERT INTO esquema.Usuario VALUES(id_usuario, nombre_usuario, domicilio, ciudad, tel_user ); arrojndonos un mensaje de Insert y el numero de registro agregado a dicha tabla.

Insertaremos un registro a la tabla usuario con la siguiente sintaxis INSERT INTO esquema.Libro VALUES(id_libro, nombre_libro, autor, editorial, edicion, fecha_edi);

Y por ultimo insertaremos un registro a la tabla usuario con la siguiente sintaxis INSERT INTO esquema.Prestamo VALUES(id_pretamo,fecha_pres,fecha_entre,id_libro,id_usuario);

Ahora volvemos a visualizar las tablas con la siguiente sintaxis SELECT*FROM esquema.nombretabla; podremos notar que efectivamente los registros se han agregado satisfactoriamente en cada una de ellas.