UNIVERSIDAD CATÓLICA DE CUENCA - dspace…dspace.ucacue.edu.ec/bitstream/reducacue/5629/1/PGADMIN...

69
UNIVERSIDAD CATÓLICA DE CUENCA UNIDAD ACADÉMICA DE INGENIERÍA DE SISTEMAS, ELÉCTRICA Y ELECTRÓNICA CARRERA DE INGENIERÍA DE SISTEMAS PGADMIN III: ADMINISTRADOR DE BASE DE DATOS OPEN SOURCE POSTGRESQL INVESTIGACIÓN FORMATIVA PREVIA A LA OBTENCIÓN DEL TÍTULO DE INGENIERO DE SISTEMAS TNLG. ANL. FREDY MARCELO PADRÓN ORTÍZ [email protected] Director: Ing. Segundo Isael Sañay Sañay 2013 CUENCA - ECUADOR

Transcript of UNIVERSIDAD CATÓLICA DE CUENCA - dspace…dspace.ucacue.edu.ec/bitstream/reducacue/5629/1/PGADMIN...

UNIVERSIDAD CATÓLICA DE CUENCA

UNIDAD ACADÉMICA DE INGENIERÍA DE SISTEMAS, ELÉCTRICA Y ELECTRÓNICA

CARRERA DE INGENIERÍA DE SISTEMAS

PGADMIN III: ADMINISTRADOR DE BASE DE DATOS OPEN SOURCE POSTGRESQL

INVESTIGACIÓN FORMATIVA PREVIA A LA OBTENCIÓN DEL TÍTULO DE INGENIERO DE SISTEMAS

TNLG. ANL. FREDY MARCELO PADRÓN ORTÍZ

[email protected] 

Director: Ing. Segundo Isael Sañay Sañay

2013

CUENCA - ECUADOR

DECLARACIÓN

Yo, Fredy Marcelo Padrón Ortiz, declaro bajo juramento que el trabajo aquí descrito es de mi autoría; que no ha sido previamente presentada para ningún grado o calificación profesional; y, que he consultado las referencias bibliográficas que se incluyen en este documento.

La Universidad Católica de Cuenca puede hacer uso de los derechos correspondientes a este trabajo, según lo establecido por la Ley de Propiedad Intelectual, por su Reglamento y la normatividad institucional vigente.

________________________________

Fredy Marcelo Padrón Ortiz

CERTIFICACIÓN

Certifico que el presente trabajo fue desarrollado por Fredy Marcelo Padrón Ortíz, bajo mi supervisión.

___________________________________

Ing. Segundo IsaelSañaySañay DIRECTOR

AGRADECIMIENTOS

Agradezco primero a Dios que me permitió vivir y conocer a todas las personas a lo largo de mi vida, por darme la capacidad y fortaleza necesaria para cumplir una de mis grandes metas.

A mi madre que ha sido el pilar primordial de mi vida por el apoyo siempre incondicional que me brinda, a toda mi familia por su esfuerzo y colaboración.

A la universidad Católica de Cuenca, Facultad de Ingeniería de Sistemas en la cual curse mis estudios, a todos los profesores que han aportado con su conocimiento y experiencia para mi formación, en especial al Ing. Isael Sañay Sañay quien me supo apoyar y orientarme con sus conocimientos en este trabajo de investigación. A mis amigos y compañeros que me brindaron su apoyo siempre.

A todos, mi mayor reconocimiento y gratitud.

Fredy

DEDICATORIA

Dedico este trabajo de investigación a mi querida madre que tras sufrimientos, alegrías y esfuerzo que forman parte de la vida, me supo siempre apoyar y demostrar con su inmenso ejemplo que con perseverancia y esfuerzo todo en la vida se puede alcanzar, enseñándome a no mirar hacia atrás. Con todo mi inmenso cariño a mi hijo que tiene todo un camino por recorrer, inculcar en él un pequeño ejemplo de superación pese a toda adversidad y que sepa que siempre me impulso a continuar le tengo en mi corazón.

Fredy

ÍNDICE DE CONTENIDO 

DECLARACIÓN ................................................................................................................... II

CERTIFICACIÓN ............................................................................................................... III

AGRADECIMIENTOS ....................................................................................................... IV

DEDICATORIA .................................................................................................................... V

ÍNDICE DE CONTENIDO ................................................................................................. VI

LISTA DE FIGURAS ....................................................................................................... VIII

LISTA DE ANEXOS ........................................................................................................... IX

RESUMEN ........................................................................................................................... X

ABSTRACT ......................................................................................................................... XI

INTRODUCCIÓN ........................................................................................................ - 12 -

CAPITULO 1. ANTECEDENTES DE POSTGRESQL Y SU ADMINISTRADOR PAGADMIN ................................................................................................................... - 14 -

1.1 ¿QUE ES PGADMIN? ................................................................................... - 14 - 1.2 HISTORIA DE POSTGRESQL Y PGADMIN. ............................................ - 15 - 1.3 CARACTERISTICAS DE PGADMIN. ......................................................... - 17 - 1.4 CONDICIONES DE USO. ............................................................................. - 18 - 1.5 ACERCA DE PGADMIN. ............................................................................. - 19 - 1.6 REQUERIMIENTOS DE SISTEMA. ............................................................ - 20 - 1.7 INSTALACION DE PGADMIN III EN WINDOWS 7. ............................... - 21 -

CAPITULO 2. POSTGRESQL EN FUNCIONAMIENTO ADMINISTRADO POR PGADMIN III ................................................................................................................. - 24 -

2.1 EJECUCION DE PGADMIN III. .................................................................. - 24 - 2.2 FUNCIONALIDAD DE LA HERRAMIENTA. ........................................... - 25 - 2.2.1 AGREGAR SERVIDOR. ............................................................................ - 27 - 2.2.2 CREAR UNA BASE DE DATOS. ............................................................. - 29 - 2.2.3 AGREGAR UNA TABLA. ......................................................................... - 30 -

VII

2.2.4 HERRAMIENTA DE EDICION DE DATOS. ........................................... - 35 - 2.2.5 HERRAMIENTA DE CONSULTA SQL. .................................................. - 36 - 2.2.6 CONSTRUCTOR GRAFICO DE CONSULTAS. ..................................... - 37 - 2.2.7 HERRAMIENTA DE EXPORTACION. ................................................... - 38 - 2.2.8 HERRAMIENTA DE RESGUARDO. ....................................................... - 38 - 2.2.9 HERRAMIENTA DE RESTAURACION. ................................................. - 39 - 2.2.10 HERRAMIENTA DE MANTENIMIENTO. .............................................. - 40 - 2.2.11 HERRAMIENTA DE ESTADO DEL SERVIDOR. .................................. - 41 -

CAPÍTULO 3. OBJETOS DE POSGRESQL ......................................................... - 42 - 3.1 ESQUEMAS ................................................................................................... - 42 - 3.2 FUNCIONES .................................................................................................. - 43 - 3.3 TRIGGERS ..................................................................................................... - 45 - 3.4 VISTAS .......................................................................................................... - 45 - 3.5 ESPACIO DE TABLAS ................................................................................. - 46 - 3.6 GRUPOS Y ROLES ....................................................................................... - 47 - 3.7 USUARIOS Y ROLES ................................................................................... - 48 - 3.8 DIVERSAS CONFIGURACIONES .............................................................. - 50 - 3.8.1 CONFIGURAR POSTGRESQL PARA PERMITIR CONEXIONES

EXTERNASREMOTAS…………………………………………………………...….- 50 -

CONCLUSIONES .......................................................................................................... - 55 -

RECOMENDACIONES ........................................................ ¡Error! Marcador no definido.

REFERENCIAS BIBLIOGRÁFICAS ............................................................................. - 58 -

ANEXO A ....................................................................................................................... - 59 -

GLOSARIO .................................................................................................................... - 68 -

LISTA DE FIGURAS

FIG. 1 LOGOTIPO DE PGADMIN VER [12]. ........................................................................................................ ‐ 20 ‐ FIG. 2 BIENVENIDO AL PROCESO DE INSTALACIÓN VER [3]. .................................................................................. ‐ 21 ‐ FIG. 3 INSTALACIÓN FINALIZADO CORRECTAMENTE VER [3]................................................................................. ‐ 23 ‐ FIG. 4 CONEXIÓN CON SERVIDOR VER [3] ........................................................................................................ ‐ 25 ‐ FIG. 5 INGRESAR CONTRASEÑA VER [3] ........................................................................................................... ‐ 25 ‐ FIG. 6 DIAGRAMA ENTIDAD ‐ RELACION  [FUENTE DEL AUTOR]. ........................................................................... ‐ 27 ‐ FIG. 7 NUEVO REGISTRO DE SERVIDOR [FUENTE DEL AUTOR]. .............................................................................. ‐ 28 ‐ FIG. 8 NUEVA BASE DE DATOS [FUENTE DEL AUTOR]. ........................................................................................ ‐ 29 ‐ FIG. 9 NUEVA TABLA  [FUENTE DEL AUTOR]. .................................................................................................... ‐ 31 ‐ FIG. 10 NUEVA COLUMNAS DE LA TABLA [FUENTE DEL AUTOR]. ........................................................................... ‐ 32 ‐ FIG. 11 COLUMNAS DE LA TABLA [FUENTE DEL AUTOR]. ..................................................................................... ‐ 33 ‐ FIG. 12 NUEVA LLAVE PRIMARIA [FUENTE DEL AUTOR] ....................................................................................... ‐ 34 ‐ FIG. 13 AÑADIR CLAVE AJENA [FUENTE DEL AUTOR]. ......................................................................................... ‐ 35 ‐ FIG. 14 EDITOR DE DATOS [FUENTE DEL AUTOR]. .............................................................................................. ‐ 36 ‐ FIG. 15 GENERADOR DE CONSULTAS SQL [FUENTE DEL AUTOR]. .......................................................................... ‐ 37 ‐ FIG. 16 HERRAMIENTA DE EXPORTACIÓN DE DATOS VER [4] ............................................................................... ‐ 38 ‐ FIG. 17 HERRAMIENTA DE RESGUARDO DE DATOS  VER [4] ................................................................................. ‐ 39 ‐ FIG. 18 HERRAMIENTA DE RESTAURACIÓN DE DATOS VER [4] .............................................................................. ‐ 40 ‐ FIG. 19 HERRAMIENTA DE MANTENIMIENTO VER [4] ......................................................................................... ‐ 41 ‐ FIG. 20 ESTADO DEL SERVIDOR VER [4] ........................................................................................................... ‐ 41 ‐ FIG. 21 REGISTRO PARA CREAR UN NUEVO ESQUEMA VER [3] ............................................................................. ‐ 43 ‐ FIG. 22 EJEMPLO DE FUNCIÓN [FUENTE DEL AUTOR] ......................................................................................... ‐ 44 ‐ FIG. 23 EJEMPLO DE VISTA  [FUENTE DEL AUTOR] ............................................................................................. ‐ 46 ‐ FIG. 24 REGISTRO PARA CREAR EL ESPACIO DE TABLA  [FUENTE DEL AUTOR] .......................................................... ‐ 47 ‐ FIG. 25 NUEVO ROL DE GRUPO [FUENTE DEL AUTOR] ........................................................................................ ‐ 48 ‐ FIG. 26 NUEVO ROL DE USUARIO [FUENTE DEL AUTOR] ..................................................................................... ‐ 49 ‐ FIG. 27 PRIVILEGIOS DEL ROL DE USUARIO [FUENTE DEL AUTOR] ......................................................................... ‐ 49 ‐ FIG. 28 EDITAR FICHERO  [FUENTE DEL AUTOR] ................................................................................................ ‐ 50 ‐ FIG. 29 AÑADIR DIRECCIÓN IP  [FUENTE DEL AUTOR] ........................................................................................ ‐ 51 ‐ FIG. 30 SELECCIONAR TIPO DE REGLA  [FUENTE DEL AUTOR] ............................................................................... ‐ 52 ‐ FIG. 31 SELECCIONAR PROTOCOLO Y PUERTOS  [FUENTE DEL AUTOR] ................................................................... ‐ 52 ‐ FIG. 32 ESPECIFICAR ACCIÓN   [FUENTE DEL AUTOR] .......................................................................................... ‐ 53 ‐ FIG. 33 ESPECIFICAR EL PERFIL  [FUENTE DEL AUTOR]......................................................................................... ‐ 53 ‐ FIG. 34 ESPECIFICAR NOMBRE DE LA REGLA  [FUENTE DEL AUTOR] ....................................................................... ‐ 54 ‐ 

LISTA DE ANEXOS

ANEXO A ............................................................................................................................................. ‐ 59 ‐ 

RESUMEN

El presente trabajo de investigación tiene como objetivo central el análisis de pgAdmin, como administrador de base de datos Postgresql,para asegurar que los datos y la información estén siempre resguardados de forma confiable.

