Акция!  Домен 34 грн, домен 55 грн, домен  - 200 грн домен  - 65 грн, домен  - 99 грн, домен  - 56 грн!, домен  - 425 грн!
Мы используем cookie-файлы
Для оптимизации работы нашего сайта мы используем cookie-файлы. Продолжая использовать сайт, Вы соглашаетесь с использованием cookie-файлов.
  • RUB
  • USD
  • EUR
  • UAH
Чат техподдержки
Вы являетесь клиентом?
  • +38(044) 392-74-33  Киев
  • +38(057) 728-39-00  Харьков
  • +38(056) 794-38-31  Днепр
  • +38(032) 229-58-93  Львов
  • +38(048) 738-57-70  Одесса
  • +38(093) 170-15-42  Life
  • +38(067) 400-88-44  Киевстар
  • +38(095) 630-90-82  MTC
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7(499) 348-28-61  Москва

Хостинг. Не работает запрос к базе данных в скрипте на python3!

Форумы Хостинг Не работает запрос к базе данных в скрипте на python3!
ramario
1 год
хостинг: есть
домен: есть
Не работает запрос к базе данных в скрипте на python3!
Есть скрипт:
#!/usr/bin/python3
import pymysql.cursors

print("Content-Type: text/html\n\n")
msg = "Hello, World!"
print("""%s""" % msg)

db = pymysql.connect(host='host.mysql.tools',
user='host_user',
password='12345',
db='host_bd')
cursor = db.cursor()
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print ("Database version : %s " % data)
db.close()

При вызове файла не выполняется код после строки print("""%s""" % msg).
В чём может быть проблема???
toxi
1 год
хостинг: есть
домен: есть
Должно работать: https://repl.it/repls/AggravatingStarryScale (Ваш код). Нужно немного подождать перед тем, как скрипт выведет ошибку о продключении к БД.
Прикрепленные файлы:
ramario
1 год
хостинг: есть
домен: есть
Я и так знаю что код рабочий. Но при вызове http://www.mysite.com/skript/skript.py выводится только "Hello, World!", но не выводится "Database version:" .Даже нет ошибки когда неправильно указаны параметры подключения к базе данных.
Код:
db = pymysql.connect(host='host.mysql.tools',
user='host_user',
password='12345',
db='host_bd')
cursor = db.cursor()
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print ("Database version : %s " % data)
db.close()

на сервере, походу, вообще не выполняется!!!
KarlovA
1 год
хостинг: есть
домен: есть
Проверил работу скрипта у себя и проблем не обнаружил, скрипт рабочий. На скриншоте сам скрипт и результат его выполнения — https://i.imgur.com/gPfjRdD.png
Возможно, стоит перепроверить параметры подключения к базе данных, указанные в скрипте. К примеру, если пароль указан неверно, скрипт выведет только «Hello, World!».
ramario
1 год
хостинг: есть
домен: есть
Если я скрипт запускаю в PyCharm, IDLE или здесь https://repl.it/repls/AggravatingStarryScale - всё работает, а на сервере не хочет.
Что на сервере (возможно настройки) может мешать скрипту подключаться к БД?????
alexandrpaliy
1 год
хостинг: есть
домен: есть
4
В Вашем случае pymysql.connect() не работала из-за того, что на сервере была установлена слишком старая версия pymysql - 0.6.2

Возникала ошибка
TypeError: __init__() got an unexpected keyword argument 'password'

потому что в версии 0.6.2 этот параметр назывался 'passwd'

Для наглядности, разница в списке параметров, которые ожидала видеть connect():
pymysql 0.6.2 - PyMySQL/connections.py at 92114cf35074abe4335c34d06a9b75bc6dcccad6 · PyMySQL/PyMySQL · GitHub (строка 500)
pymysql 0.8.0 - PyMySQL/connections.py at 0305541132b134047eb4ba70fc9acbc9be603d05 · PyMySQL/PyMySQL · GitHub (строка 569)

Перенесли аккаунт на сервер с версией pymysql 0.8.0, теперь ошибка проявляться не должна.
Участвовать в общении на этом форуме могут только
зарегистрированные пользователи.

Если вы уже зарегистрированы Вам необходимо войти на форум.