PostgreSQL

Los Sistemas de Gestión de bases de datos relacionales MySQL y PostgreSQL funcionan sobre servidores Linux. Sin embargo, al tratarse de servidores de datos accesibles mediante TCP/IP que residen en máquinas dedicadas, pueden utilizarse indistintamente desde clientes Linux o Windows, por lo que podrá hacer uso de dichas bases de datos desde productos de alojamiento bajo cualquiera de los dos sistemas operativos.

  • Desde aplicaciones en Perl o PHP se puede acceder a las bases de datos utilizando los controladores adecuados que están incluidos en nuestras instalaciones de dichos sistemas de scripting.
  • Desde aplicaciones ASP puede crearse un DSN que apunte a la base de datos.

En ambos casos, si desea acceder a su base de datos a través de Internet desde su propio ordenador con sistema operativo Windows, puede hacerlo:

  • Utilizando Access:
  • Para ello deberá instalar en su propio ordenador el controlador ODBC de la base de datos que utilice (MySQL o PostgreSQL) y crear un DSN en su ordenador que apunte a la base de datos en nuestro servidor.
  • De esa forma podrá abrir en Access una base de datos del tipo “ODBC Databases” que en esencia es una “base de datos apuntadora” que le permitirá utilizar el interfaz de Access para acceder a las tablas del servidor MySQL o PostgreSQL.
  • También existe la posibilidad de instalar programas de gestión de las bases de datos MySQL y PostgreSQL que son aplicaciones Windows con interfaces gráficos. Los hay gratuitos o comerciales y son el equivalente a la consola de SQL Server: permiten gestionar las bases de datos, los usuarios, crear tablas, lanzar consultas, etc.

Bases de datos PostgreSQL

PostgreSQL es sin duda el Sistema de Gestión de Bases de Datos de código abierto (gratuito y con código fuente disponible) más avanzado del mundo. Posee las características de los más potentes sistemas comerciales como Oracle o SQL Server. Entre ellas podemos destacar:

  • Completo soporte para transacciones. Una transacción está formada por un conjunto de acciones de forma que o se ejecutan todas ellas o bien ninguna. Utilizando transacciones aseguramos la consistencia de los datos.
  • Soporte completo ACID (Atomicity Consistency Isolation Durability):
    • Es posible definir operaciones atómicas, es decir, formadas por comandos que se ejecutan todos o ninguno.
    • Consistencia, que garantiza que la base de datos nunca se queda en un estado intermedio de una transacción (con parte de los comandos ejecutados y parte no).
    • Aislamiento, que mantiene separadas las transacciones de usuarios distintos hasta que éstas han terminado.
    • Durabilidad, garantiza que el servidor de datos guarda las actualizaciones pendientes de forma tal que pueda recuperarse de una terminación brusca tal como desenchufar la máquina. Esta característica se implementa mediante el log de transacciones, que almacena todas las transacciones que aún no han sido lanzadas (commit).
  • Procedimientos almacenados. Código ejecutable que se almacena compilado en el servidor. Entre otras cosas, permite optimizar las aplicaciones evitando transferencias innecesarias a través de la red (aplicaciones con parte cliente y parte servidor). Los procedimientos almacenados se pueden escribir con su propio lenguaje de programación (PL/pgSQL) o bien en Perl o TCL.
  • Soporte para construcciones SQL del tipo subselect.
  • Triggers. Procedimientos almacenados que se lanzan automáticamente bajo determinadas circunstancias como actualizaciones de campos. Permite establecer reglas de integridad y consistencia a nivel del servidor de base de datos.
  • Vistas. Conjunto de registros resultado de una consulta que se comportan como una tabla física para facilitar su manejo.
  • Orientación a objetos con herencia de tablas.

Para hacerse una idea del prestigio y la solvencia de este sistema de bases de datos, baste decir que la empresa Afilias que gestiona los dominios .info y la parte técnica de los .org utiliza la versión estándar de PostgreSQL para almacenar todos los dominios .info y .org registrados a nivel mundial.

