Pregunta

Puedo hacer que Python funcione con Postgresql pero no puedo hacerlo con MySQL.El principal problema es que en la cuenta de alojamiento compartido que tengo no tengo la capacidad de instalar cosas como Django o PySQL, generalmente fallo al instalarlos en mi computadora, así que tal vez sea bueno que no pueda instalarlos en el host.

encontré bpgsql realmente bueno porque no requiere instalación, es un archivo único que puedo mirar, leer y luego llamar a sus funciones.¿Alguien sabe de algo como esto para MySQL?

¿Fue útil?

Solución

MySQLdb es lo que he usado antes.

Si su servidor utiliza Python versión 2.5 o superior, el soporte para bases de datos sqlite3 está integrado (sqlite le permite tener una base de datos relacional que es simplemente un archivo en su sistema de archivos).Pero tenga cuidado con el comprador, sqlite no es adecuado para la producción, por lo que puede depender de lo que intente hacer con él.

Otra opción puede ser llamar a su anfitrión y quejarse, o cambiar de anfitrión.Honestamente, hoy en día, cualquier proveedor de alojamiento web que se precie y que admita Python y MySQL debería tener MySQLdb preinstalado.

Otros consejos

No tengo ninguna experiencia con http://www.SiteGround.com como proveedor de alojamiento web personalmente.

Esto es sólo una suposición, pero es común que un host compartido admita Python y MySQL con el módulo MySQLdb (por ejemplo, GoDaddy hace esto).Pruebe el siguiente script CGI para ver si 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'

Lo subí y me salió un error interno.

Premature end of script headers

Después de mucho jugar, descubrí que si tuviera

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

Me daría una respuesta mucho más útil y diría que no estaba instalado, puedes verlo tú mismo -> http://woarl.com/db.py

Por extraño que parezca, esto produciría un error.

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

Miré algunos de los otros archivos que tenía allí y parece que esa biblioteca era una de las que ya había probado.

Podrías intentar configurar tu propia instalación de Python usando Pitón virtual.Mira cómo configurar Django usándolo aquí.Esto fue escrito hace mucho tiempo, pero muestra cómo configuré MySQLdb sin tener acceso de root ni nada parecido.Una vez que tenga los conceptos básicos, puede instalar cualquier biblioteca de Python que desee.

Realmente quieres MySQLdb para cualquier código MySQL + Python.Sin embargo, no debería necesitar acceso de root ni nada para usarlo.Puede compilarlo/instalarlo en un directorio de usuario (~/lib/python2.x/site-packages) y simplemente agregarlo a su variable de entorno PYTHON_PATH.Esto debería funcionar para casi cualquier biblioteca de Python.

Pruébalo, realmente no existe una buena alternativa.

Elija en

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

MySQLdb es el controlador más utilizado, pero si está utilizando python3 y django 1.8.x que no funcionan, entonces debe usar mysqlclient, que es una versión de MySQLdb en el siguiente enlace.

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

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top