Suponemos que tenemos instalado postgresql y python. Aquí vamos a utilizar la clásica interfaz PyGreSQL que nos proporciona el módulo pg de python.
A parte de postgresql, vamos a necesitar estos dos paquetes:
$ sudo apt-get install python-dev
$ sudo apt-get install build-essential
Y por último
$ sudo easy_install PyGreSQL
Con ésto, deberíamos poder crear nuestro script, y conectarnos a la base de datos postgresql.
Lo probamos, debemos tener una base de datos creada así cómo una tabla y algún dato que recuperar.
#!/usr/bin/env python
import pg
usuario = 'usuario'
base = 'nombre_base_de_datos'
passw = 'password'
conecta = pg.connect(dbname=base,user=usuario,passwd=passw)
consulta = 'select * from nombre_tabla'
resultado = conecta.query(consulta)
print resultado
conecta.close()
Si todavía no hemos configurado la lista de acceso, nos mostrará un error como éste:
FATAL: la autentificación Ident falló para el usuario «x»
en ese caso éste será el momento de configurar la lista de autenticación. Ésto lo encontramos en la ruta: /etc/postgresql/8.4/main/pg_hba.conf
Editamos el fichero
sudo nano /etc/postgresql/8.2/main/pg_hba.conf
y modificamos la siguiente línea,
# "local" is for Unix domain socket connections only
local all all ident
por
# "local" is for Unix domain socket connections only
local all all md5
Ejecutamos
python conectdb.py
Con ésto tenemos una conexión a la base de datos, recogemos la consulta y la mostramos por pantalla.