Академический Документы
Профессиональный Документы
Культура Документы
1. Introducción
2. Requerimientos del sistema
3. Proceso de instalación
4. Proceso de configuración
5. Métodos de configuración de la base de datos (forma consola)
6. Métodos de configuración de la base de datos (forma consola)
7. Conclusiones
8. Bibliografía relacionada.
1. Introducción
La utilización de las bases de datos en las empresas ha sido una prioridad y una
necesidad. En ellas se almacena la información de forma organizada, y se puede
recuperar en la misma forma en que se ingresa, y también puede ser utilizado por varios
usuarios dentro del mismo sistema. Usar un sistema de gestión de base de datos (SGBD)
perfecto siempre ha sido una constante para los especialistas en sistemas e informática,
y las versiones actuales de los mejores SGBD han sido diseñados para poder
automatizar la mayoría de los procesos de almacén de datos.
El SGBD que planeo usar en este artículo será PostgreSQL, debido a ser uno de
los más amplios y completos en el universo GNU/Linux, y también el que está bien
documentado en el área. Procederé a instalarlo en un sistema operativo Ubuntu
(distribución GNU/Linux basada en Debian, que ha sido optimizada para ser usada por
usuarios noveles que entran al mundo del Software Libre), lo configuraré y luego usaré
una aplicación denominada PGAdminIII, la más usada en GNU/Linux.
Para poder utilizar de forma apropiada el gestor de base de datos PostgreSQL hay
que poseer una distribución GNU/Linux (aunque hay un binario para Windows que
funciona de la misma forma). Hay cientos de distribuciones personalizadas a la medida
del usuario promedio; pero en esencia todas vienen casi de la misma rama. En el sitio
http://distrowatch.org hay unas guías que pueden permitir al usuario medio escoger una
distribución a su estilo. La lista de requerimientos para una distribución GNU/Linux no
es muy compleja (a diferencia de Microsoft Windows); a saber:
3. Proceso de instalación
root@miguel-lt:/home/miguel-lt#
[ OK ]
[ OK ]
Así que procede a escribir las dos primeras aplicaciones, y dejar que se instalen:
root@miguel-lt:/home/miguel-lt# sudo aptitude install pgadmin3 pgadmin3-data
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Leyendo la información de estado extendido
Inicializando el estado de los paquetes... Hecho
Se instalarán los siguiente paquetes NUEVOS:
libwxbase2.8-0{a} libwxgtk2.8-0{a} pgadmin3 pgadmin3-data pgagent{a}
0 paquetes actualizados, 5 nuevos instalados, 0 para eliminar y 0 sin actualizar.
Necesito descargar 11,8MB de ficheros. Después de desempaquetar se usarán 29,4MB.
¿Quiere continuar? [Y/n/?] Y
Escribiendo información de estado extendido... Hecho
Des:1 http://ve.archive.ubuntu.com/ubuntu/ lucid/universe libwxbase2.8-0 2.8.10.1-
0ubuntu1 [689kB]
Des:2 http://ve.archive.ubuntu.com/ubuntu/ lucid/universe libwxgtk2.8-0 2.8.10.1-
0ubuntu1 [3455kB]
Des:3 http://ve.archive.ubuntu.com/ubuntu/ lucid/universe pgadmin3-data 1.10.2-1
[5535kB]
Des:4 http://ve.archive.ubuntu.com/ubuntu/ lucid/universe pgadmin3 1.10.2-1 [2072kB]
Des:5 http://ve.archive.ubuntu.com/ubuntu/ lucid/universe pgagent 3.0.1-1 [39,1kB]
Descargados 11,8MB en 2min 24s (81,6kB/s).
Seleccionando el paquete libwxbase2.8-0 previamente no seleccionado.
(Leyendo la base de datos ... 00%
133088 ficheros y directorios instalados actualmente.)
Desempaquetando libwxbase2.8-0 (de .../libwxbase2.8-0_2.8.10.1-
0ubuntu1_i386.deb) ...
Seleccionando el paquete libwxgtk2.8-0 previamente no seleccionado.
Desempaquetando libwxgtk2.8-0 (de .../libwxgtk2.8-0_2.8.10.1-0ubuntu1_i386.deb) ...
Seleccionando el paquete pgadmin3-data previamente no seleccionado.
Desempaquetando pgadmin3-data (de .../pgadmin3-data_1.10.2-1_all.deb) ...
Seleccionando el paquete pgadmin3 previamente no seleccionado.
Desempaquetando pgadmin3 (de .../pgadmin3_1.10.2-1_i386.deb) ...
Seleccionando el paquete pgagent previamente no seleccionado.
Desempaquetando pgagent (de .../pgagent_3.0.1-1_i386.deb) ...
Procesando disparadores para doc-base ...
Processing 1 added doc-base file(s)...
Registering documents with scrollkeeper...
Procesando disparadores para man-db ...
Procesando disparadores para desktop-file-utils ...
Procesando disparadores para python-gmenu ...
Rebuilding /usr/share/applications/desktop.es_VE.utf8.cache...
Procesando disparadores para python-support ...
Configurando libwxbase2.8-0 (2.8.10.1-0ubuntu1) ...
Listo. Ahora dos puntos antes de continuar. Abre Firefox (sí, porque ese es el
navegador por defecto en la mayoría de las distribuciones, en este caso, Ubuntu) y
escribe en la barra de direcciones esto: http://localhost. Si apache está ejecutándose (lo
cual veremos luego), debe verse esto:
It works!
This is the default web page for this server.
The web server software is running but no content has been added, yet.
4. Proceso de configuración
A veces ocurre que no siempre fluyen las cosas de forma adecuada. Por ello
vamos paso a paso. Digita en la terminal sudo su postgres -c "psql template1" Esto hará
dos cosas: 1) Cambiará al superusuario postgres; y
2) Abrirá el aplicativo psql y ejecutará la función template 1.
Desde ella ahora se escribe esto: ALTER USER postgres WITH PASSWORD
'nueva_contraseña'; donde 'nueva_contraseña'; será la clave que digites para el
superusuario postgres. Eso sí, debes mantener las comillas, o te pasará lo que me
sucedió a mí, si observas con detenimiento la parte de arriba. Si se escribió bien, esto se
mostrará:
ALTER ROLE
Lo que dirá que la operación fue un éxito. Si hay un error (como me paso a mí, verás
esto):
ERROR: error de sintaxis en o cerca de «sistemas101» (o algo similar).
Luego se sale del aplicativo con la instrucción \q (que equivale a salir).
Listo, ahora hay 3 usuarios: dos usuarios comunes y silvestres, y uno con
funciones de administrador. En base a ellos crea las bases de datos que usarán. En la
terminal ingresa el comando createdb “basededatos”; donde el nombre “basededatos” se
lo asignas nosotros; pero sin las comillas. En mi caso:
postgres@miguel-lt:/home/miguel-lt$ createdb USERPRUEBA1
Si todo marcha bien, el proceso concluye sin nada que mostrar; pero si acontece un
error (quien sabe por qué razón) aparecerá la razón del fallo en la terminal.
Uno de los fallos más comunes es este:
root@miguel-lt:/home/miguel-lt# createdb USERPRUEBA2
createdb: no se pudo conectar a la base de datos postgres: FATAL: la autentificaci?n
Ident fall? para el usuario <<root>>
; la razón principal es esta: root@miguel-lt:/home/miguel-lt# createdb
USERPRUEBA2
El usuario root no está facultado a crear procedimientos de usos de base de datos
PostgreSQL; sólo lo puede realizar el usuario postgres.
Ahora bien; puedes administrar las bases de datos de dos formas. Una de ellas es
usando el programa pgAdminIII recién instalado, y la segunda es por la misma terminal
que tienes abierta. He de recordarle que, para usar los procedimientos en pgAdminIII, el
usuario postgres debe estar habilitado; de lo contrario saldrán muchos fallos. Un
aplicativo que puedes utilizar es psql, con funciones y métodos de uso de base de datos
por la consola o terminal.
postgres=#
¿Ya habíamos visto esta instrucción antes? ¡Claro, fue para cambiar la clave del
usuario postgres! Desde este aplicativo podemos tener acceso a las funciones de
creación, modificación, edición y eliminación de todo lo que refiera a la base de datos
PostgreSQL.
5. Implantación del sistema
Primero abre el pgAdminIII en Aplicaciones-->Programación-->pgAdminIII.
Verás que el programa se ve así:
Ahora bien, ¿qué hacer aquí? Vayamos por partes, voy a resumirlo en las
opciones que se deberán utilizar, las más comunes:
• Nombre: será el nombre del servidor a utilizar. En mi caso, yo escogí
PruebaDB.
• Servidor: será el sitio donde se aloje la(s) base(s) de datos.
• Puerto: el puerto por el que pase la información. Por defecto aparece
5432; pero si editas el archivo postgresql.conf puedes escoger usar
otro puerto.
• SSL: es el modo en el que se encripta la conexión (hay varias
opciones: requerir, preferir, permitir, desactivar, verificar de
autoridad certificante, verificar completo).
• Base de datos de Mantenimiento: método de conexión inicial, que
además contiene adminpack y esquema pgAgent.
• Nombre de usuario: el rol de postrges que se utilizará para la
conexión.
• Contraseña: la clave del rol de postgres elegido para la conexión.
(aquí acoto una cosa: en el comando createuser 'nombredeusuario', visto
anteriormente, se crea sin una contraseña específica, por ello es
recomendable iniciar con el usuario postgres; y luego, usar otros usuarios ya
creados con su propia contraseña).
Es por ello que se debe colocar la clave correcta del usuario que se escogió.
Ahora bien, vamos a proceder a alojar los datos en ella. Primero, un dato
necesita de ciertas variables, que se insertan dentro de una tabla; pero la
tabla se aloja en una base de datos, por lo que debemos crearla primero. Si
te acuerdas de algo, ya creaste una al principio, pero crearemos otra para
hacer las pruebas. Para ello debes haber conectado al servidor. Si te sale
como en la imagen 6, entonces el proceso marcha a la perfección; de lo
contrario, revisa que funcione; luego de ello puedes seguir.
Sobre el icono del servidor (del lado izquierdo) pulsa el signo '+' para abrirlo
y ver sus características. El servidor posee 4 (3 de ellas ya las vimos antes):
base de datos, tablespace, roles de usuario y (la nueva función) roles de
grupo. Ve hasta el icono que dice “Bases de datos” y pulsa con el botón
derecho del ratón y escoge Nueva base de datos. Ahora verás una ventana
como la siguiente:
Una vez escogido lo que se desea escribir en la nueva base de datos (como
se ve en la imagen de abajo), pulsa Aceptar para que se agregue la nueva
base de datos. Pulsa sobre el icono de la misma para que se conecte al
servidor.
El siguiente paso es agregar nuevas tablas a la misma. Si la base de datos
de prueba ya fueron insertadas tablas por la terminal, aparecerán dentro
de la misma; en caso contrario, mostraré cómo agregarlas. Primero pulsa el
signo '+' junto a las bases de datos ya agregadas y se mostrarán sus
funciones principales. Escogeremos Esquemas y veremos de qué se
componen. El esquema de nuestra base de datos de prueba es public, pero
se pueden escoger otros iguales, pulsando sobre el icono de Esquemas con
el botón derecho del ratón y escogiendo Nuevo esquema.
Una vez completada esta parte, pasa a la pestaña Columna, pulsa Añadir y
agrega las variables y los valores que se usarán en la base de datos. Por
cuestiones de simplicidad, escogeré dos variables: nombres/apellidos y
cédula.
Ahora definiremos las restricciones sobre la que se manejarán esos datos, y
escoger entre la clave primaria y la clave foránea:
Hay 3 iconos que vamos a utilizar en esta ventana: el icono de diskette (que
representa Guardar), el icono de una papelera (que representa Eliminar), y
el de la flecha roja y verde dando vueltas (que representa la opción
Actualizar).
Aclaratoria: sólo está permitido actualizar, modificar y borrar datos si la
tabla posee una clave primaria.
Hay otras herramientas que nos permitirán mostrar y administrar los datos
ingresados en la base de datos, como por ejemplo, la herramienta de
consulta SQL, que se ingresa por el icono de una hoja y un lápiz. Al pulsar el
botón, se abrirá una ventana de edición SQL
8.-) postgres@douglas-morales-laptop:/home/douglas-morales#
createdb
nombre de la base de datos
9.-) postgres@douglas-morales-laptop:/home/douglas-morales# exit
10.-) root@douglas-morales-laptop:/home/douglas-morales#
11.1) root@douglas-morales-laptop:/home/douglas-morales# psql
nombre de la base de datos
11.1.1) deberia de pedirde el usuario creado como root y luego
seguidamente el promt deberia ser el del punto 12
7. Conclusiones
Dependiendo de la distribución que se utilice, los paquetes se bajan de una u otra forma,
pero su instalación, y su configuración se realiza de la misma manera, y desarrollar pruebas
sobre una máquina virtual ayuda a aprender los pasos básicos para realizarlos después en un
entorno más realista; por ello, recomiendo el uso de máquinas virtuales de código abierto, como
VirtualBox, de Oracle; o de código cerrado, como VMWare; pero evitando usar el virtualizador
de Microsoft (Virtual PC), porque no es compatible con GNU/Linux
8. Bibliografía relacionada.
Algunos sitios web de referencias para consulta acerca de cómo manejar este gestor son:
http://www.guia-ubuntu.org/index.php?title=PgAdmin_III
http://www.guia-ubuntu.org/index.php?title=PostgreSQL
http://www.arpug.com.ar/trac/wiki/PgAdmin
http://www.ubuntu-ve.org/node/2044
http://sonidolibre.wordpress.com/2008/04/17/instalar-postgresql-y-pgadmin-en-ubuntu/
http://iie.fing.edu.uy/~vagonbar/debian/debian22/postgresql/postgres.htm#CrearBaseDa
tosPrueba
http://structio.sourceforge.net/guias/servidor_OpenBSD/postgresql.html
http://perso.wanadoo.es/manel3/chuletas/I-postgresql
http://luauf.com/2008/05/28/instalar-postgresql-en-ubuntu/
http://www.gentoo.org/doc/es/postgres-howto.xml
http://www.virtualbox.org/