Gestión de bases de datos PostgreSQL

Las bases de datos de PostgreSQL no son archivos que usted pueda subir a su sitio web como los de Access, sino que residen en un servidor de datos separado. Por ello debe utilizar algún programa cliente que le permita conectarse al servidor de datos con el fin de crear las tablas, subir datos, editar registros, etc. Aunque PostgreSQL está en un servidor Linux, usted puede gestionar sus bases de datos desde ordenadores con cualquier sistema operativo utilizando las aplicaciones adecuadas.

Existen varios métodos para gestionar sus bases de datos PostgreSQL:

PhpPgAdmin

PhpPgAdmin es una aplicación realizada en PHP que le permite administrar sus bases de datos PostgreSQL a través de Internet utilizando páginas web. En arsys.es hemos adaptado esta aplicación para el uso de nuestros servidores PostgreSQL, de forma que está disponible para todos nuestros clientes.

Para utilizar esta aplicación debe conectarse a la dirección web especificada en el panel de control de su producto y utilizar el login y contraseña de la base de datos que desee administrar.

PhpPgAdmin tiene entre otras las siguientes funcionalidades:

  • Permite crear tablas.
  • En cada tabla puede crear y modificar campos, especificando su tipo de datos, valores por defecto, etc.
  • Se pueden lanzar sentencias SQL contra la base de datos.
  • Se pueden obtener volcados de la base de datos tanto de estructura como de datos.
  • Se pueden importar datos al servidor: enviar archivos con los datos de una tabla.

ODBC para PostgreSQL

Si su ordenador de trabajo utiliza un sistema operativo Windows, podrá gestionar las tablas de sus bases de datos PostgreSQL utilizando cualquier programa Windows que utilice ODBC, por ejemplo Access. Para ello:

  1. Descargue el controlador ODBC para PostgreSQL disponible en el sitio web: http://www.postgresql.com/ (proyecto psqlodbc – PostgreSQL ODBC driver).
  2. Tras instalarlo en su ordenador de trabajo, podrá crear un DSN que apunte a la base de datos remota en nuestros servidores y utilizar Access para acceder a las tablas.

El menú “Abrir base de datos” de Access tiene la posibilidad de abrir una base de datos definida por ODBC. Si hacemos eso con el DSN creado con el controlador ODBC de PostgreSQL, nos encontraremos con que desde Access manejamos las tablas de las bases de datos PostgreSQL que están en el servidor. Esto es casi lo mismo que los proyectos de Access (archivos .adp) con SQL Server.

Clientes de terceras partes

Existen programas de terceras partes, algunos gratuitos y otros comerciales, del estilo a la “consola de administración” de SQL Server, que le permiten gestionar por completo su servidor PostgreSQL creando y modificando tablas, exportando o importando datos, creando procedimientos almacenados, triggers, etc. Todo ello mediante interfaces gráficos intuitivos y fáciles de usar.

Dada la variedad de software a elegir, le recomendamos que investigue por su cuenta y pruebe los distintos programas disponibles. Por nuestra parte destacamos los siguientes programas de administración:

  • PgAdmin. Gratuito, desarrollado por los creadores de la base de datos.
    Más información en http://www.pgadmin.org/.
  • PostgreSQL manager. Muy recomendable. Es un producto comercial aunque con un coste de licencia accesible.
    Más información en http://ems-hitech.com/pgmanager.

Acceso a bases de datos PostgreSQL desde páginas web

Como le hemos comentado, usted puede acceder a este sistema de bases de datos, tanto desde Planes de Alojamiento Web Windows (gracias a la instalación del ODBC para PostgreSQL) como Linux.

Por tanto, podrá realizar sus aplicativos web de acceso a bases de datos PostgreSQL desde scripts en Perl, páginas ASP, o PHP.

Compartir

Share on FacebookTweet about this on TwitterShare on LinkedInEmail this to someoneShare on Google+