Utilizamos cookies propias y de terceros. [Más información sobre las cookies].
Política de cookies
Proyecto AjpdSoft

· Inicio
· Buscar
· Contactar
· Cookies
· Descargas
· Foros
· Historia
· Nosotros
· Temas
· Top 10
· Trucos
· Tutoriales
· Wiki

PostgreSQL: Instalar y administrar PostgreSQL en Microsoft Windows 7
Bases de Datos


Explicamos cómo descargar e instalar el motor de base de datos gratuito PostgreSQL, os mostramos cómo instalarlo en el sistema operativo Microsoft Windows 7. Administramos PostgreSQL y creamos roles, tablespaces, bases de datos, etc.



 

PostgreSQL

PostgreSQL es un sistema de gestión de base de datos relacional (SGBDR) orientada a objetos y libre (gratuito) y de código abierto (open source), publicado bajo la licencia BSD. Como muchos otros proyectos open source, el desarrollo de PostgreSQL no es controlado por una sola empresa sino que está dirigido por una comunidad de desarrolladores y organizaciones comerciales las cuales trabajan en su desarrollo. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).

Algunas de las características de PostgreSQL:

  • Alta concurrencia: mediante un sistema denominado MVCC (Acceso concurrente multiversión) PostgreSQL permite que mientras un proceso escribe en una tabla, otros accedan a la misma tabla sin necesidad de bloqueos. Cada usuario obtiene una visión consistente de lo último a lo que se le hizo commit. Esta estrategia es superior al uso de bloqueos por tabla o por filas común en otras bases, eliminando la necesidad del uso de bloqueos explícitos.
  • Amplia variedad de tipos de datos nativos:
    • Números de precisión arbitraria.
    • Texto de largo ilimitado.
    • Figuras geométricas (con una variedad de funciones asociadas).
    • Direcciones IP (IPv4 e IPv6).
    • Bloques de direcciones estilo CIDR.
    • Direcciones MAC.
    • Arrays.
    • Además, los usuarios pueden crear sus propios tipos de datos, los que pueden ser por completo indexables gracias a la infraestructura GiST de PostgreSQL. Algunos ejemplos son los tipos de datos GIS creados por el proyecto PostGIS.
  • Claves ajenas (Llaves ajenas, Claves Foráneas ó Foreign Keys).
  • Disparadores (triggers): un disparador o trigger se define en una acción específica basada en algo ocurrente dentro de la base de datos. En PostgreSQL esto significa la ejecución de un procedimiento almacenado basado en una determinada acción sobre una tabla específica. Ahora todos los disparadores se definen por seis características:
    • El nombre del disparador o trigger.
    • El momento en que el disparador debe arrancar.
    • El evento del disparador deberá activarse sobre...
    • La tabla donde el disparador se activará.
    • La frecuencia de la ejecución.
    • La función que podría ser llamada.
  • Vistas (Views).
  • Integridad transaccional.
  • Herencia de tablas.
  • Tipos de datos y operaciones geométricas.
  • Soporte para transacciones distribuidas: PostgreSQL permite integrarse en un sistema distribuido formado por varios recursos (p.ej, una base de datos PostgreSQL, otra Oracle, una cola de mensajes IBM MQ JMS y un ERP SAP) gestionado por un servidor de aplicaciones donde el éxito ("commit") de la transacción goblal es el resultado del éxito de las transacciones locales..

 

Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Abriremos un navegador web y accederemos a la URL:

http://www.postgresql.org/download/windows

En nuestro caso descargaremos la versión aún no estable 9.0.0 RC1 para Windows de 32 bits (Win x86-32):

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Una vez descargado el archivo de instalación de PostgreSQL (postgresql-9.0.0-rc1-windows.exe de 45,5 MB) pulsaremos con el botón derecho del ratón sobre él y seleccionaremos "Ejecutar como administrador":

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Si tenemos activado el control de cuentas de usuario nos mostrará una advertencia con el texto "¿Desea permitir que este programa realice cambios en el equipo?", pulsaremos "Sí" para continuar con la instalación de PostgreSQL:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Se iniciará el asistente para instalar PostgreSQL, pulsaremos "Siguiente":

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Indicaremos la carpeta de instalación de PostgreSQL, donde se guardarán los ejecutables, librerías y ficheros de configuración de PostgreSQL:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Indicaremos también la carpeta donde se guardarán los datos por defecto de PostgreSQL:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Introduciremos la contraseña para el superusuario "postgres" que será con el que iniciemos sesión para administrar la base de datos:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Introduciremos el puerto de escucha para la conexión con el servidor PostgreSQL, por defecto el 5432:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Seleccionaremos la configuración regional:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Pulsaremos "Siguiente" para iniciar la instalación definitiva del servidor PostgreSQL en Microsoft Windows 7:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Se iniciará el asistente para instalar el motor de base de datos PostgreSQL, que creará las carpetas oportunas, copiará los ficheros necesarios y creará el servicio Windows para iniciar de forma automática el motor de base de datos:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Una vez finalizada la instalación el asistente nos dará la posibilidad de ejecutar Stack Builder, aplicación que nos permitirá instalar otros componentes y herramientas para PostgreSQL:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Si hemos marcado la opción de Stack Builder, se iniciará, seleccionaremos "PostgreSQL 9.0 on port 5432" y pulsaremos "Next":

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Seleccionaremos las aplicaciones, componentes y herramientas a instalar y pulsaremos "Next" (en nuestro caso cancelaremos Stack Builder pues no instalaremos más componentes):

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