Para las empresas y para los usuarios en general es evidente cuán importante es hoy en día la utilización de un gestor de base de datos, el cual brinde confianza al momento de presentar la información. En los últimos años se ha presentado un creciente avance en la utilización de los diferentes gestores de base de datos. Por esto es importante conocer a uno de los administradores de base de datos libre con más prioridad, como es Postgresql y su administrador con interfaz gráfica pgAdminVer [15].

A través; depgAdmin se logrará conectar a la base de datos y facilitar la gestión de Postgresql, mediante un entorno de escritorio visual. Permitir conocer las tareas de mantenimiento de las base de datos como son los backups y restauraciones y vacuum. Conociendo el entorno desde el que se realiza consultas y ver alfanuméricamente los datos.

Palabras Claves: información, base de datos, resguardo, datos, confiable, gestor, interfaz gráfica, administrador.

ABSTRACT

This research center aims pgAdmin analysis, as administrator of Postgresql database to ensure that data and information are always reliably safeguarded.

For business and general users is obvious how important it is today to use a database manager, which provides confidence when presenting information. In recent years it has presented an increasing progress in the use of different database managers. Therefore it is important to meet one of the database administrators with higher priority free, as is Postgresql and pgAdmin GUI administrator View [15].

Through; pgAdmin be achieved connecting to database management and Postgresql facilitate, through a visual desktop environment. Allow meet maintenance of the database such as backups and restores and vacuum. Know the environment from which queries and view data alphanumerically.

Key Words: information, database, backup, data, reliable, manager, graphical interface, administrator.

INTRODUCCIÓN

Actualmente las tendencias de la comunidad referente a la Tecnología de la Información, están ligadas cada vez más al uso de herramientas con interfaces graficas más simples y sencillas, amigables ante el usuario; también cabe mencionar que esta comunidad cambiante ha mediada que pasa el tiempo está haciendo uso a mayor grado de herramientas open source, es decir de código abierto o libres.

En el mundo de la Tecnología de la Información, específicamente en el campo del desarrollo de aplicativos y producción, siempre ha existido la necesidad de buen administrador de base de datos para la administración y registro de la información; el administrador de base de datos Open Source más avanzada del mundo PostgreSQL, es el motor de base de datos por excelencia. Pero para muchos ha sido un problema por la complejidad del uso, ya que se lo ha venido manejando mediante líneas de comandos complejas y esto para usuarios no expertos se convierte en un dolor de cabeza, en un mundo en que la interfaces graficas ganan campo casi en todas las aplicaciones.

Entre los sistemas de bases de datos existentes hoy en día, PostgreSQL juega un papel muy importante ya que es un sistema que tiene muchas cualidades, lo que le permiten ser una muy buena alternativa para instalar sistemas en empresas, universidades y una gran cantidad de otras aplicaciones.

Este documento de investigación está pensado como un material práctico - teórico de introducción al administrador de sistemas de bases de datos relacionales basados enPostgreSQL, como lo es pgAdmin; aborda una gran parte de los temas necesarios para iniciar de buena forma el estudio. Además la información se ilustra por medio de varios ejemplos que permiten entender más a fondo los conceptos. Gran parte de la información que aquí se encuentra fue obtenida de la documentación oficial de PostgreSQL, aunque también de algunos sitios web y manuales, de donde se trató de obtener la mayor cantidad de ideas y ponerlas en un documento que fuera fácil de entender y que lograra el objetivo de dar una visión global acerca del administrador de bases de datos y en un tamaño reducido Ver [11].

Por todo lo mencionado el tema de investigación, pgAdmin un administrador de base de datos Postgresql. Con una interfaz gráfica muy amigable con el usuario y una característica particular es Open Source.

- 13 -

PgAdmin es el más popular en la función de administración de código abierto y plataforma de desarrollo de PostgreSQL, la base de datos Open Source. La aplicación se puede utilizar en Linux, Solaris, Mac OSX y Windows para gestionar PostgreSQL, así como versiones comerciales y derivados de PostgreSQL.

PgAdmin es desarrollado por una comunidad de expertos PostgreSQL en todo el mundo y está disponible en más de una docena de idiomas. Es un software libre publicado bajo la licencia de PostgreSQL.

Todas estas características hacen de pgAdmin la única herramienta gráfica excelente que necesitaremos para trabajar con PostgreSQL, tanto desde el punto de vista del usuario como deladministrador.

En este documento constan algunos capítulos los cuales son considerados los más importantes para el estudio de pgAdmin, se tratara como primer punto los antecedentes tanto de Postgresql como del administrador pgAdmin, en el que consta temas de iniciación para el estudio, como los conceptos básicos, la historia como ha venido evolucionado en el trascurso de los años, sus características principales y algo que facilitara enormemente el estudio es la instalación en si del motor de base de datos con su administrador, pgAdminobjetivo de nuestro estudio; de esta manera se podrá conocer no solo en la teoría sino de manera también práctica.

Una vez concluido y aclarado todo lo referente a los antecedentes de la herramienta se procede a revisar elcapítulo número dos, en el cual trata lo referente al funcionamiento del administrador de Postgresql, no solo de manera teórica sino este documento trata también de llevar a la practica la funcionabilidad de la herramienta, con imágenes de ejemplos claros del administrador de Postgresql, pgAdmin.

Con estos conocimientos se podrá comprender de mejor manera el siguiente capítulo, en el que se trata temas referentesa los objetos de Postgresql mediante pgAdmin, como es la creación de esquemas donde se describe la estructura de la base de datos, lo cual es de mucha importancia ya que mediante esta estructura se podrá revisar lo que son las funciones, triggers, vistas, espacios de tablas, todo lo que le hace funcional a la base de datos, también se conocerá en este capítulo para afianzar losconocimientos, lo que es la administración de usuarios, grupos y sus roles.

Tratando de abarcar todo lo referente a la administración de Postgresql, dentro de este capítulo se revisara un tema que se podría decir es de mucha importancia, como lo es la configuración para permitir conexiones externas remotas a la base de datos, esto ya que hoy en día, la importancia de conectar a la base de datos y de que este siempre disponible en todo momento y en cualquier lugar es sumamente necesario.

CAPITULO 1. ANTECEDENTES DE POSTGRESQL Y SU ADMINISTRADOR PGADMIN.

1.1 ¿QUE ES PGADMIN? PgAdmin es una aplicación con interfaz gráfica para gestionar bases de datos PostgreSQL,

siendo la más completa y popular con licencia Open Source. Está escrita en C++1 usando la librería gráfica multiplataforma wxWidgets,2 lo que permite que se pueda usar en Linux, Solaris, Mac OS X y Windows. Es capaz de gestionar versiones a partir de la PostgreSQL 7.3 ejecutándose en cualquier plataforma, así como versiones comerciales de PostgreSQL, la interfaz gráfica soporta todas las características de PostgreSQL y facilita enormemente la administración.

PgAdmin está diseñado para darle respuesta a las necesidades de la mayoría de los usuarios, desde la escritura de consultas simples en SQL hasta el desarrollo de bases de datos complejas. Está disponible en más de 30 lenguajes y para varios sistemas operativos Ver [13].

La aplicación también incluye un editor SQL con resaltado de sintaxis, un editor de código de la parte del servidor, un agente para lanzar scripts programados, soporte para el motor de replicación Slony-I3 y mucho más. La conexión al servidor puede hacerse mediante conexión TCP/IP o Unix Domain Sockets y puede encriptarse mediante SSL4 para mayor seguridad.

Una vez abierto pgAdmin. La ventana principal muestra la estructura de la base de datos en dónde.

Consta:

• Barra de menú: Con las distintas funcionalidades de la herramienta. • Barra de herramientas: Iconos de accesos que activan algunas funciones como

conectar a base de datos, refrescar, sentencias sql, etc. • Explorador de Objetos: Árbol con las bases de datos definidas y su contenido. • Panel de detalle: Solapa de propiedades, Estadísticas, Dependencias y Dependientes

del objeto seleccionado. • Panel SQL: Sentencias SQL. 1C++.- Lenguaje de Programación. 2wxWidgets.- Bibliotecas Multiplataforma y libres, para el desarrollo de interfaces gráficas. 3Slony-I.- Herramienta para Replicar Base de Datos en Postgresql. 4SSL.- Secure Sockets Layer (Comunicaciones Seguras por una Red)

- 15 -

1.2 HISTORIA DE POSTGRESQL Y PGADMIN. PgAdmin ha venido evolucionando desde la creación de PostgreSQL, no en todas las

versiones existieron pgAdmin, en las versiones más antiguas de PostreSQL no existía o no se encontraba disponible este administrador como es bien sabido por la gran utilización de comandos en versiones anteriores.

PgAdmin se encuentra disponible desde la versión postgreSQL 7.3 que mencionamos en las siguientes líneas. Por esto es necesario conocer la historiabásica de PostgreSQL, mencionada a continuación.

PostgreSQL ha tenido una larga evolución, la cual se inicia en 1982 con el proyecto Ingres en la Universidad de Berkeley. Este proyecto, liderado por Michael Stonebraker, fue uno de los primeros intentos en implementar un motor de base de datos relacional. Después de haber trabajado un largo tiempo en Ingres y de haber tenido una experiencia comercial con él mismo, Michael decidió volver a la Universidad en 1985 para trabajar en un nuevo proyecto sobre la experiencia de Ingres, dicho proyecto fue llamado post-ingres o simplemente POSTGRES Ver [15].

La siguiente lista muestra los hitos más importantes en la vida del proyecto Postgres.

1986: Se publicaron varios papers que describían las bases del sistema.

1988: Ya se contaba con una versión utilizable.

1989: El grupo publicaba la versión 1 para una pequeña comunidad de usuarios.

1990: Se publicaba la versión 2 la cual tenía prácticamente reescrito el sistema de reglas.

1991: Publicación de la versión 3, esta añadía la capacidad de múltiples motores de almacenamiento.

1993: Crecimiento importante de la comunidad de usuarios, la cual demandaba más características.

1994: Después de la publicación de la versión 4, el proyecto terminó y el grupo se disolvió.

Después de que el proyecto POSTGRES terminara, dos graduados de la universidad, Andrew Yu y JollyChen, comenzaron a trabajar sobre el código de POSTGRES, esto fue posible dado que POSTGRES estaba licenciado bajo la BSD5, y lo primero que hicieron fue añadir soporte para el lenguaje SQL a POSTGRES, dado que anteriormente contaba con un intérprete del lenguaje de consultas QUEL (basado en Ingres), creando así el sistema al cual denominaron Postgres95 Ver [15].

En 1996 se unieron al proyecto personas ajenas a la Universidad quienes proporcionaron el primer servidor de desarrollo no universitario para el esfuerzo de desarrollo de código abierto y comenzaron a trabajar para estabilizar el código de Postgres95.

En el mismo año decidieron cambiar el nombre de Postgres95 de tal modo que refleje la característica del lenguaje SQL y lo terminaron llamando PostgreSQL, cuya primera versión

5BSD.- Berkeley Software Distribución (Licencia de Software Libre)

- 16 -

de código abierto fue lanzada el 1 de agosto de 1996. La primera versión formal de PostgreSQL (6.0) fue liberada en enero de 1997.

En 2000, ex inversionistas de Red Hat6 crearon la empresa Great Bridge para comercializar PostgreSQL y competir contra proveedores comerciales de bases de datos.

En 2001, CommandPrompt, Inc. lanzó MammonthPostgreSQL, la más antigua distribución comercial de PostgreSQL. Continúa brindando soporte a la comunidad PostgreSQLVer [15].

En enero de 2005, PostgreSQL recibió apoyo del proveedor de base de datos Pervasive Software, conocido por su producto Btrieve7 que se utilizaba en la plataforma Novell Netware. Pervasive anunció soporte comercial y participación comunitaria y logró algo de éxito. Sin embargo, en julio de 2006 dejó el mercado de soporte de PostgreSQL.

A mediados de 2005 otras dos compañías anunciaron planes para comercializar PostgreSQL con énfasis en nichos separados de mercados. EnterpriseDB añadió funcionalidades que le permitían a las aplicaciones escritas para trabajar con Oracle ser más fáciles de ejecutar con PostgreSQL. Greenplum contribuyó mejoras directamente orientadas a aplicaciones de Data Warehouse e Inteligencia de negocios, incluyendo el proyecto BizGres.8

En octubre de 2005, John Loiacono, vicepresidente ejecutivo de software en Sun Microsystems comentó: "No estamos yendo tras el OEM de Microsoft pero estamos viendo a PostgreSQL ahora", aunque no se dieron especificaciones en ese momento. Para noviembre de 2005, Sun Solaris 10 (lanzamiento 6/06) incluía PostgreSQLVer [15].

En agosto de 2007 EnterpriseDB anunció el PostgresResource Center y EnterpriseDBPostgres, diseñados para ser una completamente configurada distribución de PostgreSQL incluyendo muchos módulos contribuidos y agregados. EnterpriseDBPostgres fue renombradoPostgres Plus en marzo de 2008Ver [15].

