Pergunta

Consigo fazer o Python funcionar com o Postgresql, mas não consigo fazê-lo funcionar com o MySQL.O principal problema é que na conta de hospedagem compartilhada que tenho não tenho a capacidade de instalar coisas como Django ou PySQL, geralmente falho ao instalá-los no meu computador, então talvez seja bom não conseguir instalar no host.

eu encontrei bpgsql muito bom porque não requer instalação, é um único arquivo que posso ver, ler e depois chamar as funções.Alguém sabe de algo assim para MySQL?

Foi útil?

Solução

MySQLdb é o que eu usei antes.

Se o seu host estiver usando Python versão 2.5 ou superior, o suporte para bancos de dados sqlite3 será integrado (o sqlite permite que você tenha um banco de dados relacional que é simplesmente um arquivo em seu sistema de arquivos).Mas cuidado, comprador, o sqlite não é adequado para produção, então pode depender do que você está tentando fazer com ele.

Outra opção pode ser ligar para o seu anfitrião e reclamar ou mudar de anfitrião.Honestamente, hoje em dia, qualquer host que se preze e que suporte python e mysql deve ter o MySQLdb pré-instalado.

Outras dicas

Eu não tenho nenhuma experiência com http://www.SiteGround.com como host pessoalmente.

Isso é apenas um palpite, mas é comum que um host compartilhado suporte Python e MySQL com o módulo MySQLdb (por exemplo, GoDaddy faz isso).Experimente o seguinte script CGI para ver se o MySQLdb está instalado.

#!/usr/bin/python

module_name = 'MySQLdb'
head = '''Content-Type: text/html

%s is ''' % module_name

try:
    __import__(module_name)
    print head + 'installed'
except ImportError:
    print head + 'not installed'

Eu carreguei e recebi um erro interno

Premature end of script headers

Depois de muito brincar, descobri que se eu tivesse

import cgi
import cgitb; cgitb.enable()
import MySQLdb

Isso me daria uma resposta muito mais útil e diria que não foi instalado, você mesmo pode ver -> http://woarl.com/db.py

Curiosamente, isso produziria um erro

import MySQLdb
import cgi
import cgitb; cgitb.enable()

Olhei alguns dos outros arquivos que tinha lá em cima e parece que aquela biblioteca era um dos que eu já havia experimentado.

Você poderia tentar configurar sua própria instalação do python usando Python Virtual.Veja como configurar o Django usando-o aqui.Isso foi escrito há muito tempo, mas mostra como configurei o MySQLdb sem ter acesso root ou algo parecido.Depois de aprender o básico, você pode instalar qualquer biblioteca python que desejar.

Você realmente deseja o MySQLdb para qualquer código MySQL + Python.No entanto, você não deve precisar de acesso root nem nada para usá-lo.Você pode compilá-lo/instalá-lo em um diretório de usuário (~/lib/python2.x/site-packages) e apenas adicioná-lo à sua variável de ambiente PYTHON_PATH.Isso deve funcionar para praticamente qualquer biblioteca python.

Experimente, realmente não há uma boa alternativa.

Faça uma escolha em

https://docs.djangoproject.com/en/1.8/ref/databases/

MySQLdb é o driver mais usado, mas se você estiver usando python3 e Django 1.8.x que não funcionarão, então você deve usar mysqlclient que é popular do MySQLdb no link a seguir

https://pypi.python.org/pypi/mysqlclient

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top