Actualizado el 21 de Marzo del 2018 (Publicado el 13 de Marzo del 2018)
451 visualizaciones desde el 13 de Marzo del 2018
259,5 KB
8 paginas
Creado hace 17a (05/04/2007)
Documentación Gentoo Linux -- PostgreSQL Guide
http://www.gentoo.org/doc/es/postgres-howto.xml
Imprimir
Actualizado 25 de
abril, 2007
Sumario: La intención
de esta guía es
mostrar la
configuración básica
de PostgreSQL. La
configuración descrita
aquí debería ser
suficiente para usar en
aplicaciones web
básicas y cualquier
otro programa que
proporcione soporte
para PostgreSQL.
Chris White
Autor
Xavier Neys
Editor
John Christian
Stoddart
Traductor
Donate to support our
development efforts.
PostgreSQL Guide
Contenido: 1. Introduction
1. Introduction
PostgreSQL introduction
Al conversar con la mayoría de los desarrolladores acerca del uso de distintas soluciones al
manejo de bases de datos, los dos principales manejadores de bases de datos formarán la
respuesta. Una sería MySQL y la otra sería la materia de este documento, PostgreSQL. Las
ventajas de uno sobre el otro suele traer un debate largo y tendido, sin embargo es justo decir
que PostgreSQL ha tenido una concepción más firme de lo que supone son las verdaderas
estructuras que corresponden a un manejador de bases de datos relacional que MySQL. La
mayoría de las características estándar como FOREIGN KEY fueron apenas agregadas en
MySQL versión 5. Sin embargo, cualesquiera sea el caso, este documento asume que ha
seleccionado PostgreSQL como el manejador de bases de dato que va a utilizar. El primer
lugar donde comenzar es el proceso emerge. En la siguiente sección, el proceso de instalación
usando emerge será descrito, al igual que la configuración básica.
Instalación de PostgreSQL
Para comenzar debemos primero hacer emerge al paquete PostgreSQL. Para hacer esto,
ejecute primero el siguiente comando para asegurar que las opciones necesarias están
correctamente configuradas:
Listado de Código 1.1: Revisando las opciones para construir PostgreSQL
# emerge -pv postgresql
These are the packages that I would merge, in order:
Calculating dependencies ...done!
[ebuild N ] dev-db/postgresql-8.0.4 -doc -kerberos +nls +pam +perl
-pg-intdatetime +python +readline (-selinux) +ssl -tcl +xml +zlib 0 kB
Aquí está una lista de lo que significa cada una de las distintas opciones de construcción:
Parámetro
USE
doc
kerberos
nls
pam
perl
pg-intdatetime
python
readline
selinux
ssl
Significado
Este parámetro USE activa o desactiva la instalación de la documentación, aparte de las páginas
man. La única buena razón para desactivar esta opción es si no dispone de mucho espacio en disco
o alternativamente tiene otra forma de acceso a la documentación (en línea, etc.)
Al conectarse a la base de datos con esta opción activada, el administrador tiene la opción de usar
el sistema kerberos para autentificar los usuarios/servicios a la base de datos.
Si se activa esta opción, PostgreSQL puede utilizar cadenas traducidas para los usuarios que no
hablan inglés.
Si se activa esta opción y si el administrador la configura correctamente, los usuarios/servicios
podrán hacer login a una base de datos PostgreSQL usando PAM (Pluggable Authentication
Module).
Si se activa esta opción se construirán los enlaces de perl para PostgreSQL.
Si activamos esta opción PostgreSQL soportará enteros de 64 bits.
Si se activa esta opción se construirán PostgreSQL con enlaces para python.
Si se activa esta opción, PostgreSQL soportará la edición de línea de comando estilo readline. Esto
incluye historial de comando e isearch.
Si activamos esta opción, se instalará una política selinux para PostgreSQL.
Si activamos esta opción, PostgreSQL usará la librería OpenSSL para encriptar el tráfico entre clientes
y servidores PostgreSQL.
1 de 8
19/11/09 21:56
Documentación Gentoo Linux -- PostgreSQL Guide
http://www.gentoo.org/doc/es/postgres-howto.xml
tcl
xml2
zlib
Si se activa esta opción se construirá PostgreSQL con enlaces para tcl.
Si activamos esta opción, se construirá soporte al estilo XPATH. Para más información acerca del
soporte de XML con PostgreSQL, vea: PostgreSQL and XML.
Esta opción realmente no se utiliza por PostgreSQL, sino por el comando pg_dump para comprimir las
descargas de datos producidas.
Una vez afinada la construcción de PostgreSQL a sus necesidades específicas, continúe con el
emerge:
Listado de Código 1.2: Haciendo el emerge de PostgreSQL
# emerge postgresql
(Esta salida ha sido recortada)
>>> /usr/lib/libecpg.so.5 -> libecpg.so.5.0
>>> /usr/bin/postmaster -> postgres
* Make sure the postgres user in /etc/passwd has an account setup with /bin/bash as the shell
*
* Execute the following command
* emerge --config =postgresql-8.0.4
* to setup the initial database environment.
*
>>> Regenerating /etc/ld.so.cache...
>>> dev-db/postgresql-8.0.4 merged.
Tal como se evidencia en la salida einfo, hay configuraciones post-instalación que deben ser
atendidas. El siguiente capítulo tratará la configuración de PostgreSQL.
2. Configuración de PostgreSQL
Estableciendo el entorno inicial de base de datos
Tal como notamos en la salida del emerge recién hecho, debemos establecer el entorno inicial
para las bases de datos. Sin embargo, antes de hacer esto, debemos considerar un asunto. A
diferencia de MySQL, la contraseña del usuario "root" de PostgreSQL es la de usuario actual,
aunque el ebuild solo crea el usuario no la contraseña. Así que, antes de comenzar, debemos
establecer la contraseña para el usuario postgres:
Listado de Código 2.1: Estableciendo la contraseña
# passwd postgres
New UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Ahora que esto está configurado, podemos continuar con la creación del entorno inicial para
las bases de datos:
Listado de Código 2.2: Configurando el entorno para las bases de datos con emerge --config
2 de 8
19/11/09 21:56
Documentación Gentoo Linux -- PostgreSQL Guide
http://www.gentoo.org/doc/es/postgres-howto.xml
# emerge --config =postgresql-8.0.4
Configuring pkg...
* Creating the data directory ...
* Initializing the database ...
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale C.
fixing permissions on existing directory /var/lib/postgresql/data ... ok
creating directory /var/lib/postgresql/data/global ... ok
creating directory /var/lib/postgresql/data/pg_xlog ... ok
creating directory /var/lib/postgresql/data/pg_xlog/archive_status ... ok
creating directory /var/lib/postgresql/data/pg_clog ... ok
creating directory /var/lib/postgresql/data/pg_subtrans ... ok
creating directory /var/lib/postgresql/data/base ... ok
creating directory /var/lib/postgresql/data/base/1 ... ok
creating directory /var/lib/postgresql/data/pg_tblspc ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 1000
creating configuration files ... ok
creating template1 database in /var/lib/postgresql/data/base/1 ... ok
initializing pg_shadow ... ok
enabling unlimited row size for system tables ... ok
initializing pg_depend ... ok
creating system views ... ok
loading pg_description ... ok
creating conversions ... ok
setting privileges on built-in objects ... ok
creating information schema ... ok
vacuuming database template1 ... ok
copying template1 to template0 ... ok
WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the -A option the
next time you run initdb.
Success. You can now start the database server using:
/usr/bin/postmaster -D /var/lib/postgresql/data
or
/usr/bin/pg_ctl -D /var/lib/postgresql/data -l logfile start
*
* You can use /etc/init.d/postgresql script to run PostgreSQL instead of pg_ctl.
*
Ahora que configuramos el entorno inicial, la siguiente sección tratará cómo verificar la
instalación y configurar usuarios para que tengan acceso a la base de datos.
Configuración de base de datos PostgreSQL
Ahora que configuramos PostgreSQL, es una buena idea verificar la instalación en esta
coyuntura. Primero, veamos si el servicio arranca bien:
Listado de Código 2.3: Iniciando el servicio PostgreSQL
# /etc/init.d/postgresql start
* Starting PostgreSQL ... [ ok ]
Una vez verificado esto, es una buena idea agregarlo al nivel de ejecución por defecto, para
que inicie el servicio al arrancar la máquina:
Listado de Código 2.4: Agregando el servicio al nivel de ejecución default
# rc-update add postgresql default
* postgresql added to runlevel default
Ahora que el servicio ha iniciado, es hora de intentar establecer una base de datos de prueba.
Para empezar, creémos una base de datos de prueba usando el comando createdb.
Pasaremos la opción -U para configurar el usuario (por defecto toma el nombre del usuario
actual) y la opción -W para solicitar la contraseña creada anteriormente y finalmente le damos
3 de 8
19/11/09 21:56
Documentación Gentoo Linux -- PostgreSQL Guide
http://www.gentoo.org/doc/es/postgres-howto.xml
el nombre a la base de datos que queremos crear:
Listado de Código 2.5: Creando una base de datos con createdb
$ createdb -U postgres -W test
Password:
CREATE DATABASE
La base de datos fue creada exitosamente y podemos confirmar que la base de datos puede
llevar a cabo tareas básicas. Seguiremos con un drop (borrando) la base de datos con el
comando dropdb:
Listado de Código 2.6: Borrando una base de datos con dropdb
$ dropdb -U postgres -W test
Password:
DROP DATABASE
En este momento, solo el usuario postgres puede ejecutar comandos. Obviamente este no es
el tipo de configuración que uno necesita en un entorno multi-usuario. La siguiente sección
tratará el trabajo con cuentas de suarios.
Estableciendo cuentas de usuario para bases de datos
Tal como mencionamos anteriormente, teniendo que hacer login como el usuario postgres no
es deseable en un entorno multi-usuario. En la mayoría de los casos habrá varios usuarios y
servicios con acceso al servidor y cada uno tendrá distintas necesidades y permisos. Para
mane
Comentarios de: PostgreSQL Guide - Gentoo (0)
No hay comentarios