El proyecto PostgreSQL continúa haciendo lanzamientos principales anualmente y lanzamientos menores de reparación de bugs, todos disponibles bajo la licencia BSD, y basados en contribuciones de proveedores comerciales, empresas aportantes y programadores de código abierto mayormente.

En julio 2009 La versión final de PostgreSQL 8.4 está mucho más cerca hoy día con la liberación del primer ReleaseCandidate9. Ahora contamos con que todos los usuarios y desarrolladores de PostgreSQL a nivel mundial prueben Este ReleaseCandidate para asegurarnos de que sea lo suficientemente estable, confiable, seguro y con alto rendimiento como para ser una versión oficial de PostgreSQLVer [15].

En agosto 2010 Inicialmente la version iba a ser llamada PostgreSQL 8.5, pero debido al cambio tan importante como la replicación en el core, se decidió el número de versión, esta semana el equipo PostgreSQL está cerrando los bugs finales para lanzar la versión final, en ese aspecto PostgreSQL demandaba una replicación en el core, si bien hay varias soluciones

6Ret Hat.- Distribución del Sistema Operativo GNU/Linux. 7Betrieve.- Base de Datos transaccional basado en el método de acceso secuencial. 8BizGres.- Proyecto diseñado para la Inteligencia del Negocio. 9Relase Candidate.- Versión definitiva o un producto final en el desarrollo de software.

- 17 -

por ahí, al ser hechas en lenguajes interpretados o triggers se presta a inconsistencias o diversos problemas de performance, por tanto es un avance importante.

En general el proyecto PostgreSQL ha lanzado nuevas versiones menores de todas las series activas de PostgreSQL. Las nuevas versiones disponibles son 9.1.1, 9.0.5, 8.4.9, 8.3.16 y 8.2.22. Recordamos que la serie 8.2 dejará de actualizarse a partir de noviembre 2011 Ver [15].

1.3 CARACTERÍSTICAS DE PGADMIN. pgAdmin tiene una enorme variedad de características, He aquí una breve lista para darle

una idea de sus capacidades:

Multiplataforma.

• Microsoft Windows Server ™ 2000 y superiores. • Linux Linux. • FreeBSDFreeBSD. • Mac OSX Mac OSX. • Solaris SolarisVer [12].

Diseñado para múltiples versiones de PostgreSQL y derivados

• PostgreSQL 7,3 y superiores. • Postgres Plus Advanced Server. • GreenplumDatabase Ver [12].

Amplia documentación

• PgAdmin Documentación. • Guru Sugerencias para ayudar a los usuarios menos experimentados. • Documentación de PostgreSQL (on-line y off-line). • Slony -l documentation Ver [12].

La interfaz multilingüe

• Más de 12 traducciones compatibles.

Acceso a los datos

• Da acceso PostgreSQL nativo (sin capa de ODBC10 es necesario). • Potente herramienta de consulta con resaltado de sintaxis en color. • Muy rápido cuadrícula de datos para la visualización / entrada de datos. • El mantenimiento de rutina. • Configuración de edición de archivos. • Auto-gestión de vacío (PostgreSQL 8.1 y superiores). • Archivo de registro del navegador. • Bloqueo visor. • Estado del servidor / visor de proceso. • SQL/shell/ lote de trabajo del agente de la programaciónVer [12]. 10ODBC.- Open DataBase Connectivity.- Standard de acceso a las bases de datos.

- 18 -

El acceso a todos los objetos PostgreSQL

• Aggregates(Agregados). • Casts(Cambia Tipo de Datos). • Columns(Columnas). • Constraints (Constructores). • Conversions (Conversiones). • Databases (Base de Datos). • Domains(Dominios). • FTS configurations(Configuraciones). • FTS dictionaries(Diccionarios). • FTS parsers(Parches). • FTS templates(Plantillas). • Functions(Funciones). • Greenplum objetos (como tablas externas, las colas de recurso). • Groups(Grupos). • Indexes (Índices). • Languages(Lenguajes). • Operatorclasses(Clases de Operadores). • Operatorfamilies(Familia de Operadores). • Operators(Operadores). • pgAgent objetos (tales como puestos de trabajo, horarios). • PostgreSQL servers (Servidores Postgresql). • Postgres Plus Advanced Server objetos (tales como paquetes, procedimientos,

sinónimos). • Roles (Roles). • Rules (Reglas). • Schemas(Esquemas). • Sequences(Secuencias). • Server-sidelanguages (tales como pl/pgsql, pl/perl, pl/python, etc.). • Slony-objetos (tales como nodos, grupos, etc) (Replicacion). • Tables(Tablas). • Tablespaces(Espacio de Tablas). • Triggerfunctions(Disparadores). • Types(Tipos). • Users(Usuarios). • Views(Vistas)Ver [12].

Soporte Multibyte

PgAdminPostgreSQL soporta la mayoría de las codificaciones del lado del servidor:

1.4 CONDICIONES DE USO. Copyright (C) 2002 - 2012, ThepgAdminDevelopmentTeam

- 19 -

El permiso para utilizar, copiar, modificar y distribuir este software y su documentación para cualquier propósito, sin honorarios, y sin un acuerdo por escrito se le concede, siempre que el aviso de copyright anterior y este párrafo y los dos párrafos siguientes estén en todas las copiasVer [12].

EN NINGÚN CASO EL EQUIPO DE DESARROLLO PGADMIN SERÁ RESPONSABLE ANTE NINGUNA PARTE POR DAÑOS DIRECTOS, INDIRECTOS, ESPECIALES, ACCIDENTAL O CONSECUENTE, INCLUYENDO LA PÉRDIDA DE BENEFICIOS, QUE RESULTE DE LA UTILIZACIÓN DE ESTE PROGRAMA Y LA DOCUMENTACIÓN QUE, AUN CUANDO EL EQUIPO DE DESARROLLO PGADMIN HA SIDO ADVERTIDO DE LA POSIBILIDAD DE TALES DAÑOS.

EL EQUIPO DE DESARROLLO PGADMIN NIEGA ESPECÍFICAMENTE CUALQUIER GARANTÍA, INCLUYENDO, PERO NO LIMITADO A, LAS GARANTÍAS DE COMERCIALIZACIÓN Y APTITUD PARA UN PROPÓSITO PARTICULAR. EL SOFTWARE QUE A CONTINUACIÓN SE PRESENTA "TAL CUAL", Y EL EQUIPO DE DESARROLLO PGADMIN NO TIENE NINGUNA OBLIGACIÓN DE PRESTAR APOYO, ACTUALIZACIONES, AMPLIACIONES O MODIFICACIONES Ver [12].

1.5 ACERCA DE PGADMIN. Para el presente trabajo se presentara la última versión liberada, como sabemos el

instalador de pgAdmin viene en el paquete de instalación de PostgreSQL, que es compatible con la plataforma de Windows 7, en el cual trabajaremos y realizaremos todo lo referente a la práctica.

Versión PostgreSQL 9.2.2.

Versión pgAdmin1.16.1 – Dec 04 del 2012, Copyright (C) 2002 - 2012, ThepgAdminDevelopmentTeam.

Este software se distribuye bajo la licencia de PostrgeSQL. Como se indica se en la Fig. 1.

PgAdmin es un diseño de base de datos PostgreSQL y el sistema de gestión integral de los sistemas Unix y Windows. Es libremente disponible bajo los términos de la Licencia de PostgreSQL y puede ser redistribuido siempre y cuando los términos de la licencia se cumplen. El proyecto está gestionado por el equipo de desarrollo de pgAdminVer [12].

Este software fue escrito como una sucesora de la original pgAdmin y productos de pgAdmin III, que, aunque populares, tenía limitaciones en el diseño que les evitó ser trasladado al "siguiente nivel". PgAdmin III está escrito en C + +y utiliza los wxWidgets

- 20 -

excelentes (anteriormente conocida como wxWindows) multiplataforma. Conexión a PostgreSQL se realiza con el nativo de la biblioteca libpq.11 Ver [12].

Fig. 1 Logotipo de pgAdminVer [12].

1.6 REQUERIMIENTOS DE SISTEMA. Realmente pgAdmin III no tiene requerimientos específicos de hardware. Se considera

suficiente con satisfacer los requerimientos recomendados para instalar PostgreSQL y el sistema operativo que se vaya a utilizar. Como mínimo se pude utilizar una Pentium IV de 1.7 MHz con características considerables para una mínima cantidad de usuarios, también podemos emplear recursos de hardware distribuidos para una BD considerablemente grande. Naturalmente, si se desea que el sistema ofrezca servicio a un número relativamente grande de usuarios concurrentes habrá que tener este factor en cuenta a la hora de elegir el hardware más apropiado de acuerdo a nuestras necesidadesVer [4].

Sistemas Operativos Compatibles:

• Linux (x86 - 32) (x86 - 64). • Windows (x86 - 32) (x86 - 64). • Mac OS X.

Requerimientos del sistema

• Memoria: 256 MB (mínimo). • Espacio disponible en disco: 70 MB (mínimo). • Posibilidad para conectarse con un servidor de base de datos PostgreSQL local o

remoto.

11Libpq.- Postgresql Access Library.

- 21 -

En este caso para los requerimientos del sistema nos podemos dar cuenta que no es necesario tener demasiadas características en el computadoral momento de instalarlo en un computadorbásico podemos instalar nuestro administrador si ningún tipo de problema.

1.7 NSTALACIÓN DE PGADMIN III EN WINDOWS 7. En Windows, pgAdmin viene incorporado con el instalador de PostgreSQL. Como lo

mencionamos anteriormente.

Por lo que a continuación procederemos a la indicación de cómo realizar la instalación correcta paso a paso de PostgreSQL y la configuración de pgAdmin III.

Como primer paso procedemos a descargar el fichero de instalación de PostgreSQL, para ello abriremos cualquier navegador web y accederemos a la dirección:

http://www.enterprisedb.com/products-services-training/pgdevdownload

Elegir el fichero que se ajuste a la arquitectura del equipo, para este caso "Win x86-32". Tendremos a elegir también la versión la cual deseamos descargarnos. Para nuestro caso seleccionaremos la última versión. Guardaremos el fichero a descargar en nuestro equipo.

Continuando pulsar ahora con el botón derecho del ratón sobre el fichero descargado y seleccionar "Ejecutar como administrador".

Se iniciará el asistente que nos guiará en el proceso de instalación de PostgreSQL 9.2.2, donde aparecer una ventana donde aparecerá la siguiente leyenda "Bienvenido a la instalación de PostgreSQL" pulsar Siguiente, para continuar, Indicado en la Fig. 2.

Fig. 2 Bienvenido al Proceso de Instalación Ver [3].

A continuación seleccionar el directorio (unidad y carpeta) donde se ubicarán los ficheros necesarios para le ejecución de PostgreSQL Ejemplo:

- 22 -

C:/PostgreSQL91.

Este directorio aparecerá por defecto en la instalación, pero se tendrá la opción de cambiar de ruta para guardar los ficheros para este caso lo procedemos a dejarlo por defecto.

Ahora seleccionar la unidad y carpeta donde se ubicarán los datos de las bases de datos del

servidor de bases de datos PostgreSQL, como sabemos la ruta ya quedo establecida

anteriormente, ahora para guardar los datos se crea automáticamente una carpeta con el

nombre "datos" por defecto, el cual se podría modificar la ubicación o el nombre de la carpeta

donde se guardan los datos para este caso se a proceder a dejar preestablecida por defecto,

Ejemplo:

C:/PostgreSQL/datos.

Continuando con el asistente para instalar PostgreSQL ahora se creará un usuario en el sistema operativo llamado "postgres", en este paso de la instalación introducir la contraseña para este usuario. En este paso se presenta uncuadro de dialogo donde pedirá que se proporcione una contraseña para el súper-usuario(postgresql) y cuenta del servicio (postgresql). Si la cuenta del servicio ya existe en Windows, se debe ingresar la contraseña actual para dicha cuenta. Si la cuenta no existe, será creada cuando se presione Continuar.

Recordar siempre que esta contraseña nos pedirá ingresarla al momento de conectarnos a la base de datos por defecto y varios accesos por esta razón, hay que tenerla muy presenta para evitar futuros inconvenientes. La contraseña deberá ser fácil al momento de recordarla para nosotros como usuarios.

Prosigamos si hasta el momento no hemos tenido ningún inconveniente aparcera una pantalla donde nos pedirá que seleccionemos un numero de puerto que se usará para conexión con el servidor de PostgreSQL, por defecto viene establecido el puerto con número 5432. Pulsamos en el botón Siguiente para continuar con el asistente de instalación.

Ahora bien pasaremos a un cuadro de dialogo de "Opciones Avanzadas", donde pide que

seleccionar la configuración regional que será usada por el motor de base de datos

PostgreSQL, para este caso dejar la "Configuración Regional por defecto", que es la que viene

ya establecía por el asistente.

Antes de iniciar la instalación definitiva de PostgreSQLen Microsoft Windows 7, el

asistente indicará que el programa está listo para iniciar la instalación de PostgreSQL.

Pulsar "Siguiente" para continuar, Y esperar a que el marcador del proceso llegue al 100%.

Una vez completo el procesoindicara en la pantalla que se ha terminado la instalación de

PostgrSQL correctamente. Como se indica en la Fig. 3.

- 23 -

Además de esto el asistente nos dará la posibilidad de iniciar StackBuilder que es una

aplicación que nos permitirá instalar componentes y software adicional para PostgreSQL

como: ApachePHP y phppgAdmin12.

Que es el manejo de un servidor web, y una herramienta para administrar un servidor

PostgreSQL vía web, respectivamente. Lo cual no lo vamos a profundizar en nuestro trabajo

de investigación.

Luego proceder a elegir la opción Terminar. La instalación finalizara correctamente. Todo

esto indicara que le proceso concluyo de manera correcta y tendremos ya instalado en el

computador el motor de base de datos PostgreSQL con su administrador pgAdmin.

Fig. 3 Instalación Finalizado Correctamente Ver [3]

Como lo mencionado anteriormente el asistente de instalación de PostgreSQL también

habrá instalado pgAdmin III para administrar, con todas las opciones, el servidor PostgreSQL.

12PhppgAdmin.- Aplicación Web escrita en PHP, para administrar base de datos Postgresql.

- 24 -

CAPITULO 2. POSTGRESQL EN FUNCIONAMIENTO ADMINISTRADO POR PGADMIN III.

2.1 EJECUCIÓN DE PGADMIN III. Una vez concluido todo el proceso de instalación de manera correcta, y sin ningún tipo de

error, a continuación se procederá en este capítulo a revisar el funcionamiento de la hermanita.

En este capítulo se revisara cada paso y ejecución de esta herramienta desde el inicio ya que ese es el objetivo de este trabajo investigativo tener un manual que sirvade ayuda al momento de querer utilizar este administrador una guía para usuarios no expertos y como no usuarios también expertos.

Es por esta razón como primer paso se empieza por la ejecución de la aplicación pgAdmin III seguimos estos breves y sencillos pasos:

1. Accederemos al menú "Inicio" 2. "Todas las aplicaciones". 3. Buscamos la carpeta de instalación "PostgreSQL". 4. Seleccionar "pgAdmin III", (archivo.exe) este icono es el archivo ejecutable para la

aplicación.

Al abrir el pgAdmin III mostrará en la parte izquierda los servidores PostgreSQL que haya encontrado, en este caso tenemos el servidor por defecto de PostgreSQL ya que como es la primera vez que accedemos a la aplicación de pgAdmin, todavía no hemos agregado ningún servidor. Al pulsar sobre el servidor por defecto y seleccionar "Conectar" Observar Fig. 4Ver [4].

La Ventana Principal también muestra la estructura de la base de datos, servidores, base de datos con sus respectivas tablas, conexiones, objetos, vistas, y todas las opciones y objetos disponibles para administrar PostgreSQL.

- 25 -

Fig. 4 Conexión con Servidor Ver [3]

Al dar clic para conectarnos, Introducir la contraseña del usuario para poder conectar al servidor,la contraseña que por defecto se establece en el proceso de instalación es la que debe utilizarpara este caso la contraseña y para evitar inconvenientes se recomienda dejarla con el nombre de"postgres" y luego únicamente pulsar "OK". Indicado en la Fig. 5.

Fig. 5 Ingresar Contraseña Ver [3]

Si los datos de acceso son correctos toda esta listo para utilizar y administrar PostgreSQL con todas sus opciones.

Si bien no tenemos nada diseñado, a continuación se procede en el presente documento a tratar puntos más claves empezar desde cero en la en el manejo de este administrador. Como es lo referente a la funcionalidad de la herramienta. Continuemos.

- 26 -

2.2 FUNCIONALIDAD DE LA HERRAMIENTA. En este documento como lo mencionado anteriormente no solo se procede a dar los

conceptos y los pasos en general para utilizar PostgreSQL mediante pgAdmin III, sino también a revisar todo lo referente a la administración del motor de base de datos PostgreSQL, mediante ejemplos prácticos los cuales nos podrán ayudar a comprender de mejor manera el estudio dePostgreSQL.

Todos los puntos a tratar a continuación son referentes a la funcionalidad en sí de la herramienta y que mejor manera de explicarlo gráficamente y realizarlo paso a paso. Con la finalidad de lograr todo esto, se tomara como ejemplo de una base de datos relación la cual servirá de guía en todo el proceso de aprendizaje y lo vamos a realizar desde el inicio para mejor entendimiento.

Para el caso de los ejemplos y ejercicios se parte de una diagrama modelo base de datos relacional el cual hace referencia a la ‘’Administración de un Sistema de Control General Universitario’’, el cual servirá de guía para realizar cada punto a tratar a lo largo del documento.

Se trata del diseñode la base de datos para un sistema de control universitario en el constaran los registros de una universidad en general, se podrá llevar un control de registro de alumnado, el curso el cual está cursando ese alumno, las materias que constan para ese curso así como también se podrá llevar un control de notas del alumno, conocer las facultades, los profesores,y demás registros necesarios en un control universitario. No se procede a profundizar en todo y cubrir cada detalle porque ese no es el fin del tema de estudio, sino conocer la utilización de pgAdmin III como administrador de base de datos.

Se procede a presentar el diagrama entidad relación de la base de datos para el sistema universitario, el diagrama siempre se genera antes de realizarcualquier base de datos, este diagrama dependerá de cual sea el indicado para cada caso existen varios modelos al momento de realizar el diagrama para nuestras bases de datos, el diagrama entidad relación,es una percepción de la realidad, es el diseño previo a la construcción de la base de datos, siempre se parte de la generación del diagrama esto dependerá de las necesidades de nuestra base de datos, para este caso se toma la forma másgeneral para eldiseñodel diagrama de control universitario. En eldiagrama constan las entidades como: Alumnos, esta entidad guarda todos los atributos y datos del alumno en general, la entidad Profesor donde consta todo los datos del profesor, la entidad o la tabla Materias aquí constara los datos de la materia en si como una descripción general las horas que se dictan para esa materia, tenemos también la entidad Cursos en esta entidad están los registros de cada curso dependiendo de cada facultad, la entidad facultad en la que se lleva el control de los registros por cada facultad de esa universidad. Las entidades profesor materia, para saber que profesordicta que materia, y así mismo la tabla profesor-facultad para conocer queprofesor dicta en que facultad.

Esta es la forma básica se podría decir para del modelo para unasistema de control general universitario. Observar la Fig. 6.

- 27 -

ALUMNOS

PK Cod_Alumno INTEGER

Cedula_Alumno BINARY(10)Nombres_Alumno VARCHAR(100)Paralelo VARCHAR(1)

FK1 NUM_Curso INTEGERFK1 Cod_Facultad INTEGER

PROFESOR

PK Cod_Profesor INTEGER

Nombres_Profesor VARCHAR(100)Direccion_Profesor VARCHAR(100)

NOTAS

PK,FK1 Cod_Alumno INTEGERPK,FK2 Cod_Materia INTEGER

Aporte 1 INTEGERAporte 2 INTEGERAporte 3 INTEGERSupletorio INTEGER

CURSOS

PK NUM_Curso INTEGERPK,FK1 Cod_Facultad INTEGER

Descripcion_Curso VARCHAR(100)Num_Paralelos_Curso INTEGERNum_Materias_Curso INTEGER

MATERIAS

PK Cod_Materia INTEGER

Descripcion_Materia VARCHAR(100)Horas_Materia INTEGER

FK1 NUM_Curso INTEGERFK1 Cod_Facultad INTEGER

FACULTAD

PK Cod_Facultad INTEGER

Descripcion_Facultad VARCHAR(100)Años_Facultad INTEGERTitulo_Final_Facultad INTEGER

PROFESOR_MATERIA

PK,FK2 Cod_Profesor INTEGERPK,FK2 Cod_Facultad INTEGERPK,FK1 Cod_Materia INTEGER

PROFESOR_FACULTAD

PK,FK1 Cod_Profesor INTEGERPK,FK2 Cod_Facultad INTEGER

Num_Horas CHAR(10)Num_Materias CHAR(10)

1 ‐ VARIOS

1 ‐V

ARIOS 1 ‐ VARIOS

1 ‐V

ARIOS

1 ‐V

ARIOS

1 ‐ VARIOS

1 ‐VARIO

S

1 ‐VARIO

S

1 ‐VARIOS

Fig. 6 Diagrama Entidad - Relación [Fuente del Autor].

2.2.1 AGREGAR SERVIDOR.

Para conectarse a un servidor, se debe agregar los datos del mismo mediante el botón Añadir una conexión a un servidor (ícono similar enchufe en la barra de herramientas), o la opción de menú Archivo, Añadir Servidor, con lo que aparecerá la pantalla de Nuevo Registro de Servidor. Como se muestra en la Fig. 7 Ver [3].

Campos a Completar:

• Nombre: denominación de la base de datos.

- 28 -

• Servidor: dirección IP o nombre de host. • Puerto: número de puerto (usualmente 5432). • SSL: modo de encriptación de la conexión (requerir, preferir, permitir, desactivar,

verificar de autoridad certificante, verificar completo). • Base de datos de Mantenimiento: conexión inicial. • Nombre de usuario: rol de postrges para la conexión. • Contraseña: clave del rol de postgres para la conexión. • Almacenar contraseña (para próximas sesiones). • Restricción DB: limitar las bases de datos y esquemas que se muestran en pgAdmin. • Servicio: parámetros para controlar el servicio (depende del S.O.). • Conectar ahora: intenta la conexión inmediatamente Ver [4].

Haciendo referencia al ejemplo antes mencionado (“Administración de un Sistema para el Control General Universitario”). el cual como indicamos se toma para realizar los ejemplos en este estudio, de esta manera lo primero es empezar por el registro de un nuevo servidor, para lo cual se va a completar los campos que se indicó, para el nombre del servidor utilizar“Servidor Universidad”nombre ideal para el sistema en el cual vamos a trabajar, en el nombre de host utilizarlocal host porque todavía no se cuenta con una conexión remota sino estamos trabajando en nuestro propio ordenador, el puerto que viene establecido por defecto, el nombre de usuario y la contraseña que utilizo en la instalación es la que se introduce para este caso, si bien podrá conectar al servidor por defecto de PostgreSQL y empezar a trabajar en este servidor, es recomendable crear nuestro propio servidor para este ejemplo para futuras modificaciones y conexiones remotas solamente a este servidor. Con mayor detalle en la Fig. 7.

Fig. 7 Nuevo Registro de Servidor[Fuente del Autor].

- 29 -

2.2.2 CREAR UNA BASE DE DATOS.

Para poder agregar las tablas, es necesario crear primero una base de datos, dentro del propio servidor el cual ya fue creado anteriormente. Para ello, ubicar el ítem Bases de datos en el Explorador de Objetos, hacer clic derecho y seleccionar 'Nueva Base de Datos' del menú contextual o ir al menú principal: Editar, Nuevo Objeto, Nueva Base de datos, aparecerá la pantalla de Nueva Base de DatosVer [3].

Completar los campos principales:

• Nombre: denominación de la base de datos (por simplicidad, evitar espacios, mayúsculas y acentos, separar con guión bajo '_').

• Propietario: usuario (rol) que tendrá derechos especiales sobre la base de datos. Esto lo revisaremos más adelante según avancemos en el tema.

• Codificado: esquema de codificación (UTF813, LATIN114, WIN125215)

Presionar OK y se creará la base de datosVer [3].

Continuando con el ejemplo, la creación de la base de datos es la parte más importante ya que dentro de ella se creatodas las tablas que conformaran la base de datos y los demás objetos. Empezar por dar el nombre a la base de datos se podría llamarSistema Control Universitario,es solamente una tentativa de nombre podría ser el nombre que mejor sea conveniente, depende de cada caso el propietario de la base de datos será por defecto el de postgres, ya que hasta el momento no constan más usuarios, tema que se tratara más adelante, el codificado que ya menciono anteriormente y luego se procede a dar todos los privilegios a esta base de datos.Como se indica en la Fig. 8Ver [3].

Fig. 8 Nueva Base de Datos[Fuente del Autor]. 13UTF8.- 8-bit Unicode Transformation Format. Es un formato de codificaciones de caracteres Unicode, 14LATIN1.- Es una norma de la ISO, que define la codificación del alfabeto latino. 15WIN1252.- Codificacion utilizado en Windows.

- 30 -

2.2.3 AGREGAR UNA TABLA.

Una tabla es utilizada para organizar y representar muchos tipos de información las tablas estáconstituido de filas y columnas de celdas los cuales pueden ser llenados con textos y gráficos. Se puede también mencionar que las tablas se componen de dos estructuras registro que es cada una de las filas que divide la tabla y campo que es cada una de las columnas que forma la tabla.

La creación de tablas es una parte importante en el procedimiento de conformación de una base de datos, ya quees ahí justamente donde se almacenan los datos o los registros que van a conformar la base de datos. Se procede a indicar los pasos claves para creación de tablas.

