sql >> Base de Datos >  >> RDS >> Mysql

Configuración más sencilla para escribir en MySQL en OSX con Python

Desafortunadamente, realmente no hay una solución trivial en este momento. Si necesita usar MySQL con Python, la solución más simple y confiable en OS X es instalar todo:Python, MySQLdb, cualquier otro paquete de Python de terceros necesario, bibliotecas cliente de MySQL y, si es necesario, bibliotecas y utilidades de servidor MySQL. - utilizando un sistema de gestión de paquetes, como MacPorts . Intentar instalar los diversos componentes de diferentes fuentes con frecuencia se encuentra con problemas con archivos ejecutables y bibliotecas creados por incompatibilidad:32 bits frente a 64 bits, diferentes ABI (10.3 frente a 10.6), etc.

Para un sistema con Xcode y el sistema base MacPorts instalado, puede compilar e instalar todo con un solo comando:

sudo port install py27-mysql

Si también necesita el servidor MySQL:

sudo port install py27-mysql mysql5-server

Todos los ejecutables instalados en MacPorts se instalarán de forma predeterminada en /opt/local , por lo que solo necesita ejecutar las cosas desde allí:

/opt/local/bin/python2.7

Para que sea más fácil para sus usuarios, debería poder usar MacPorts para crear el conjunto de puertos necesarios como archivos binarios y configurar un script para instalar el sistema base de MacPorts y luego sus paquetes prediseñados. Hay información sobre esto en la Guía MacPorts aquí . Sin embargo, mucho de eso está desactualizado para MacPorts 2.0.x. Hasta que se actualice la Guía, hay información que comienza aquí . El enfoque más seguro sería crear un conjunto diferente de paquetes para cada versión de OS X admitida. podría Sería posible crear un conjunto compatible hacia arriba en el sistema más antiguo necesario:por ejemplo, crear paquetes en 10.5 que también funcionarían en los sistemas 10.6 y 10.7. Para evitar interferencias con las instalaciones de MacPorts del cliente, también puede compilar el sistema base de MacPorts desde la fuente y cambiar la raíz de la instalación a algo que no sea /opt/local .

Un enfoque más idiomático en OS X sería usar py2app para crear un paquete de aplicaciones que incluya Python y las bibliotecas cliente de MySQL. No sé si alguien lo ha hecho con éxito.

Otra sugerencia:si realmente no necesita un servidor remoto, considere usar SQLite en su lugar. Compatibilidad con SQLite está incluido en la biblioteca estándar de Python.