El asistente para instalar el servodpr PostgreSQL habrá creado un servicio que estará iniciado y en tipo de inicio automático llamado "postgresql-9.0":

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Y habrá creado la carpeta en archivos de programa "PosgreSQL" con las subcarpetas:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Y la carpeta de datos:

AjpdSoft Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7

Con esto habremos convertido nuestro equipo Microsoft Windows 7 en un servidor de base de datos PostgreSQL.

Si queremos que los equipos de nuestra red tengan acceso al servidor PostgreSQL y tenemos algún cortafuegos (firewall) deberemos abrir el puerto 5432. Y si queremos que se tenga acceso desde Internet al servidor PostgreSQL deberemos redireccionar (mapear) el puerto 5432 en el router o cortafuegos de nuestra empresa.

 

Administración de PostgreSQL, creación de usuarios (roles), catálogos

Crear roles de login (usuarios) en PostgreSQL

Para el acceso a la administración del motor de base de datos PostgreSQL accederemos al botón "Iniciar" - "PostgreSQL 9.0" - "pgAdmin III":

AjpdSoft Administración de PostgreSQL, creación de usuarios (roles), catálogos

Desplegaremos "Server Groups", dentro desplegaremos "Servidores" y dentro de éste pulsaremos con el botón derecho del ratón sobre "PostgreSQL 9.0 (localhost:5432), en el menú emergente seleccionaremos "Conectar":

AjpdSoft Administración de PostgreSQL, creación de usuarios (roles), catálogos

Introduciremos la contraseña para el superusuario postgres (la contraseña introducida en la instalación):

AjpdSoft Administración de PostgreSQL, creación de usuarios (roles), catálogos

Si todo es correcto nos conectaremos al servidor PostgreSQL, desde pgAdmin podremos configurar y administrar el servidor de PostgreSQL:

AjpdSoft Administración de PostgreSQL, creación de usuarios (roles), catálogos

Para crear un rol de login pulsaremos con el botón derecho del ratón sobre "Roles de Login", seleccionaremos "Nueva Rol de Login":

AjpdSoft Administración de PostgreSQL, creación de usuarios (roles), catálogos

En la pestaña "Propiedades" introduciremos los siguientes datos:

  • Nombre del Rol: nombre del usuario, en nuestro caso "ajpdsoft".
  • Contraseña: contraseña para este usuario (rol).
  • La cuenta caduca: si queremso que la cuenta de usuario caduque en una fecha la estableceremos en este campo.

AjpdSoft Administración de PostgreSQL, creación de usuarios (roles), catálogos

En la pestaña "Privilegios de Rol" podremos indicar si este usuario será superusuario, si puede crear objetos de la base de datos y si puede crear roles:

AjpdSoft Administración de PostgreSQL, creación de usuarios (roles), catálogos

Pulsaremos "OK" en la ventana anterior para crear el rol de login.

El script SQL para crear un usuario (rol) en PostgreSQL, script que podremos ver en la pestaña "SQL", antes de pulsar en "OK" en la ventana anterior:

CREATE ROLE ajpdsoft
LOGIN ENCRYPTED PASSWORD 'md55f8e1f359c12dafag3h3hfjbxxxb857'
VALID UNTIL 'infinity';

 

Crear tablespace para guardar los datos de una base de datos en PostgreSQL

Antes de crear una base de datos, podemos crear el tablespace donde guardaremos los datos de la misma, si bien se pueden utilizar los tablespaces por defecto de PostgreSQL (pg_default y pg_global) es recomendable crear tablespaces separados. Para crear un tablespace accederemos a la administración pgAdmin, sobre "Tablespaces" pulsaremos con el botón derecho y seleccionaremos "Nuevo Tablespace":

AjpdSoft Crear tablespace para guardar los datos de una base de datos en PostgreSQL

En la pestaña "Propiedades" introduciremos los siguientes datos:

  • Nombre: nombre que identificará el tablespace, en nuestro caso "tb_ajpdsoft".
  • Locación: ubicación de los datos del tablespace, en nuestro caso:

C:datos_postgresqltb_ajpdsoft

  • Propietario: seleccionaremos el usuario creado anteriormente "ajpdsoft".

Pulsaremos "OK" para crear el tablespace:

AjpdSoft Crear tablespace para guardar los datos de una base de datos en PostgreSQL

Nota: la carpeta de destino de existir, de lo contrario mostrar un error como este:

---------------------------
pgAdmin III
---------------------------
Ha ocurrido un error:

ERROR: directory "C:/datos_postgresql/tb_ajpdsoft" does not exist
---------------------------
Aceptar
---------------------------

El script SQL que creará el tablespace en PostgreSQL (si lo hiciésemos sin el modo gráfico de pgAdmin

CREATE TABLESPACE tb_ajpdsoft
OWNER ajpdsoft
LOCATION E'C:datos_postgresql b_ajpdsoft';

Inicialmente, PostgreSQL creará una subcarpeta dentro de la carpeta indicada para el tablespace con un nombre como este: PG_9.0_201008051

 

Crear base de datos para guardar tablas y vistas en PostgreSQL

Para crear una nueva base de datos en PostgreSQL abriremos pgAdmin, pulsaremos con el botón derecho del ratón sobre "Bases de datos", seleccionaremos "Nueva Base de Datos":

AjpdSoft Crear base de datos para guardar tablas y vistas en PostgreSQL

En la pestaña "Propiedades" introduciremos los siguientes datos:

  • Nombre: nombre de la base de datos, en nuestro caso "bdajpdsoft".
  • Propietario: seleccionaremos el usuario creado anteriormente "ajpdsoft".
  • Codificado: seleccionaremos UTF8.
  • Tablespace: seleccionaremos el tablespace creado anteriormente "tb_ajpdsoft".
  • Colación: seleccionaremos "Spanish_Spain.1252".
  • Tipo carácter: seleccionaremos "Spanish_Spain.1252".

Pulsaremos "OK" para crear la base de datos:

AjpdSoft Crear base de datos para guardar tablas y vistas en PostgreSQL

El script SQL para crear una base de datos postgreSQL desde la línea de comandos:

CREATE DATABASE bdajpdsoft
WITH ENCODING='UTF8'
OWNER=ajpdsoft
LC_COLLATE='Spanish_Spain.1252'
LC_CENGINE='Spanish_Spain.1252'
CONNECTION LIMIT=-1
TABLESPACE=tb_ajpdsoft;

 

 

Crear un esquema y una tabla de ejemplo en PostgreSQL

Para crear un esquema en la base de datos creada anteriomente, la desplegaremos en pgAdmin, en "Esquemas" de esta base de datos pulsaremos con el botón derecho y seleccionaremos "Nuevo Esquema":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

En la pestaña "Propiedades" indicaremos el nombre para el esquema, por ejemplo "ajpdsoft" y el usuario (login de inicio) propietario, en nuestro caso "ajpdsoft". Pulsaremos "OK" para crear el esquema:

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

El script SQL para crear el esquema en PostgreSQL:

CREATE SCHEMA ajpdsoft
AUTHORIZATION ajpdsoft;

Para crear una tabla dentro del esquema "ajpdsoft" (que a su vez está dentro de la base de datos "bdajpdsoft") pulsaremos con el botón derecho del ratón sobre "Tablas" (dentro del esquema) y seleccionaremos "Nueva Tabla":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

Introduciremos el nombre de la tabla, por ejemplo "facturas", el propietario "ajpdsoft", el Tablespace "tb_ajpdsoft":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

En la pestaña "Columnas" pulsaremos "Añadir":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

Introduciremos el nombre de la columna, por ejemplo "codigo", el tipo de datos (para el autoincremento en PostgreSQL seleccionaremos "serial"), puesto que esta columna será clave primaria marcaremos "No Nulo":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

De la misma forma, añadiremos el resto de las columnas para la tabla "facturas": fecha (de tipo "date"), codigocliente (de tipo "integer"), numero (de tipo "character(40)"), importe (de tipo "money") y observacion (de tipo "text"):

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

En la pestaña "Restricciones", para añadir una clave primaria para la tabla, seleccionaremos "Clave Primaria" y pulsaremos "Añadir":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

En "Nombre", introduciremos el nombre para la clave primaria, por ejemplo: cp_codigo:

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

En la pestaña "Columnas" seleccionaremos "codigo" y pulsaremos "Añadir":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

Pulsaremos "OK" para crear la clave primaria para el campo "codigo":

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

Y ya tendremos creada la tabla "facturas" de PostgreSQL:

AjpdSoft Crear un esquema y una tabla de ejemplo en PostgreSQL

El script SQL para crear una tabla en PostgreSQL:

CREATE TABLE ajpdsoft.facturas
(
   codigo serial NOT NULL, 
   fecha date, 
   codigocliente integer, 
   numero character(40), 
   importe money, 
   observacion text, 
   CONSTRAINT cp_codigo PRIMARY KEY (codigo)
) 
WITH (
  OIDS = FALSE
)

TABLESPACE tb_ajpdsoft;
ALTER TABLE ajpdsoft.facturas OWNER TO ajpdsoft;
 

 

Artículos relacionados

Créditos

Artículo realizado íntegramente por Alonsojpd miembro fundador del proyecto AjpdSoft.


Anuncios


Enviado el Lunes, 20 septiembre a las 00:39:52 por ajpdsoft
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A