En el caso del ejemplo planteado se indicara el proceso paso a paso de una sola tabla de nuestro diagrama luego con el ejemplo ya expuesto podrá conformar todas las tablas restantes de acuerdo a lo que se ha indicado.

Para poder agregar una tabla, ubicarnos en el Explorador de Objetos en el caso del ejemplo de la base de datos que se llama “Sistema Control Universitario,” abrir esta solapa y ubicar en el ítem Esquema (schema), al cual pertenecerá por defecto a un esquema de clase pública (public), y buscar el ítem Tablas. Hacer clic derecho y seleccionar 'Nueva Tabla' del menú contextual o ir al menú principal: Editar, Nuevo Objeto, Nueva Tabla, aparecerá la pantalla de Nueva Tabla.

De esta solapa completar los siguientes campos los cuales son considerados de importancia, y sin definir estos campos no se podrá observar el ok para la creación de la tabla.

• Nombre: denominación de la tabla (por simplicidad, evitar espacios, mayúsculas y acentos, separar con guión bajo '_' en el caso de que el nombre contenga varias palabras)

• Propietario: usuario (rol) que tendrá derechos especiales sobre la tabla, este tema de usuarios y roles lo trataremos más adelante a medida que avancemos en el estudio, por lo tanto para nuestro caso dejar estableció por defecto el usuario postgres que se genera al momento de la instalación.

Continuando con el ejemplo planteado ahora se va a crear la tablaque tendrá como nombre Alumnos para este ejemplo del Sistema de Control Universitario, se detalla los pasos a seguir y ya podrá conformar la base con las demás tablas guiados ya en este ejemplo.

Como lo mencionado para el caso del nombre de la tabla será alumnos, porque almacenara toda la información todos los registro referente a los alumnos de la universidad, se tendrá para esta tabla campos de importancia como el código de alumno, la cedula, el nombre que son campos que haránde cada alumno único y de esta manera conocer los registro de cada uno. Continuando con el proceso de registro en el caso de propietario para completar el registro de la tabla, como se dijo anteriormente el propietario será por defecto el usuario postgres. Proceso detallado en la Fig. 9.

- 31 -

Fig. 9 Nueva Tabla[Fuente del Autor].

Luego, seleccionar la solapa Columnas, donde se agregara todas las columnas o campos de la tabla del ejemplo presentado en este caso la tabla libros existen cinco columnas en total las cuales se procede a indicar como agregar cada columna de esta tabla.

Por cada columna a agregar presionar el botón Añadir. Indicado en la Fig.10:

Completar:

• Nombre: denominación de la columna (por simplicidad, evitar espacios, mayúsculas y acentos, separar con guión bajo '_')

• Tipo de datos:16 seleccionar el tipo de datos (serial para auto numéricos, integer para enteros, charactervaring para textos variables, text para textos tipo memo, double precisión para punto flotante, numeric para números con decimales precisos, etc.)

• Longitud: para los tipos de datos de longitud variable (character, charactervaring, numeric, etc.) la cantidad de dígitos o caracteres totales.

• Precisión: para los tipos de datos numéricos de precisión fija (numeric), la cantidad de dígitos decimales.

• Valor por defecto: un dato predeterminado que se usará si al ingresar un registro no se especifica ningún valor para la columna.

En el caso del ejemplo la primera columna será de nombre (Cod_Alumno) en este campo va contener el código del alumno, un código que se asignara a cada alumno que será único, y no se podrá repetir un código para identificar a cada alumno de la universidad, el tipo de datos

16Tipos de Datos.- integer = entero, carácter varing = cadena de longitud variable, text = memos, doublé = número de

punto flotante, numeric = tipo de datos numérico.

- 32 -

como se conoce va será de tipo integer porque es un campo numérico. En forma general. Observar el ejemplo en la Fig. 10Ver [4].

Fig. 10 Nueva Columnas de la Tabla [Fuente del Autor].

Una vez conformado todas los campos de la tabla tendrían que quedar establecidade la

siguiente manera.El campo (Cod_Alumno) como se mencionó que tendrá el código único, el

campo (Cedula_Alumno) es un campo donde consta el número de cedula de identificación,

importante para que cada alumno pueda identificarse.

El siguiente campo es el (Nombres_Alumno), donde se registrara los nombres y apellidos

completos del alumno, luego crear la columnaparalelo donde se guardara el paralelo al cual

pertenece el alumno, cabe indicar que tenemos adicionalmente dos campos (NUM_Curso) y

el (Cod_Facultad) que servirá para identificar a que curso y faculta pertenece un alumno

respectivamente, estos dos campos se crean de manera automática si se podría decir de esta

manera ya que son campos que son creados una vez establecida las relaciones con otras

tablas, como se puede observar en el diagrama del diseño de la base, la tabla alumno tiene

relación con la tabla cursos y por ende herida estos dos campos de esa tabla para crear así la

relación.

Una vez agregados todos los campos la tabla deberá estar conformado de la siguiente

manera: Proceso detallado en la Fig. 11.

- 33 -

Fig. 11 Columnas de la Tabla[Fuente del Autor].

De esta manera se podrá elaborar ya las demás tablas para conformar la base de datos, para poner en práctica se podrá crear ya las tablas faltantes presentadas en el diagrama para el control universitario.

Luego de agregar las columnas, en casi todas las tablas se tendrá que establecer una llave primaria o foránea, la clave primaria se establece a un campo o combinación de campos que identifica de forma única a cada fila de una tabla.

Una calve primaria comprende de esta manera una columna o conjunto de columnas, no puede haber dos filas en una tabla que tengan la misma clave primaria.

Mientras que la clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija) que se refiere a una columna o grupo de columnas en otra tabla (tabla maestra) como en el caso de las columnas que vamos a heredar a la tabla alumno.

Para agregar la clave primaria y foránea si es el caso de la tabla, para ellose puede ubicar en la solapa de restricciones de la tabla, luego seleccionamos el ítem clave primaria y pulsar añadir.

Completar de esta solapa los siguientes campos:

• Nombre: denominación de la restricción (ej. clave_primaria_alumno)

Seleccionar en la solapa columnas, elegir la columna que forma parte de la clave primaria y presionar Añadir. Para el caso del ejemplo planteado la clave primaria será la columna Cod_Alumno. Entonces una vez agregado tendría que quedar como se indica en la Fig. 12.

- 34 -

Fig. 12 Nueva llave primaria [Fuente del Autor]

Una vez definida la clave primaria, en la solapa Restricciones, seleccionar Clave Ajena (foreingkey) y presionar Añadir, aparecerá la pantalla para definir una clave foránea, esta llave foránea en el caso de que la tabla vaya a contener un clave foránea.

Completar:

• Nombre: denominación de la restricción (ej. clave_foranea) • Referencia: elegir la tabla foránea (la cual posee la clave primaria a verificar)

Seleccionar solapa columnas, elegir la columna que forma parte de la clave foránea y presionar Añadir.

En el caso del ejemplo tenemos para la Tabla alumno que se tomó como ejemplo dos claves foráneas, como lo es el (Num_Curso, Cod_Facultad), nos sirve para identificar en que curso esta este alumno y a la facultad a la que pertenece.

Proceder a continuación agregar las claves foráneas como lo indicado. Tendría que quedar conformado de la siguiente manera. Detallado en la Fig. 13.

En este caso se puede dar en cuenta que el campo Cod_Alumno va ser un campo único que no va a repetirse por ningún caso, podría haber dos alumnos con igual apellido y nombre, incluso el mismo domicilio pero su código siempre será distinto y único para identificarlo.

- 35 -

Fig. 13Añadir clave Ajena[Fuente del Autor].

2.2.4 HERRAMIENTA DE EDICIÓN DE DATOS.

La grilla de edición permite ver y editar los datos seleccionados en una tabla o vista. Para ello, seleccionar la tabla o vista en el Explorador de Objetos y luego presionar el botón Ver los datos del objeto seleccionado (ícono similar a grilla) de la barra de herramientas o por el menú Herramientas, donde en la pantalla veremos los registros de nuestra tabla. Ver Datos Ver [3].

Para editar, hacer doble clic en la celda a modificar. Los ítems principales de la barra de herramienta son:

Guardar (ícono similar a disquete): almacena los datos modificados.

Eliminar (ícono similar a basurero): borra la fila seleccionada.

Refrescar (ícono similar a reciclado): actualiza la grilla con datos recientes (por ejemplo, número de secuencia) Ver [4].

Importante: solo se puede actualizar datos (modificar y borrar) si la tabla cuenta con una clave primaria. Representado en la Fig. 14.

Para el caso del ejemplo planteadoobservarnos en la Fig. 14. Los datos que representan a la tabla que se creó anteriormente que es la de alumnosagregar cinco registros para la tabla alumnos para de esta manera conformar la tabla ya con registros, mediante este editor de datos se podrá seguir agregadomásregistros o eliminado un registro ya guardado.

- 36 -

. Cabe mencionar que para este caso tenemos dos columnas adicionales, como lo es el (NUM_Curso, Num_Facultad), que son campos que pertenecen a las claves foráneas, estos campos son necesarios en la tabla alumnos ya que nos ayudara a identificar al número de curso y a la facultad a la que pertenece ese alumno, también es necesario mencionar que antes de llenar estos registros es necesario llenar las tablas relacionadas con la tabla alumno, como es el caso de curso y facultad.

Fig. 14 Editor de Datos[Fuente del Autor].

2.2.5 HERRAMIENTA DE CONSULTA SQL.

Una consulta SQL es un lenguaje declarativo de acceso a base de datos relacionales que permite especificar diversos tipos de operación en ellas, una de las características principales es el manejo del algebra y el cálculo relacional que permite efectuar consultas con el fin de recuperar de forma sencilla información de interés de base de datos, así como hacer cambios en ella.

Al seleccionar una base de datos, se habilita la herramienta de consulta, que permite ejecutar consultas SQL arbitrarias. Para ingresar a dicha herramienta, presionar el botón Ejecutar consultas SQL arbitrarias (ícono similar hoja, sql, lápiz) de la barra de herramientas o dirigirse al menú Herramientas, Herramienta de consulta (Ctrl+E)Ver [3].

Funcionalidades importantes:

Ejecutar consulta (ícono similar Play).

Exportar datos consulta (ícono similar Play con Disquete): para guardar las filas resultantes (ver siguiente).

- 37 -

Analizar consulta (ícono similar árbol): para mostrar un EXPLAIN gráfico (explicación visual de los nodos del plan de ejecución de la consulta)Ver [4].

Haciendo referencia al ejemplo se procede a generar una consulta sencilla como explicación la cual muestre o indique todos los registros de la tabla alumnos creada anteriormente,

Dependerá de la necesidad de los usuarios generar las consultas. Ejemplo en la Fig.15.

Fig. 15 Generador de Consultas SQL [Fuente del Autor].

2.2.6 CONSTRUCTOR GRÁFICO DE CONSULTAS.

A su vez, la herramienta de consulta posee una solapa para diseñar consultas visualmente (similar a Access y otras herramientas), llamado Constructor Gráfico de ConsultasVer [3].

En el panel superior izquierdo aparecerán la base de datos, con sus esquemas, los cuales una vez abierto (por ejemplo. public) mostrará un árbol de las tablas disponibles.

Al hacer doble clic en la tabla, aparecerá en el panel superior derecho, con la posibilidad de arrastrar y unir sus campos con los de otra tabla, para construir las juntas. También se debe seleccionar la columna a mostrar como resultado de la consulta Ver [4].

En el panel inferior, se encuentran las solapas de Columnas (para detallar las columnas de salida del SELECT), Criterio (para incluir condiciones WHERE), Ordenamiento (ORDER), y Juntas (para especificar los tipos de JOIN).

- 38 -

2.2.7 HERRAMIENTA DE EXPORTACIÓN.

La herramienta de exportación permite exportar datos de la herramienta de consulta. Para ello, en la herramienta de consulta, presionar el botón Ejecute consulta, escriba resultado en archivo (ícono similar aplay con disquete) de la barra de herramientas o mediante el menú Consulta, Ejecutar a un archivo. Como se muestra en la Fig. 16 Ver [3].

Fig. 16 Herramienta de Exportación de Datos Ver [4]

Se debe completar el nombre del archivo y demás datos, y una vez generado dicho archivo, se puede abrir con cualquier planilla de cálculo (Gnumeric, Open Office, Excel)Ver [4].

2.2.8 HERRAMIENTA DE RESGUARDO.

La copia de seguridad, copia de respaldo o Backup importante dentro de la administración de un sistema de base de datos.

Es una copia de los datos originales que son realizados con la finalidad de disponer de un medio de recuperarlos en el caso de su perdida.

El proceso de copia de seguridad con otro proceso conocido como restauración de datos que es la acción de leer y grabar en la ubicación u otra los datos requeridos.

