Сведения о вопросе

nikolya

16:03, 1st July, 2020

Теги

python   mysql   postgresql   bpgsql    

Python и MySQL

Просмотров: 543   Ответов: 6

Я могу заставить Python работать с Postgresql, но я не могу заставить его работать с MySQL. Основная проблема заключается в том, что на общей учетной записи хостинга у меня нет возможности устанавливать такие вещи, как Django или PySQL, я обычно не могу установить их на свой компьютер, поэтому, возможно, это хорошо, что я не могу установить на хосте.

Я нашел bpgsql действительно хорошим, потому что он не требует установки, это один файл, который я могу посмотреть, прочитать, а затем вызвать функции. Кто-нибудь знает что-то подобное для MySQL?



  Сведения об ответе

Chhiki

18:03, 1st July, 2020

MySQLdb - это то, что я использовал раньше.

Если ваш хост использует Python версии 2.5 или выше, поддержка баз данных sqlite3 встроена (sqlite позволяет иметь реляционную базу данных, которая является просто файлом в вашей файловой системе). Но покупатель остерегается, sqlite не подходит для производства, поэтому это может зависеть от того, что вы пытаетесь с ним сделать.

Другой вариант может заключаться в том, чтобы позвонить своему хосту и пожаловаться или сменить хост. Честно говоря, в наши дни любой уважающий себя веб-хост, который поддерживает python и mysql, должен иметь MySQLdb предварительно установленных.


  Сведения об ответе

FAriza

18:03, 1st July, 2020

У меня лично нет никакого опыта работы с http://www.SiteGround.com в качестве веб-хостинга.

Это всего лишь предположение, но обычно общий хост поддерживает Python и MySQL с модулем MySQLdb (например, это делает GoDaddy). Попробуйте выполнить следующий сценарий CGI, чтобы узнать, установлен ли MySQLdb.

#!/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'


  Сведения об ответе

lool

18:03, 1st July, 2020

Я загрузил его и получил внутреннюю ошибку

Premature end of script headers

После долгих игр вокруг, я обнаружил, что если бы я имел

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

Это дало бы мне гораздо более полезный ответ и сказать, что он не был установлен, вы можете увидеть его сами -> http://woarl.com/db.py

Как ни странно, это привело бы к ошибке

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

Я просмотрел несколько других файлов, которые у меня там были, и, похоже, что библиотека была одной из тех, которые я уже пробовал.


  Сведения об ответе

pumpa

18:03, 1st July, 2020

Вы можете попробовать настроить свою собственную установку python с помощью Virtual Python . Проверьте, как настроить Django с его помощью здесь . Это было написано очень давно, но это показывает, как я получил установку MySQLdb, не имея корневого доступа или чего-то подобного. Как только вы освоите основы, вы сможете установить любую библиотеку python, какую захотите.


  Сведения об ответе

prince

18:03, 1st July, 2020

Вы действительно хотите MySQLdb для любого кода MySQL + Python. Тем не менее, вам не должен быть нужен root-доступ или что-то еще, чтобы использовать его. Вы можете построить / установить его в директорию пользователя (~/lib/python2.x/site-packages) и просто добавить его в переменную PYTHON_PATH env. Это должно работать практически для любой библиотеки python.

Дайте ему шанс, на самом деле нет хорошей альтернативы.


  Сведения об ответе

SSESION

18:03, 1st July, 2020

Возьмите выбор на

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

MySQLdb в основном используется драйвер, но если вы используете python3 и django 1.8.x, что не будет работать, то вы должны использовать mysqlclient, который является народным MySQLdb по следующей ссылке

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


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться