Esto no seria necesario de no ser por lo tedioso que me resulto configurar el modulo mysql-python en una Mac :\.
En Debian seria suficiente con un apt-get por ahi y un dpkg-reconfigure por alla, pero, no era cierto que este sistema era tan facil de usar como lo pintan? …bueno, en realidad si lo es siempre y cuando solo implique hacer click.
En fin, sin mas hablada.
Estoy usando Mac OS X 10.6.8 en una Mac Book Pro…esta contando o esta rajando? …no! estoy pariendo!
MySQL server.
Primero, descargar el dmg para el MySQL server, aca la 5.1.
Montar e instalar el paquete mysql-*, luego MySQLStartupItem.pkg y de ultimo el MySQL.prefPane, este ultimo es util solo para aquellos mortales que necesitan levantar el demonio con un click.
Agregar estos settings para el shell.
vim .bash_profile
PATH="/usr/local/mysql/bin:${PATH}"
alias mysql_stop="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias mysql_start="/Library/StartupItems/MySQLCOM/MySQLCOM stop"
Con esto lo que hacemos es que los cambios tenga efecto inmediatamente.
source .bash_profile
y asi podremos levantar y bajar el server mas “facilmente”.
mysql_stop mysql_start
MySQL python.
Bajamos el tarball 1.2.3 de aca
cd MySQL-python-1.2.3
En este punto viene la pega, sobre todo con las versiones de Python.
Si va a usar la 2.6 de python, use el compilador 4.2.
Si va a usar la 2.5 de python, use el compilador 4.0.
Para eso cambie el enlace simbolico, pero primero tiene que saber donde esta. Advierto que estoy intentando trabajar con python 2.6.
$ which gcc /usr/bin/gcc
$ cd /usr/bin $ ls -l gcc* lrwxr-xr-x 1 root wheel 7 Nov 25 14:32 gcc -> gcc-4.0 -rwxr-xr-x 1 root wheel 97392 Oct 24 2010 gcc-4.0 -rwxr-xr-x 1 root wheel 166128 Oct 24 2010 gcc-4.2
sudo rm gcc sudo ln -s gcc-4.2 gcc
Ahora a instalar:
sudo python2.6 setup.py install
Si no le funciono, aun esta la opcion de los mac ports.
Borramos toda la mierda del primer intento.
sudo rm -rf /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/MySQL_python*
sudo port selfupdate sudo port install py26-mysql
En este punto agradezco a Steve Jobs por haber inventado los ports… a no, mentira el no lo hizo :).
Si despues de instalar y poder cargar el modulillo sin ningun incoveniente, espere, aun puede recibir un error mas si utilizo el port.
Can't connect to local MySQL server through socket '/opt/local/var/run/mysql5/mysqld.sock' (2)
Puede hacer varias cosas: pegarse un tiro en la cabeza o crear un enlace simbolico donde realmente se esta creando, para ellos mirar en /usr/local/mysql/bin/mysql_config donde dice socket=’/tmp/mysql.sock’.
sudo ln -s /tmp/mysql.sock /opt/local/var/run/mysql5/mysqld.sock
La otra opcion (ya debe haberse dado cuenta) es cambiar la ruta en el archivo de configuracion.
socket='/opt/local/var/run/mysql5/mysqld.sock'
y reiniciar el server.
gin@astaroth /tmp $ python2.6 Python 2.6.6 (r266:84292, Jun 13 2011, 12:15:48) [GCC 4.2.1 (Apple Inc. build 5664)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import MySQLdb >>> # just testing... >>> import _mysql >>>
No se si soy el unico que ha tenido esta bronca, la verdad si no le sirve a nadie me importa un carajo, a mi si me sirvio.