La herramienta de resguardo (backup) llama a la herramienta de volcado de PostgreSQL para crear copias de seguridad de los datos. Para utilizarla, seleccionar la base de datos del Explorador de objetos, presionar botón derecho y elegir Resguardar (o menú Herramientas, Resguardo).

Lo que se debe tener en consideración es el nombre del archivo el cual vamos a respaldar, el formato por defecto. Los demás campos son opcionales. Y clic para finalizar en BackupObservar Fig. 17Ver [3].

- 39 -

Fig. 17 Herramienta de Resguardo de Datos Ver [4]

Completar los campos principales:

• Nombre de archivo: • Formato: COMPRESS (binario comprimido), PLAIN (textual sin comprimir), TAR

(archivador).

Opciones:

• Blobs: incluir objetos grandes

Comandos INSERTs: generar sentencias INSERT en vez de COPY.

Presionar OK y se generará el archivo con la copia de seguridad (backup) de los datos seleccionadosVer [4].

2.2.9 HERRAMIENTA DE RESTAURACIÓN.

La herramienta de restauración (restore) llama a la herramienta homónima de PostgreSQL para restaurar los datos desde copias de seguridad (archivos de backup) Para utilizarla, crear una base de datos en blanco, seleccionarla en el 'Explorador de objetos, presionar botón derecho y elegir Restaurar (o menú Herramientas, Restaurar). Como se indica en la Fig. 18 Ver [3].

- 40 -

Fig. 18 Herramienta de Restauración de Datos Ver [4]

Completar los campos principales:

• Nombre de archivo: ubicación de la copia de seguridad. • Solo datos: si solo se desea restaurar los datos, no el esquema de tablas. • Objeto individual: si se quiere restaurar solo una tabla específica (ver solapa

Contenido).

Presionar OK y leerá el archivo con la copia de seguridad (backup) restaurando los datos. En caso de éxito, el botón cambiará ha hecho, en caso de falló permanecerá en Ok para volver a restaurar (algunos de los fallos son triviales y pueden ser ignorados, por ejemplo, al crear un lenguaje que ya existe.)Ver [4].

Nota: con esta herramienta solo se pueden restaurar copias de seguridad comprimidas (formato COMPRESS).

2.2.10 HERRAMIENTA DE MANTENIMIENTO.

Esta herramienta de mantenimiento (maintance) ejecuta la tarea de reconstruir las estadísticas sobre la base de datos y tablas, limpiar los datos no utilizados y reorganizar los índices. Para utilizarla, seleccionar la base de datos del Explorador de objetos, presionar botón derecho y elegir Mantenimiento (o menú Herramientas, Mantenimiento). Indicado en la Fig. 19Ver [3].

Opciones de mantenimiento:

• VACUUM: Limpieza de las tablas muertas. • ANALYZE: Analizar los datos para calcular estadísticas. • REINDEX: Reorganizar los índices.

- 41 -

Fig. 19 Herramienta de Mantenimiento Ver [4]

Opciones de VACUUM:

• FULL: Compactar la tabla. Cuidado: esta operación bloquea la tabla, no es recomendada en producción.

• FREEZE: "Congelamiento". • ANALYZE: Analizar los datos para calcular estadísticas.

Para más información ver comandos VACUUM y ANALYZE.

2.2.11 HERRAMIENTA DE ESTADO DEL SERVIDOR.

La ventana Estado del Servidor mostrará los usuarios actualmente conectados, bloqueos, transacciones preparadas y el archivo de bitácora (logs) del servidor de base de datos seleccionado.

Para utilizarla, seleccionar el servidor en el Explorador de objetos, ir al menú Herramientas, Estado del Servidor). Indicado a continuación en la Fig. 20 Ver [4] Ver [3].

Fig. 20 Estado del Servidor Ver [4]

- 42 -

CAPÍTULO 3. OBJETOS DE POSTGRESQL.

3.1 ESQUEMAS El esquema en una base de datos se podría describir como un contenedor donde constan,

tablas, vistas, procedimientos, etc. El esquema por defecto se encuentra dentro de una base de datos, que a su vez está dentro de un servidor. Estas entidades se acomodan como cajas anidadas. El servidor es la caja más externa y el esquema la más interna.

El esquema de una base de datos describe la estructura de una base de datos. En una base de datos relacional como lo es Postgressql, el esquema define sus tablas, sus campos en cada tabla y las relaciones entre cada campo y cada tabla.

Generalmente en la práctica el término esquema de la base de datos se refiere al diseño físico de la base de datos.

Si bien el esquema contiene todo el diseño de la base de datos, de esta manera por esta razón todas las tablas deberían estar dentro de un esquema como ya se indicó la creación de las tablas anteriormente.

pgAdmin al crear la base de datos crea por defecto un esquema público (public) y dentro de este esquema público, el cual es un esquema estándar establecido por defecto se pudo crear las tablas para realizar el ejemplo, entonces de esta manera es necesario que todo en la base este dentro de un Esquema.

Para ello dentro de la base de datos sistema universidad ubicar en el ítem Esquema clic derecho nuevo esquema el nombre para el esquema será universidad, o el que mejor se acomode para cada caso, el propietario postgres por defecto. En el ítem privilegios se establece los privilegios por usuarios para el esquema, por defecto tenemos el usuario estándar postgres, en la pestañaprivilegios por defecto se podría dar privilegios a las tablas como la modificación, la creación, etc.

También privilegios a las secuencias y las funciones como el privilegio de ejecución de una función etc. Presionar ok y estará creadoelesquema para poder trabajar dentro de él. Proceso de registro del Esquema detallado en la Fig.21 Ver [16].

- 43 -

Fig. 21 Registro para Crear un Nuevo Esquema Ver [3]

3.2 FUNCIONES Una función es un bloque SQL nombrado que retorna un único valor. Al menos uno de los

comandos en el cuerpo de ejecución debe ser un RETURN.

Para ejecutarla ubicar la solapa “Functions” damos clic derecho, y seleccionamos “Nueva Función”.

A continuación se presenta un ejemplo del código de una función sencilla, mediante esta

función se pretende conocer en qué curso y facultad esta cada alumno de nuestra base de

datos.

Para empezar a crear la función en el ítem propiedades, iniciar introduciendo un nombre

para la función, para este caso se va a llamar Función Curso_Facultad, el propietario por

defecto postgres. En el ítem definición seleccionar el lenguaje con el cual se va crear la

función seleccionamos plpgsql,17 el lenguaje para ejecutar sentencias SQL.

En la opción de parámetros establecemos los parámetros de entrada para el ingreso de

datos o para la consulta de datos, IN – OUT, etc. para el caso del ejemplo seleccionar OUT ya

17Plpgsql.- Es un lenguaje imperativo provisto por el gestor de base de datos PostgreSQL, el cual

permite ejecutar comandos SQL mediante un lenguaje de sentencias imperativas y uso de funciones, dando mucho mas control automático que las sentencias SQL básicas.

- 44 -

que solamente se va ejecutar una consulta a nuestra base de datos, es decir solo una consulta a

los registros de una tabla. Ver [9].

En el ítem código, en esta sección escribir el código de la función, este código dependerá

de función que necesita crear, no se va profundizar en este tema porque existen muchas

funciones que las pueden realizar, esto dependerá de cada usuario de sus necesidades y de su

conocimiento.

Luego de haber creado ya el cuerpo de la función procedemos a dar el ok respectivo sino

existen errores la función se crea, caso contrario pgAdmin dará error y en qué línea se

cometió el error para su respectiva corrección.

Ahora bien una vez completa el proceso y creada la función, nos vamos a generador de

consultas que fue explicado en el capítuloanterior, para ejecutar la función creamos un

“select” seguido del nombre de la función y los parámetros. Ejemplo en la Fig.22.

Fig. 22 Ejemplo de Función [Fuente del Autor]

- 45 -

3.3 TRIGGERS Un trigger o disparador es un procedimiento que se ejecuta cuando se cumple una

condición establecida al realizar una operación.

Un disparador no es otra cosa que una acción definida en una tabla de la base de datos y ejecutada automáticamente por una función programada por un usuario. Esta acción se activará, según la defina el usuario, cuando se realice un INSERT, un UPDATE o un DELETE en dicha tabla.

Una de las funcionalidades disponibles en PostgreSQL son los disparadores (triggers). En este punto vamos a conocer más de su funcionalidad y cómo se podría empezar a utilizarlos.

Un disparador se puede definir de la siguiente manera:

• Para que ocurra ANTES de cualquier INSERT, UPDATEo DELETE. • Para que ocurra DESPUES de cualquier INSERT, UPDATEo DELETE. • Para que se ejecute una sola vez por comando SQL (statement-leveltrigger). • Para que se ejecute por cada línea afectada por un comando SQL (row-

leveltrigger)Ver [9].

3.4 VISTAS Las vistas tienen la misma estructura que una tabla: filas y columnas. La única diferencia

es que solo se almacena de ella la definición, no los datos. Los datos que se recuperan mediante una consulta a una vista se presentaran igual que los de una tabla.

Al igual que sucede con una tabla, se puede insertar, actualizar, borrar y seleccionar datos de una vista.

Una vista se especifica atreves de una expresión de consulta (una sentencia SELECT) que la calcula o puede realizarse sobre una o más tablas.

La vista es una tabla virtual, que es el resultado de una consulta SQL en las que se carga los datos en el momento de ser llamada. La vista puede tener datos de una tabla o de la agrupación de varias tablas. El objetivo de estas vistas es agilizar el proceso de consulta a una base de datosVer [6].

Para crear la vista para el ejemplo planteado, establecer el nombre para la vista para este caso “Vista_Alumno” el propietario por defecto como lo se ha venido mencionado será el de postgres. En el ítem definición de la vista se crea una consulta sencilla en el cual visualizaremos la cedula y los nombres del alumno algo sencillo, como para explicar cómo se crea la vista. Si todo es normal y sin errores podremos dar ok. Y luego ejecutar la vista. Mirar Fig. 24.

- 46 -

Fig. 23 Ejemplo de Vista [Fuente del Autor]

3.5 ESPACIO DE TABLAS Un tablespace es una unidad lógica de almacenamiento dentro de una base de datos. Es un

puente entre el sistema de ficheros del sistema operativo y la base de datos.

Antes de iniciar el proceso de crear una base de datos debemos de crear el tablespace donde almacenaremos los datos de la misma, siempre es recomendable crear propios tablespace y no los que PostgreSQL tiene por defecto.

Ingresamos los siguientes campos:

• Nombre del tablespace: Por lo general con un prefijo que identificara al tablesapace. • Localización: ubicación de los datos del tablespace. • Propietario: Seleccionamos un nombre de propietario para este caso puede ser el

mismo que el nombre Ver [14].

Pulsamos “ok” para crear el tablespace. Como se puede observar en la Fig. 25.

- 47 -

Fig. 24 Registro Para Crear el Espacio de Tabla [Fuente del Autor]

3.6 GRUPOS Y ROLES En postgreSQL se encuentra dos tipos de roles, el rol de login y el rol de grupo. El primero

identifica a un usuario y el segundo a un grupo. La única diferencia significativa entre ambos es que el primero puede conectarse a la base de datos mientras que el segundo no puede. El segundo tipo de rol, el de grupo, lo emplearemos para agrupar los roles de login que comparten los mismos privilegios.

En cuanto a los privilegios, se pueden diferenciar entre los privilegios en el esquema y los privilegios en los objetos del esquema (tablas, funciones, etc.).

Los privilegios en un esquema son de uso (puedo acceder al esquema) y creación (puedo crear objetos en el esquema), mientras que los privilegios en los objetos son los típicos SELECT, UPDATE, INSERT, etc.

En primer lugar conectar a la base de datos del servidor (localhost) con el DBA que es el único rol que existe por ahora. Tras conectarnos, pulsaremos con el botón derecho de nuestro ratón en “Roles de grupo” y seleccionamos “Nuevo Rol de Grupo”. Aparecerá un diálogo como el de la figura en el que pondremos los datos de los nuevos roles de grupo Ver [1].

Para el caso del ejemplo planteado crear el rol de grupo con el nombre “Grupo_Universidad” en el ítem definición se podrá establecer una contraseña e indicar la caducidad de la cuenta, así como también el límite de conexión, ahora en la opción de Privilegios del Rol.

- 48 -

Establecer los permisos que puede tener este grupo, como por ejemplo super-usuario, heredar permisos de los roles padres, etc., dependerá de cada caso. En la membresía del Rol, todos los usuarios pertenecientes al rol. Ok para continuar. Proceso indicado en la Fig.26.

Fig. 25 Nuevo Rol de Grupo [Fuente del Autor]

3.7 USUARIOS Y ROLES Hasta el momento casi para todos los casos hemos empleado el usuario DBA por defecto

(postgres) como usuario para realizar todas las operaciones en la bases de datos, en el caso del ejemplo.

Sin embargo, esto no es recomendable ya que este usuario tiene privilegios totales sobre cualquier objeto de la base de datos. En una organización, lo más habitual es que exista un conjunto de usuarios que tiene ciertos privilegios sobre ciertos objetos de la base de datos.

En este temase trata de cómo añadir roles (usuarios o grupos de usuarios) y otorgar privilegios a dichos roles Ver [1].

Una vez creados los grupos, se procede a crear los roles de login “editorX” y “consultorX” que pertenecerán al grupo “editores” y consultores respectivamente. Para crear los roles de login, pulsar con el botón derecho en “Roles de Login - Crear Nuevo Rol de Login”. Aparecerá un cuadro de diálogo igual, aquí es importante destacar que se debe marcar la casilla Hereda permisos de los roles padre, con esto todos los roles que pertenezcan a este tendrán los mismos privilegios. Tras indicar el nombre del rol situar en la pestaña “Membresía del Rol” donde se podrá indicar que el usuario es miembro del grupo correspondiente. Como se indica en la Fig. 27 y 28.RespectivamenteVer [2].

- 49 -

Fig. 26 Nuevo Rol de Usuario [Fuente del Autor]

Fig. 27 Privilegios del Rol de Usuario [Fuente del Autor]

- 50 -

3.8 DIVERSAS CONFIGURACIÓNES

3.8.1 CONFIGURAR POSTGRESQL PARA PERMITIR CONEXIONES EXTERNAS REMOTAS

Para permitir conexiones externas desde equipos de la LAN o desde Internet al servidor con PostgreSQL.

Es necesario tomar en cuenta lo detallado a continuación.

Editar el fichero pg_hba.conf que está ubicado en la carpeta donde se encuentra alojado los datos de las bases de datos, en nuestro caso en Ver [3]

E:\ProgramFiles\PostgreSQL\9.1\data

Editar este fichero pg_hba.conf con cualquier editor de texto plano sin formato, como por ejemplo Notepad. Se puede Observar en la Fig. 29.

Fig. 28 Editar Fichero [Fuente del Autor]

Añadir una línea a este fichero con el siguiente formato:

host all all IP/máscara md5

Por ejemplo para permitir que el PC con IP 192.168.1.2 tenga acceso al servidor de PostgreSQL introducir en la línea:

host all all 192.168.1.2/32 md5

Guardar los cambios en el fichero, se aplicarán directamente (no es necesario reiniciar el servicio de PostgreSQL). Observar la Fig.30Ver [3].

- 51 -

Fig. 29 Añadir Dirección IP [Fuente del Autor]

Si se cuenta con un firewall en el equipo con PostgreSQL, que está diseñado para bloquear el acceso no autorizado, permitiendo al mismo tiempo comunicaciones autorizadas, como es el caso de Microsoft Windows x64, se deberá permitir las conexiones a través del puerto 5432 (o el elegido en el proceso de instalación de PostgreSQL). En el caso de Microsoft Windows x64 acceder al Panel de control, "Firewall de Windows", ingresar en "Configuración avanzada" Ver [3].

A continuación pulsar con el botón derecho del ratón sobre "Reglas de entrada", seleccionar "Nueva regla". Seleccionar "Puerto" y pulsar "Siguiente". Como está representado en la Fig. 30

Seleccionaremos "TCP" que es el protocolo de control de transmisión de datos y "Puertos locales específicos", los puertos que es una forma genérica de denominar una interfaz, a través de la cual los diferentes tipos de datos se pueden enviar y recibir.

Introducir "5432" (o el puerto elegido en la instalación de PostgreSQL). Como se encuentra representado en la Fig. 32.

Seleccionaremos "Permitir la conexión" y pulsaremos "Siguiente". “Permitir Conexión”. Detalle en la Fig. 32.

- 52 -

Fig. 30 Seleccionar Tipo de Regla [Fuente del Autor]

Fig. 31 Seleccionar Protocolo y Puertos [Fuente del Autor]

- 53 -

Fig. 32 Especificar Acción [Fuente del Autor]

Marcar a continuación el "Dominio", "Privado" y "Público" y pulsaremos "Siguiente". Todo esto representado en la Fig. 33:

Fig. 33 Especificar el Perfil [Fuente del Autor]

- 54 -

Introducir un nombre para la regla, por ejemplo "PostgreSQL" y una descripción, por ejemplo "Acceso externo a PostgreSQL", pulsar "Finalizar": Observar la Fig. 34.

Fig. 34 Especificar Nombre de la Regla [Fuente del Autor]

De esta forma se contara con el acceso desde los equipos externos que sean necesarios al servidor de PostgreSQL.

Por supuesto, si pretende permitir conexiones desde Internet al servidor PostgreSQL se deberá configurar el router y abrir (mapear) el puerto correspondiente a la IP del servidorVer [3]

- 55 -

CONCLUSIONES Y RECOMENDACIONES

CONCLUSIONES

Se puede concluir lo siguiente:

1. Se menciona como primera conclusión que se logró conocer las opciones. el manejo y funcionamiento de pgAdmin III para administrar PostgreSQL, si bien se lo realizo en un nivel intermedio, se puede decir que mediante el presente trabajo investigativo se puede realizartodas las bases de datos en PostgreSQl,

2. Del estudio realizado en este tema de investigación, se logró conocer a la herramienta pgAdmin III con sus propuestas teórico – práctico y el motor de bases de datos PostgresSQL, permitiendo descubrir sus respectivas ventajas y desventajas que deben ser tomadas en cuenta al momento de ser utilizadas.

3. La base de datos PostgreSQL, y la herramienta de interfaz gráfica pgAdmin III estudiada, son 'código de fuente abierta' serán siempre mucho mejor que el sistema 'código de fuente cerrada' por lo siguiente: Libres de licencias. Acceso a su Código Fuente. Mayor Seguridad y Menor amenazas de Virus.

4. Se realizó la instalación y configuración de pgAdmin III, lo que permitió conocer acerca de la funcionalidad e integración eficaz de la herramienta para el desarrollo de una base de datos.

5. pgAdmin III es una interfaz gráfica para manejo de PostdreSQL fácil de aprender y de fácil manejo. Aquellos administradores de bases de datos que han tenido experiencia con otros interfaces y manejadores de bases de datos podrán adaptarse rápidamente a su uso.

6. Ni la interfaz gráfica ni el gestor de bases de datos son totalmente perfectos. Mediante este trabajo investigativo podrá sacar sus propias conclusiones y a su vez compararlo con otras herramientas. Simplemente se trata de escoger el más conveniente en cada caso de acuerdo a las necesidades de la Empresa.

- 56 -

7. Los gestores de base de datos relacionales proporcionan poderosas herramientas de gestión de la información. A esto se une la ventaja de disponer de gestores de bases de datos libres y de código abierto, como en el caso de pgAdmin, en los que se puede garantizar el buen uso de nuestra información crítica.

8. PostgreSQL con su administrador grafico pgAdmin es la herramienta más apropiada en muchas ocasiones y más aún para nuestra base de datos relacional.

9. Después de haber realizado la investigación acerca del tema, existe mucha claridad acerca de los aspectos a considerar al momento de decidirse a utilizar un sistema de base de datos y de las ventajas y limitaciones que tiene este sistema.

10. Se concluye que en el presente trabajo se logró cumplir con los objetivos y los puntos a tratar acerca de este administrador, y se ha dejado claro cada uno de los temas y puntos que fueron realizados en el presente documento.

RECOMENDACIONES

1. Si bien pgAdmin facilita el manejo del motor de base de datos, es recomendable la utilización por su interfaz y facilidad de uso.

2. Se recomendable su uso yaposgtreSQL es diseñada para manejar una gran cantidad de datos, todo dependerá del problema a solucionar y a la manera en la que nos acoplemos al utilizar un sistema de base de datos.

3. pgAdmin y el motor de base de datos tiene una gran cantidad de opciones disponibles, se recomienda profundizar en este tema y adquirir más conocimiento ya que podrían ser de mucha utilidad.

4. Serecomendaría utilizar el entorno gráfico para tareas de administración, y al momento de dar solucionar a cualquier inconveniente de manera más fluida y rápida.

5. Es recomendable pgAdmin por su facilidad al momento de realizar cualquier configuración.

6. Realizar todos los ejercicios que se mencionan en el documento de investigación para lograr una comprensión más profunda de la herramienta.

7. Se recomienda realizar una base de datos nueva y generar cada punto tratado en el tema de investigación, realizarlo paso a paso para ampliar nuestro conocimiento.

8. Ya que se ha demostrado que pgAdmin III es una herramienta eficaz, se recomienda su uso para generar sus bases de datos en PostgreSQL dentro del campo de la producción y desarrollo en una empresa.

9. La versión de pgAdmin que se ha utilizado durante la redacción de este trabajo de investigación y en los ejemplos planteados es la 9,2, siempre es recomendable mantener actualizado el pgAdmin III, revisar siempre la última versión en la página.

10. Es recomendable el mantenimiento rutinario de la base de datos, para ello hay una serie de actividades que el administrador de pgAdmin III debe tener presente constantemente y deberá realizar periódicamente.

- 57 -

- 58 -

REFERENCIAS BIBLIOGRÁFICAS

2009, T. P. (s.f.). Data Bases Roles & Privileges. Recuperado el 20 de 02 de 2011, de http://www.postgresql.org/docs/8.4/intercative/user_manag.html

2011, T. P. (s.f.). PostgreSQL Featured Users. Recuperado el 08 de 12 de 2011, de http://www.postgresql.org/about/users

Alonsojpd. (s.f.). AjpdSoft. Recuperado el 09 de 02 de 2012, de Instalar y Administrar PostreSQL en Windows 7: http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=489

Arpug. (s.f.). Arpug Grupo de Usuarios Postgrsql de Argentina . Recuperado el 08 de 02 de 2012, de http://www.arpug.com.ar/

Commons, C. (s.f.). Data Prix. Recuperado el 08 de 02 de 2012, de http://www.dataprix.com/

Docs, I. M. (s.f.). Vistas. Obtenido de Tutorial de PostgreSQL : http://www.introsmedia.tuxfamily.org/pg-tutorial/views.html

Eras, L. A. (2012). Instalacion y Administracion de PostgreSQL. En Gestion y Diseno de Base de Datos. Universidad Nacional de Loja.

Group, P. G. (s.f.). PostgreSQL License. Recuperado el 08 de 02 de 2012, de http://www.postgresql.org/about/license/

Herrera, A. (14 de 11 de 2004). Funciones y Triggers. Obtenido de Funciones y Triggers: http://www.alvherre.cl/postgresql/charlas/03-funciones.pdf

Martinez, R. (s.f.). PosgreSQL-es. Recuperado el 09 de 10 de 2012, de Portal en espanol sobre postgresql : http://www.postgresql.org.es/

Momjian, B. (Addison-Wesley Publisher 2000). PostgreSQL: Introduction and Concepts. Recuperado el 30 de 11 de 2012, de http://www.postgresql.org/files/documentation/books/aw_pgsql/node3.html

pgAdmin. (s.f.). pgAdmin. Recuperado el 08 de 02 de 2012, de http://www.pgadmin.org/

PostgreSQL. (s.f.). www.postgresql.org.es. Recuperado el 12 de 07 de 2012, de http://www.postgresql.org.es

Tablespace. (s.f.). Recuperado el 03 de 02 de 2012, de Tablespace: http://ora.u400.com/dll/create%20tablespace.html

Wikipedia. (s.f.). Wikipedia - PostgreSQL. Recuperado el 09 de 10 de 2011, de Wikipedia - PostgreSQL: http://es.wikipedia.org/wiki/PostgreSQL

Wikipedia. (s.f.). Wikipedia Base de Datos. Recuperado el 10 de 09 de 2011, de http://es.wikipedia.org/wiki/Base_de_datos

ANEXO A

ANTEPROYECTO PGADMIN III: ADMINISTRADOR DE BASE DE DATOS OPEN SOURCE POSTGRESQL

DATOS INFORMATIVOS.

Tema.

2.1.1. Tema General

ADMINISTRADORES DE BASE DE DATOS

2.1.2. Tema Específico.

PGADMIN III: ADMINISTRADOR DE BASE DE DATOS OPEN SOURCE POSTGRESQL

Universidad.

Universidad Católica de Cuenca – Unidad Académica de Ingeniería de Sistemas, Eléctrica y Electrónica – Facultad de Ingeniería de Sistemas.

Investigador.

Tnlg. Anl. Fredy Marcelo Padrón Ortiz.

Director.

Ing. Isael Sañay Sañay.

Lugar.

Universidad Católica de Cuenca.

Fecha.

06 de Octubre del 2011.

- 60 -

LUGARES DE CONSULTA.

SITIOS WEB.

• http://www.postgresql.org.es • http://www.dataprix.com/. • http://wiki.postgresql.org/wiki/Community_Guide_to_PostgreSQL_GUI_Tools/es • http://www.arpug.com.ar/trac/wiki/PgAdmin?format=txt • http://es.wikipedia.org/w/index.php?title=PostgreSQL

JUSTIFICACIÓN Y PROPUESTA.

ANÁLISIS DE LA SITUACIÓN ACTUAL.

