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.
- Cómo descargar e instalar PostgreSQL 9 en Microsoft Windows 7.
- Administración de PostgreSQL, creación de usuarios (roles), catálogos.
- Artículos relacionados.
- Créditos.
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):
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":
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:
Se iniciará el asistente para instalar PostgreSQL, pulsaremos "Siguiente":
Indicaremos la carpeta de instalación de PostgreSQL, donde se guardarán los ejecutables, librerías y ficheros de configuración de PostgreSQL:
Indicaremos también la carpeta donde se guardarán los datos por defecto de PostgreSQL:
Introduciremos la contraseña para el superusuario "postgres" que será con el que iniciemos sesión para administrar la base de datos:
Introduciremos el puerto de escucha para la conexión con el servidor PostgreSQL, por defecto el 5432:
Seleccionaremos la configuración regional:
Pulsaremos "Siguiente" para iniciar la instalación definitiva del servidor PostgreSQL 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:
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:
Si hemos marcado la opción de Stack Builder, se iniciará, seleccionaremos "PostgreSQL 9.0 on port 5432" y pulsaremos "Next":
Seleccionaremos las aplicaciones, componentes y herramientas a instalar y pulsaremos "Next" (en nuestro caso cancelaremos Stack Builder pues no instalaremos más componentes):
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":
Y habrá creado la carpeta en archivos de programa "PosgreSQL" con las subcarpetas:
Y la carpeta de datos:
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":
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":
Introduciremos la contraseña para el superusuario postgres (la contraseña introducida en la instalación):
Si todo es correcto nos conectaremos al servidor PostgreSQL, desde pgAdmin podremos configurar y administrar el servidor de PostgreSQL:
Para crear un rol de login pulsaremos con el botón derecho del ratón sobre "Roles de Login", seleccionaremos "Nueva Rol de Login":
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.
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:
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":
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:
Nota: la carpeta de destino de existir, de lo contrario mostrar un error como este:
---------------------------El script SQL que creará el tablespace en PostgreSQL (si lo hiciésemos sin el modo gráfico de pgAdmin
pgAdmin III
---------------------------
Ha ocurrido un error:
ERROR: directory "C:/datos_postgresql/tb_ajpdsoft" does not exist
---------------------------
Aceptar
---------------------------
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":
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:
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_CTYPE='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":
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:
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":
Introduciremos el nombre de la tabla, por ejemplo "facturas", el propietario "ajpdsoft", el Tablespace "tb_ajpdsoft":
En la pestaña "Columnas" pulsaremos "Añadir":
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":
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"):
En la pestaña "Restricciones", para añadir una clave primaria para la tabla, seleccionaremos "Clave Primaria" y pulsaremos "Añadir":
En "Nombre", introduciremos el nombre para la clave primaria, por ejemplo: cp_codigo:
En la pestaña "Columnas" seleccionaremos "codigo" y pulsaremos "Añadir":
Pulsaremos "OK" para crear la clave primaria para el campo "codigo":
Y ya tendremos creada la tabla "facturas" de 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
- Artículos del Proyecto AjpdSoft sobre PostgreSQL.
- Acceso al motor de base de datos PostgreSQL desde Windows XP con ODBC.
- Cómo crear un sitio web con secciones dinámicas con HTML, PHP, Delphi y MySQL.
- Cómo instalar MySQL Server 6.0 Alpha en Windows XP.
- Instalación y configuración de Windows XP Service Pack 3.
- Manual SQL (con ejemplos de sentencias SQL Oracle).
- Manual para instalar Oracle 9i en Windows con capturas de pantalla.
- Instalar Oracle Database 11g Standard Edition en Windows XP Profesional.
- Instalar Oracle Database 10g XE Express Edition en Windows XP.
- Instalar Oracle Database 10g Express Edition XE en Linux Ubuntu 6.06.
- Cómo acceder a una BBDD MS Access con Delphi sin utilizar código fuente.
- Instalar y administrar Microsoft SQL Server 2008 Express SP1.
- Consultas e informes desde Microsoft Access a Excel.
- Acceso a SQLite 3 mediante Delphi 6 y ZeosDBO en Windows XP.
- SQLite 3.6.11, instalación, configuración, acceso mediante ODBC.
- Definición URL.
- Definición SQL.
- Definición ODBC.
- Definición Mozilla Firefox.
- AjpdSoft Administración de base de datos.
- AjpdSoft Copia Seguridad MySQL.
- Artículos del Proyecto AjpdSoft sobre Microsoft Access.
- Artículos del Proyecto AjpdSoft sobre los sistemas operativos de Microsoft Windows.
- Foro de AjpdSoft sobre Windows, con trucos, dudas resueltas, solución a errores.
No hay comentarios:
Publicar un comentario