Você está na página 1de 9

Administracin y Desarrollo PostgreSQL

Administracin y Desarrollo PostgreSQL

Administracin y Desarrollo PostgreSQL

ii

REVISION HISTORY
NUMBER

DATE

DESCRIPTION

NAME

Administracin y Desarrollo PostgreSQL

iii

Contents
1

PostgreSQL: Introduccin

PostgreSQL: Caracteristicas unicas

PostgreSQL: Arquitectura General

PostgreSQL: Cluster

PostgreSQL: Componentes de una instalacin

PostgreSQL: Requerimientos de espacio en disco

PostgreSQL: Instalacin desde fuentes : Requerimientos

PostgreSQL: Instalacin desde fuentes

PostgreSQL: Configuracin

10 PostgreSQL: Contenido directorio de datos PGDATA

11 PostgreSQL: Profile del usuario postgres (administrador BD)

12 PostgreSQL: Instalacin (y Configuracin) en Debian

13 PostgreSQL: Instalacin en Centos/RedHat/Fedora

14 PostgreSQL: Comando initdb - Inicializar el cluster

15 PostgreSQL: Comando pg_ctl - Arrancar y Detener el servicio

16 PostgreSQL: Comando psql - cliente incluido

Administracin y Desarrollo PostgreSQL

PostgreSQL: Introduccin

RDBMS : Sistema administrador de bases de datos relacional


Los datos se muestran en forma de tablas(fila-columna)
El sistema puede relacionar y operar con las tablas
Caractersticas
Arquitectura Cliente-Servidor
Configurable y extensible para distintos tipos de aplicacin
Integridad de datos (Integridad referencial, logging)
Funcionamiento 24x7 (backups en linea, alta disponibilidad)
Alta concurrencia (multi versionado,lectores nbloqueos)
Internacionalizacin
Seguridad ( autenticacin, encriptacin )

PostgreSQL: Caracteristicas unicas

Software robusto, de alta calidad , con cdigo mantenible y bien comentado.


Bajo mantenimiento tanto para uso embebido como empresarial
Adhiere a estndares SQL (hasta ANSI SQL 2008)
Performance, seguridad, alta disponibilidad
Administracin sencilla para las prestaciones que posee
PostgreSQL no "reinventa la rueda", filosofa UNIX o KISS.

1/6

Administracin y Desarrollo PostgreSQL

PostgreSQL: Arquitectura General

2/6

Administracin y Desarrollo PostgreSQL

PostgreSQL: Cluster

PostgreSQL: Componentes de una instalacin

Binarios : Los programas que constituyen postgres


Cluster de Bases de datos: Conjunto de datos disponible en un servicio
La variable PGDATA apunta al directorio donde estn los archivos del cluster.
Los binarios suelen estar accesibles por la variable PATH.

PostgreSQL: Requerimientos de espacio en disco

100 Mb : Para compilar desde fuentes


20 Mb : Para instalar los binarios
35 Mb : Ocupa un cluster vaco
Tamao de un archivo de texto x 5 : Ocupan los datos en la BD.

3/6

Administracin y Desarrollo PostgreSQL

PostgreSQL: Instalacin desde fuentes : Requerimientos

Obligatorios
gmake , gcc
tar, gzip o bzip2
libreadline
zlib
Opcionales
Perl (para PL/Perl)
Python 2.3 (para PL/Python)
Tcl (para PL/Tcl)
Gettext (mensajes en castellano)
Kerberos, OpenSSL, OpenLDAP o PAM (para autenticacin encriptada)
Flex , Bison y Git ( Para instalar desde GIT)

PostgreSQL: Instalacin desde fuentes

Descarga fuentes
wget http://ftp.postgresql.org/pub/source/v9.2.4/postgresql-9.2.4.tar.bz2

Desempaquetado
tar -xjvf postgresql-9.2.4.tar.bz2
cd postgresql-9.2.4

Compilacin
./configure
gmake
su
gmake install

PostgreSQL: Configuracin

adduser postgres
mkdir /pgdata
chown postgres /pgdata
su - postgres
# Inicializa directorio datos
/usr/local/pgsql/bin/initdb -D /pgdata
# Arranca servicio
/usr/local/pgsql/bin/pg_ctl -D /pgdata -l logfile start

10

PostgreSQL: Contenido directorio de datos PGDATA

4/6

Administracin y Desarrollo PostgreSQL

PG_VERSION
base
global
pg_clog
pg_log
pg_multixact
pg_subtrans
pg_tblspc
pg_twophase
pg_xlog
postgresql.conf
pg_hba.conf
postmaster.pid
postmaster.opts

11

5/6

Nro. de Versin
Directorio que contiene un subdir.por cada BD
Directorio que contiene tablas comunes al
Cluster
Directorio que contiene info sobre
transacciones
Directorio que contiene logs
Directorio que contiene info sobre bloqueos
Directorio que contiene info sobre
subtransacciones
Directorio que contiene tablespaces definidos
Directorio que contiene info sobre
transacciones preparadas
Directorio que contiene WAL logs
Archivo de config.del cluster
Archivo de config.de accesos al cluster (fw)
Archivo con el PID del postmaster
Archivo con opciones de ejecucion

PostgreSQL: Profile del usuario postgres (administrador BD)

.bashrc
export
export
export
export

12

PGDATA=/pgdata
PATH=$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
EDITOR=vi

PostgreSQL: Instalacin (y Configuracin) en Debian

apt-get install postgresql postgresql-client postgresql-contrib

https://wiki.debian.org/PostgreSql

13

PostgreSQL: Instalacin en Centos/RedHat/Fedora

Instalacin
yum install postgresql

Post Instalacin
service postgresql initdb
chkconfig postgresql on

Distribucin
RHEL/CentOS/SL 5
RHEL/CentOS/SL 6
Fedora 16, 17
Fedora 18

Versin
8.1
8.4
9.1
9.2

Administracin y Desarrollo PostgreSQL

14

6/6

PostgreSQL: Comando initdb - Inicializar el cluster

Crea en el directorio PGDATA la estructura necesaria para levantar el servicio y que la base de datos funcione. Incluye la creacin
de tres bases de datos:
template0
template1
postgres

15

base de datos "original".No debe modificarse.


base de datos modelo para crear nuevas bases.
una copia de template1

PostgreSQL: Comando pg_ctl - Arrancar y Detener el servicio

pg_ctl start

# Inicia el servicio

pg_ctl -m immediate stop


pg_ctl -m fast stop
pg_ctl -m smart stop

# Baja servicio instantaneo (recovery)


# Cierra transacciones, corta conexiones
# Espera las conexiones de clientes

pg_ctl reload

# Relee configuracin

pg_ctl status

# Estado del servicio

16

PostgreSQL: Comando psql - cliente incluido

psql -U usuario <base de datos>

Dentro de psql
Ayuda : \? y \h
Ejecucin de comandos SQL : \i archivo.sql
Lista de bases de datos : \l
Lista de tablas : \dt
Descripcion de una tablas : \d
Editar : \e
Salir : \q