Para las empresas y para los usuarios en general es evidente cuán importante es hoy en día la utilización de un gestor de base de datos, el cual nos brinde confianza al momento de presentar nuestra información. En los últimos años hemos tenido un creciente avance en la utilización de los diferentes gestores de base de datos. Por esto es importante conocer a uno de los administradores de base de datos libre con más prioridad como es PostgreSQL y su administrador con interfaz gráfica como lo es pgAdmin III.

PROPUESTA.

La investigación es importante metodológicamente, porque se propone un estudio de uno de los más importantes administradores “pgAdmin III” para base de datos Open Source Postgresql. A través de pgAdmin III se logrará conectarse, facilitar la gestión de Postgresql de manera remota y de manera local, mediante un entorno de escritorio visual. Permitir conocer las tareas de mantenimiento de las base de datos como son los backups y restauraciones y vacuum. Conociendo el entorno desde el que se realiza consultas y ver alfanuméricamente los datos.

OBJETIVOS.

Objetivo General.

Analizar pgAdmin III como administrador de Base de Datos PostgreSQL

Objetivos Específicos.

• Adquirir conocimiento acerca de la herramienta pgAdmin III. • Ilustrar al usuario en temas que se refiere al Funcionamiento, Tecnología, Características

de “pgAdmin III”, para su uso eficaz. • Dar a conocer este tipo de administradores open source de la base de datos más avanzada

PostgreSQL a los usuarios.

- 61 -

ALCANCE Y LIMITACIONES.

Alcances.

• Facilitar suficiente Información para cualquier persona que desee incursionar en “pgAdmin III”.

• Formar a los futuros usuarios en el correcto manejo de pgAdmin III como gestor de PosgreSQL.

• Dar a conocer pgAdmin III en el campo investigativo, dentro de los principales administradores de base de datos PostgreSQL.

Limitaciones.

Al ser pgAdmin III un administrador gestor de base de datos PostgresSQL. Se limita a

la investigación de la forma de uso del mismo en empresas y usuarios en general.

MARCO REFERENCIAL Y CONCEPTUAL.

Marco Referencial.

Existen algunos administradores que nos ofrecen variadas características y entre estos tenemos:

PgAccess

PgAccess es una interface gráfica para el gestor de bases de datos PostgreSQL escrito por Constantin Teodorescu en el lenguaje Tcl/Tk. Permite al usuario interactuar con PostgreSQL de una manera similar a muchas aplicaciones de bases de datos para PC, con menús de opciones y diversas herramientas gráficas. Esto significa que el usuario puede evitar la línea de comandos para la mayoría de las tareas. PgAccess no cambia el modo de actuar de postgreSQL, sólo hace más fácil su uso para aquellos que estén habituados a interfaces gráficas.

PhpPgAdmin

GphpPgAdmin es una aplicación web, escrita en PHP, para administrar bases de datos PostgreSQL.

PhpPgAdmin es una aplicación web que provee una manera conveniente a los usuarios para crear bases de datos, tablas, alterarlas y consultar sus datos usando el lenguaje estándar SQL.

PhpPgAdmin estuvo basado en phpMyAdmin, pero hoy día ya no comparte código con él; incluso provee las mismas funcionalidades y más a los usuarios del servidor de base de datos PostgreSQL.

Database Master

Master Database es un moderno, potente, intuitiva y fácil de usar MongoDB, Oracle, IBM DB2, IBM Informix, Ingres, MS SQL Server, MySQL, PostgreSQL, Firebird, SQLite,

- 62 -

EffiProz aplicación cliente con una interfaz coherente que simplifica la gestión, la consulta, edición, visualización, el diseño y los sistemas de información y el esquema de base de datos relacional libre. Usted puede conectar cualquier sistema de base de datos a través de ODBC y OLEDB conexiones, o puede trabajar directamente con MS Access, MS FoxPro base de datos, dBASE y XML archivos. Utilizando la base de datos principal, puede ejecutar SQL, LINQ, las consultas de JSON o puede crear, editar y eliminar todos los objetos de base de datos como tablas, vistas, procedimientos, columnas, índices, las colecciones y los factores desencadenantes. Puede ejecutar consultas y scripts SQL, ver y editar los datos de la tabla incluyendo BLOBs (imagen, texto o cualquier archivo), representan las tablas y sus relaciones como ER (Entidad Relación) diagrama. LINQ / SQL / JSON Editor de consultas de base de datos master ofrece una potente e intuitiva SQL, LINQ y editor JSON consulta.

Psql.

Psql es el cliente interactivo de línea de comandos de PostgreSQL.

Este programa nos permite realizar las tareas más comunes como ingresar, ejecutar un query y ver los resultados obtenidos, pero además incluye una serie de características muy completas en cuanto a la integración con scripts, que nos será de mucha utilidad para automatizar tareas repetitivas o periódicas.

Marco Conceptual.

PostgreSQL es un sistema de gestión de base de datos relacional orientada a objetos y libre, publicado bajo la licencia BSD. Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa y/o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyada por organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group)

PgAdmin III es una aplicación de ventanas que permite conectarse y gestionar una base de datos PostgreSQL. En modo remoto y local. Desde pgAdmin III se pueden establecer varias conexiones con distintos servidores PostgreSQL, se pueden crear nuevas instancias de bases de datos, roles de usuarios, esquemas para organizar los datos, crear tablas, vistas, índices, procedimientos y demás funciones.

Permite realizar tareas de mantenimiento de la base de datos como backups y restauraciones y vacuum. Dispone desde un entorno desde el que se realiza consultas y ver alfanuméricamente los datos.

Características:

• Interfaz administrativa gráfica • Herramienta de consulta SQL (con un EXPLAIN gráfico) • Editor de código procedural • Agente de planificación SQL/shell/batch • Administración de Slony-I

- 63 -

TEMARIO.

INTRODUCCIÓN.

CAPITULO 1.

1.1 ¿Qué es? 1.1.1 Historia 1.1.2 Características 1.1.3 Condiciones de Uso de pgAdmin III 1.1.4 Acerca de pgAdmin III 1.1.5 Requerimientos de Sistema. 1.1.6 Instalación de pgAdmin III

CAPITULO 2.

2.1 Ejecución de pgAdmin III 2.2 Funcionalidad de la Herramienta

Agregar Servidor

Crear una base de datos.

2.2.3 Agregar una tabla

2.2.4 Herramienta de edición de datos

2.2.5 Herramienta de Consulta SQL

2.2.6 Constructor Gráfico de Consultas

2.2.7 Herramienta de Exportación

2.2.8 Herramienta de Resguardo

2.2.9 Herramienta de Restauración

2.2.10 Herramienta de Mantenimiento

2.2.11 Herramienta de Estado del Servidor

CAPITULO 3

3.1 Esquemas

3.2 Funciones

3.3 Triggers

3.4 Vistas

3.5 Espacio de Tablas

3.6 Grupos y Roles

3.7 Usuarios y Roles

3.8 Diversas Configuraciones

- 64 -

CAPITULO 4.

4.1 Conclusiones

4.2 Recomendaciones

BIBLIOGRAFÍA

ANEXOS.

ESTRATEGIAS METODOLÓGICAS.

Etapa de

investigación

Métodos Técnicas Resultados

Empíricos Teóricos Matemáticos.

ANÁLISIS

DE LA

SITUACIÓN

ACTUAL

Analítico –

sintético.

Revisión por Internet

Bases teóricas de la Investigación.

PROPUESTA DE SOLUCIÓN

Histórico- Lógico

Revisión Documental

Recolección de

Información

Analítico –

sintético.

Hipotético – Deductivo

Observación

Conocer la situación actual de la utilización de pgAdmin III

- 65 -

MARCO REFERENCIAL

Y CONCEPTUAL

Analítico – sintético

Sistémico

Propuesta fundamentada Teóricamente.

INSTRUMENTOS.

Las Herramientas que se utilizarán en el Desarrollo de la Investigación son:

• El Internet, constituye la fuente y base fundamental de donde se extraerá la Información requerida.

• La herramienta pgAdmin la misma que nos ofrecerá soporte Técnico para el desarrollo del presente proyecto.

RECURSOS.

Recursos Humanos.

• Catedráticos del Plantel.

Recursos Tecnológicos.

Uno de los Recursos Tecnológicos importantes es la Red de Redes (el Internet), la cual ofrece la mayor parte de la Información acerca de pgAdmin como herramienta como administradora de PostgreSQL.

Recursos Materiales.

• Computadora portátil • Instalador de pgAdmin III • Instalador de Postgresql • Útiles de oficina • Internet

- 66 -

Recursos Económicos.

Para la realización del Presente Trabajo se destina los siguientes rubros:

Detalle Rubro

Mano de Obra

Equipo Portátil

Útiles de Oficina

Modem USB Movistar

Consumo de internet prepago

Impresiones y Empastado

TOTAL

$ 200

$ 600

$ 40

$ 100

$ 35

$ 28

$ 1003

BIBLIOGRAFÍA.

SITIOS WEB

• http://www.postgresql.org.es • http://www.pgadmin.org/ • http://www.dataprix.com/. • http://wiki.postgresql.org/wiki/Community_Guide_to_PostgreSQL_GUI_Tools/es • http://www.arpug.com.ar/trac/wiki/PgAdmin?format=txt • http://es.wikipedia.org/w/index.php?title=PostgreSQL • http://www.pgaccess.org • http://sourceforge.net/projects/phppgadmin

- 67 -

CRONOGRAMA DE DESARROLLO DEL TRABAJO DE INVESTIGACION.

CAPITULOS NOVIEMBRE DICIEMBRE1‐8 9‐15 16‐22 23‐30 1‐14 15‐21

FECHACAPITULO 1

CAPITULO 2

CAPITULO 3

CAPITULO 4

POLITICAS

Fecha Desarrollo Fecha Revisión Fecha Entrega 

GLOSARIO

C++.- Lenguaje de Programación, diseñados a mediados de los años 80. La intención de su creación fue el extender el exitoso lenguaje de programación C.

WxWidgets.- Son bibliotecas multiplataforma y libres, para el desarrollo de interfaces graficas programadas en el lenguaje C++.

Slony-I.-Herramienta para replicar base de datos Postgresql.

SSL.- Secure Sockets Layer, son protocolos criptográficos que proporcionan comunicaciones seguras por una red, comúnmente Internet.

BSD.- Berkeley Software Distribution. Es una licencia de software libre permisiva como la OpenSSL, esta licencia tiene menos restricciones en comparación con otras como la GPL estando muy cercana al dominio público. La licencia BSD al contrario que la GPL permite el uso del código fuente en software no libre.

Ret Hat.- Es una distribución del Sistema Operativo GNU/Linux, Ret Hat es famoso en todo el mundo por los diferentes esfuerzos orientados apoyar el movimiento de software libre. No solo trabajan en el desarrollo de una de las distribuciones más populares de Linux, sino también en la comercialización de los diferentes productos y servicios basados en software de código abierto.

Betrieve.- Es una Base de Datos transaccional basado en el método de acceso secuencial indexado, que es una manera de almacenar los datos para la recuperación rápida

BizGres.- Proyecto diseñado a mediados de los años 2005 para la Inteligencia de Negocios y Data Warehouse.

Relase Candidate.- Comprende un producto final dentro del desarrollo de software, preparado para publicarse como versión definitiva a menos que aparezcan errores que lo impidan.

ODBC.- Es un Standard de acceso a las bases de datos desarrollado por SQL Access Group en 1992, el Objetivo de ODBC es posible el acceder a cualquier dato desde cualquier aplicación, sin importar que sistema de gestión de base de datos almacene los datos.

libqp.- Son bibliotecas multiplataforma y libres, para el desarrollo de interfaces graficas programadas en el lenguaje C++. Se podría decir también que libpq es la interfaz para los

- 69 -

programadores de aplicaciones en C para Postgresql, es un conjunto de bibliotecas que permiten a los programas cliente trasladar consultas al servidor de postgresql y recibir el resultado de estas consultas.

PhppgAdmin.- Es una aplicación web, escrita en PHP, para administrar base de datos Postgresql, esta aplicación provee una marca conveniente a los usuarios para crear base de datos, tablas, alterarlas y consultar sus datos usando el lenguaje Standard SQL.

UTF8.- (8-bit Unicode Transformation Format) es un formato de codificación de caracteres Unicode e ISO 10646 utilizando símbolos de longitud variable.

LATIN1.- Es una norma de la ISO, que define la codificación del alfabeto numérico.

WIN1252.- Codificación utilizada para Windows.

Tipos de Datos.- Postgresql posee un conjunto de tipos de datos nativos disponibles para los usuarios, a continuación detallados algunos, considerados los más importantes.

Integer = Entero con signo de cuatro bytes.

Carácter varying = Cadena de carácter de longitud variable.

Text = Cadena de carácter de longitud variable (memos).

Doublé = Numérico de punto flotante de doble precisión (8 bytes).

Numeric = Numérico exacto de precisión seleccionable.

Character = Cadena de carácter de longitud fija.

Boolean = Booleano lógico (true/false).