Cómo instalé PostgreSQL en Mac OS X Leopard

4.5.08. Por ooscarr (ooscarr)
PostgreSQL

El último sistema operativo de Apple, incluído en el iPhone, viene con MySQL pero no incluye el poderoso sistema de bases de datos OpenSource PostgreSQL. Y para los sistemas UNIX no proveen un archivo binario de fácil instalación suponiendo que es sencillo para todos los realmente interesados. Aquí entrego una guía típica de instalación de este tipo de programas que sirve tanto para Mac OS X, Linux, BSD y UNIX en general. Es para todos lo mismo.

Primero

  1. Instalar las Developer Tools que vienen en el DVD de Leopard. Se recomienda descargar la última versión más conocida por estos días como iPhone SDK aunque no tenga nada que ver con el iPhone.
  2. Descargar la última versión de PostgreSQL desde postgresql.org (los .md5 son las firmas digitales, no los archivos que queremos). De preferencia, en el escritorio.
  3. Hacer doble click en el archivo recién descargado para que se descomprima y ya tenemos la carpeta para compilar.

Compilar PostgreSQL

  1. Abrimos el Terminal (Aplicaciones > Utilidades > Terminal)
  2. Escribimos el comando
    $ cd
    luego espacio, arrastramos y soltamos la carpeta recién descomprimida en la ventana del Terminal para que quede la ruta escrita en la misma línea. Enter (o return). Debería quedar algo como:
    $ cd /Users/ooscarr/Desktop/postgresql-8.3.1 

Configure

Antes de comenzar a compilar, hay que generar los Makefiles. Esto se hace ejecutando el script incluido configure con parámetros opcionales. El comando y los parámetros que elegí fueron los siguientes:

./configure --enable-thread-safety \
                    --without-docdir \
                    --with-perl \
                    --with-gssapi \
                    --with-pam \
                    --with-bonjour \
                    --with-openssl

No usé --prefix= porque no tengo problemas en que Postgres se instale en /usr/local. Tampoco --exec-prefix= porque no necesito que sea independiente de la plataforma, es para instalarlo aquí mismo.

En general no recomiendo personalizar las carpetas donde Postgres va a instalar sus archivos, para tener una instalación de lo más normal y conocida que permitan pedir ayuda para arreglar problemas sin complicaciones. Leopard, como UNIX, viene con readline instalado, así que no hay muchas complicaciones. El --without-docdir es para que no instale la documentación en inglés, pero lo puedes obviar sin problemas.

El --enable-dtrace suena tentador, pero no es necesario ya que no vamos a analizar el proceso de compilación y, según el archivo README, ahora sólo tiene soporte para Solaris (un muy buen sistema operativo para desarrolladores).

Al presionar return se demora un poco porque está revisando las librerías, el sistema, etc. Debería aparecer una lista de checking y unas config.status. Todo normal.

Make

Estamos listos con el código fuente, ahora falta compilar. Comando:

$ make

Éste se demora más, ocupa más el procesador, pero en unos minutitos debería haber terminado con la frase:

All of PostgreSQL successfully made. Ready to install.

Ya. Está listo para instalar.

Instalación

La instalación es igual de fácil. Lo único que hay que hacer (por ahora) es escribir:

$ sudo make install

Lo típico. Si pide la password, la escribimos y listo. La contraseña no aparecerá en pantalla.

PostgreSQL installation complete.

Eso es todo. PostgreSQL está instalado en /usr/local/pgsql/

pgAdmin III

Antes de seguir, sería bueno instalar la última versión del software pgAdmin III cuya instalación es tan fácil como la mayoría de las instalaciones de Mac OS X: arrastrar un archivo a la carpeta de Aplicaciones.

Crear la base de datos

Al igual que en Windows, se estila crear un usuario dedicado para que PostgreSQL administre los datos. Más bien es un requisito. En mi caso voy a guardar los datos en la carpeta /usr/local/pgsql/data como viene por defecto, pero esto cambia según la necesidad y configuración personal de cada usuario. Para crear la carpeta ahí, utilizo el famoso comando:

$ mkdir /usr/local/pgsql/data

Después hay que crear el usuario. Y como no me molesta tener un usuario más en la pantalla de inicio de sesión (si tienes el inicio de sesión automático, ni lo vas a ver), lo creo normalmente desde Preferencias del Sistema > Cuentas > +

Pantalla de Agregar nuevo usaurio de Mac OS X

Bueno, ahora que existe el usuario postgres, hacemos que la carpeta /usr/local/pgsql/data pertenezcan a este nuevo usuario.

$ sudo chown postgres /usr/local/pgsql/data

Para inicializar la base de datos, debemos entrar a la cuenta de postgres con

$ su -l postgres

Y la inicializamos por primera vez con el script:

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

Al finalizar, aparecerán dos líneas muy importantes, ya que estos comandos se usarán para iniciar el servidor de postgresql para que funcione. En mi caso iniciaré el servidor de PostgreSQL con:

/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

Y lo terminaré con:

/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile stop

Cabe recordar que estos comandos sólo funcionan desde el usuario postgres así que siempre habrá que iniciar su sesión escribiendo antes:

$ su -l postgres
$ /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

Ahora que está el servidor corriendo, podemos cerrar todas las ventanas.

Crear los usuarios

La forma más fácil de crear los usuarios es abrir el software pgAdmin3, presionar el ENCHUFE para crear un nuevo servidor dentro del programa con los datos conocidos:

Agregando servidor localhost en pgAdmin III para Mac OS X

Una vez conectado, creamos un nuevo usuario desde Editar > Nuevo Objeto > Nueva rol de Login...

Editar > Nuevo Objeto > Nueva rol de Login...

