Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Configuração mais fácil para escrever no MySQL no OSX com Python


Infelizmente, não há realmente nenhuma solução trivial no momento. Se você precisar usar MySQL com Python, a solução mais simples e confiável no OS X é instalar tudo - Python, MySQLdb, quaisquer outros pacotes Python de terceiros necessários, bibliotecas de cliente MySQL e, se necessário, bibliotecas e utilitários de servidor MySQL - usando um sistema de gerenciamento de pacotes, como MacPorts . Tentar instalar os vários componentes de fontes diferentes frequentemente apresenta problemas com executáveis ​​e bibliotecas criados por incompatibilidade:32 bits versus 64 bits, ABIs diferentes (10.3 versus 10.6) etc.

Para um sistema com Xcode e o sistema base MacPorts instalado, você pode construir e instalar tudo com um comando:
sudo port install py27-mysql

Se você precisar do servidor MySQL também:
sudo port install py27-mysql mysql5-server

Todos os executáveis ​​instalados no MacPorts serão instalados por padrão em /opt/local , então você só precisa executar as coisas a partir daí:
/opt/local/bin/python2.7

Para facilitar para seus usuários, você deve ser capaz de usar MacPorts para construir o conjunto de portas necessárias como arquivos binários e configurar um script para instalar o sistema base MacPorts e então seus pacotes pré-construídos. Há algumas informações sobre isso no Guia MacPorts aqui . No entanto, muito disso está desatualizado para MacPorts 2.0.x. Até que o Guia seja atualizado, há informações começando aqui . A abordagem mais segura seria construir um conjunto diferente de pacotes para cada versão do OS X suportada. Ele pode ser possível construir um conjunto compatível com versões anteriores no sistema mais antigo necessário:digamos, construir pacotes no 10.5 que também funcionariam nos sistemas 10.6 e 10.7. Para evitar interferência nas instalações do cliente MacPorts, você também pode construir o sistema base MacPorts a partir da fonte e alterar a raiz da instalação para algo diferente de /opt/local .

Uma abordagem mais idiomática no OS X seria usar py2app para criar um pacote de aplicativos que inclua o Python e as bibliotecas cliente do MySQL. Não sei se alguém conseguiu fazer isso com sucesso.

Outra sugestão:se você realmente não precisa de um servidor remoto, considere usar o SQLite. Suporte para SQLite está incluído na biblioteca padrão do Python.