PostgreSQL-8.0.1

Introducción a PostgreSQL

PostgreSQL es un sistema avanzado de administración de bases de datos objeto-relacionales (ORDBMS) derivado del sistema de administración de bases de datos Postgres de Berkeley

Información sobre el paquete

Instalación de PostgreSQL

Para que configure encuentre correctamente Docbook SGML DTD, necesitas eliminar las definiciones de catálogo para OpenSP del sistema de catálogos SGML. Usa los siguientes comandos antes de construir el paquete para cumplir esto:

sed -i.orig \
    -e "/CATALOG \/etc\/sgml\/OpenSP-1.5.1.cat/d" \
    /etc/sgml/catalog \
    /etc/sgml/sgml-docbook.cat

Instala PostgreSQL ejecutando los siguientes comandos:

sed -i \
    -e "s|dsssl-stylesheets|& \\\\\n        sgml/docbook/&-1.79|" \
    configure &&
./configure --prefix=/usr --enable-thread-safety &&
make

Ahora, como usuario root:

make install &&
chown -R root:root /usr/share/doc/postgresql/html
[Nota]

Nota

Si estás actualizando un sistema existente y vas a instalar los nuevos ficheros sobre los antiguos, entonces deberías guardar un respaldo de tus datos, cerrar el antiguo servidor y seguir las instrucciones que hay en la documentación oficial de PostgreSQL.

Inicializa un grupo de bases de datos con los siguientes comandos ejecutados como usuario root:

install -v -m755 -d /srv/pgsql/data &&
useradd -c "PostgreSQL Server" -g users -d /srv/pgsql/data postgres &&
chown -v postgres /srv/pgsql/data &&
su - postgres -c '/usr/bin/initdb -D /srv/pgsql/data'

Como usuario root, arranca el servidor de bases de datos con el siguiente comando:

su - postgres -c '/usr/bin/postmaster -D /srv/pgsql/data > \
    /srv/pgsql/data/logfile 2>&1 &'

Aún como usuario root, crea una base de datos y verifica la instalación:

su - postgres -c '/usr/bin/createdb test' &&
echo "create table t1 ( name varchar(20), state_province varchar(20) );" \
    | (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Billy', 'NewYork');" \
    | (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Evanidus', 'Quebec');" \
    | (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Jesse', 'Ontario');" \
    | (su - postgres -c '/usr/bin/psql test ') &&
echo "select * from t1;" | (su - postgres -c '/usr/bin/psql test')

Explicación de los comandos

sed -i -e "s|dsssl-stylesheets|...": Este comando añade una línea adicional al guión configure para que pueda encontrase la versión instalada por BLFS de las hojas de estilo DSSSL.

--enable-thread-safety: Esta opción hace las librerías clientes con hilos seguros permitiendo hilos concurrentes en los programas basados en libpq y ECPG para controlar de forma segura sus manejadores de conexión privados.

chown -R root:root /usr/share/doc/postgresql/html: Esta opción corrige el propietario incorrecto de algunos ficheros de documentación.

useradd ...: Añade un usuario sin privilegios para ejecutar el servidor de bases de datos.

createdb test, create table t1 , insert into t1 values..., select * from t1 : Crea una base de datos, le añade una tabla, inserta varias filas en la tabla y las selecciona para comprobar que la instalación funciona correctamente.

Configuración de PostgreSQL

Ficheros de configuración

$PGDATA/pg_ident.con, $PGDATA/pg_hba.conf y $PGDATA/postgresql.conf

La variable de entorno PGDATA se usa para distinguir un grupo de bases de datos de otro al establecer su valor al directorio que contiene el grupo deseado. Los tres ficheros de configuración se encuentran en cada directorio PGDATA/. Los detalles sobre el formato de los ficheros y las opciones que pueden usarse se encuentran en file:///usr/share/doc/postgresql/html/index.html.

Instala el guión de inicio /etc/rc.d/init.d/postgresql incluido en el paquete blfs-bootscripts-20050313.

make install-postgresql

Contenido

Programas instalados: clusterdb, createdb, createlang, createuser, dropdb, droplang, dropuser, ecpg, initdb, ipcclean, pg_config, pg_controldata, pg_ctl, pg_dump, pg_dumpall, pg_resetxlog, pg_restore, pltcl_delmod, pltcl_listmod, pltcl_loadmod, postgres, postmaster, psql, vacuumdb
Librerías instaladas: libecpg.[so,a], libecpg_compat.[so,a], libpgport.a, libpgtypes.[so,a], libpq.[so,a] y diversos módulos de grupos de caractéres.
Directorios instalados: /srv/pgsql, /usr/include/libpq, /usr/include/postgresql, /usr/lib/postgresql, /usr/share/doc/postgresql y /usr/share/postgresql

Descripciones cortas

clusterdb

Una utilidad para reordenar las tablas de una base de datos PostgreSQL.

createdb

Crea una nueva base de datos PostgreSQL.

createlang

Define un nuevo lenguaje de procedimientos PostgreSQL.

createuser

Crea una nueva cuenta de usuario PostgreSQL.

dropdb

Elimina una base de datos PostgreSQL database.

droplang

Elimina un lenguaje de procedimientos PostgreSQL.

dropuser

Elimina una cuenta de usuario PostgreSQL.

ecpg

El preprocesador SQL incorporado.

initdb

Crea un nuevo grupo de bases de datos.

ipcclean

Elimina la memoria compartida y los semáforos dejados por un servidor de bases de datos abortado.

pg_config

Recupera información de la versión de PostgreSQL.

pg_controldata

Devuelve información inicializada por initdb, como la versión del catálogo y el locale del servidor.

pg_ctl

Controla la parada e inicio del servidor de bases de datos.

pg_dump

Vuelca los datos y metadatos de una base de datos en guiones que son usados para regenerar la base de datos.

pg_dumpall

Invoca a pg_dump reiteradamente para cada base de datos de un grupo.

pg_resetxlog

Borra el fichero de registro y opcionalmente pone a cero algunos campos del fichero pg_control.

pg_restore

Crea bases de datos a partir de los ficheros de volcado creados por pg_dump.

pltcl_delmod

Un guión de soporte usado para borrar un módulo de una tabla PL/Tcl. El comando requiere que esté instalado también el paquete Pgtcl.

pltcl_listmod

Un guión de soporte usado para listar los módulos de una tabla PL/Tcl. El comando requiere que esté instalado también el paquete Pgtcl.

pltcl_loadmod

Un guión de soporte para cargar un módulo en una tabla PL/Tcl. El comando requiere que esté instalado también el paquete Pgtcl.

postgres

Un servidor de bases de datos monousuario, utilizado normalmente para depuración.

postmaster

Un demonio de bases de datos multiusuario.

psql

Un intérprete de comandos basado en la consola para las bases de datos.

vacuumdb

Compacta bases de datos y genera estadísticas para el analizador de consultas.

Last updated on 2005-04-15 21:38:34 +0200