Aquí se pueden usar nuestros propios datos que se usarán para conectarnos desde los códigos que podamos estar escribiendo.

Agregando datos de usuario de PostgreSQL en pgAdmin III para Mac OS X

Ya podemos crear una nueva base de datos

Menú contextual Crear nueva base de datos

Para el nuevo usuario recién creado

Asignando usuario de nueva base de datos
Recomiendo utilizar la condificación UTF-8 como estándar si vamos a usar caracteres que no están en el idioma inglés, como la é con tilde.

Si nos desconectamos (con el mismo ENCHUFE), por seguridad deberíamos ir a Propiedades

Menú contextual Propiedades de la base de datos

... Y cambiar el nombre de la base de datos (BD de Mantenimiento) y el usuario dueño de esa base datos que recién configuramos.

Cambiando datos de base de dato PostgreSQL en PgAdmin III para Mac OS X

Cuando nos volvamos a conectar, nos va a volver a pedir la contraseña del usuario nuevo.

Por favor ingrese la contraseña

Y una vez conectados a la base de datos local, deberíamos tener un PostgreSQL completo funcionando en nuestro computador.

Tablas, triggers y vistas de PostgreSQL en PgAdmin III en español

Palabras finales

Aprendimos a instalar PostgreSQL de manera sencilla en la máquina local desde el código fuente. Ahora sólo me falta aprender a hacer que se inicie automáticamente cada vez que se enciende el computador o crear un alias que inicie la base de datos con un simple doble click y sin escribir los complicados comandos:

su -l postgres
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

Referencias

Etiquetas: , , ,

¿Cómo controlar Last.fm con el Apple Remote Control?

30.3.08. Por ooscarr (ooscarr)

Introducción

Actualmente el cliente reproductor de Last.fm para Mac no ofrece la opción de controlarlo con el Apple Remote Control que venía incluido en las primeras macs con Intel como sí lo hace iTunes y otros programas como los de presentaciones. Como yo no bajo música ilegalmente, el reproductor Last.fm lo es todo para mí y poder controlarlo a distancia es lo que yo más andaba buscando. Escarbando en Internet, encontré un programa para darle acciones al Apple Remote y aquí mostraré cómo configurarlo con Last.fm.

iRed Lite

iRed Lite es una aplicación que se adueña del receptor infrarojo mientras está abierta y permite controlar distintas aplicaciones configurándolo adecuadamente. Lamentablemente no es Open Source pero sí es gratuito (por ahora) a diferencia de otras soluciones como Remote Buddy (19.99). De hecho, iRed Lite parece ser una alternativa gratuita y menos acabada de Remote Buddy.

Con todo ese poder de controlar y cargar cualquier aplicación más la capacidad de los receptores infrarojos de Apple de poder también transmitir, fácilmente se podrían controlar todos los equipos de la casa como el televisor, el equipo de música, el aire acondicionado y hasta el portón del auto y el mismo sistema de alarma del auto con el simple Apple Remote de 6 botones! 8-o Después ahondaré en eso, me interesó...

Configuración

Leyendo el Manual, aprendí estas instrucciones:

  1. Una vez descargado e instalado, hay que abrir el Editor.
    Icon, Show Panel
  2. Creamos un nuevo Layer presionando el Engranaje > New Layer. Le ponemos un título (Title: Last.fm), lo activamos con la aplicación Last.fm.app (Activate layer with application Last.fm.app) y ponemos Guardar (Save)
    Icon, Show Panel
  3. Luego, presionamos el triangulito que está en la esquina inferior derecha de la ventana para abrir el espectacular editor avanzado
    Triangulito en la punta de la ventana
  4. Agregamos una nueva aplicación llamada "Last.fm" y un nuevo grupo (Groups) llamado "Controles".
    Agregar con el botón +
  5. De ahí, agregamos una nueva acción de tipo teclado (+ Add Action ... > Keystroke) y la llamamos "Skip", por ejemplo.
    Keystroke
  6. Abajo, ponemos "Last.fm.app" como Target Application. En el campo Special Key presionamos la tecla → y marcamos el checkbox de command (). También podemos marcar Bring to front para ver qué canción va a sonar.
    command RIGHT
  7. Lo mismo se puede hacer para subir el volumen y bajarlo. Al final presionamos Save y de nuevo el triangulito para cerrar el espectacular editor avanzado.
    Save
  8. En la ficha Button, arriba donde está la imagen presionamos el dibujo del botón derecho. Abajo, para asignarle una acción a ese botón marcado con amarillo, le ponemos un "Title: Skip", en el sector derecho Application, Last.fm, Controles, Skip y el botón Save. Lo mismo para subir y bajar volumen, seleccionando primero los botones + y - en el dibujo de arriba.
    Yellow buttons
  9. Listo. Ahora para controlar el reproductor Last.fm abrimos el iRed Lite, presionamos un segundo el botón MENU del control, buscamos el layer Last.fm, presionamos Play y cada vez que presionemos adelante, el cliente Last.fm saltará la canción.
    OSD Panel

Palabras finales

Ahora que tengo todo configurado, puedo manejar el Google Earth con el RC desde el sillón con el notebook conectado al televisor mientras en el equipo de música suena mi querido Last.fm. Un irresponsable y delicioso despilfarro de electricidad. Lo voy a apagar mejor.

Como decía, lamentablemente iRed Lite no es Open Source, pero lo que sí es Open Source es el cliente reproductor oficial de Last.fm; así que si existe algún programador con ganas de implementarlo de forma nativa en la aplicación, varios se sentirán muy agradecidos. Ahora faltaría lograr que el cliente Last.fm ponga lo que estoy escuchando en el estado de Microsoft Messenger o iChat como ya lo hace con Skype.

Nos vemos.

Etiquetas: , ,