django.db.utils.OperationalError: (2013, «Потерянное соединение с сервером MySQL при« рукопожатии: чтение исходного пакета связи », системная ошибка: 0») - PullRequest
1 голос
/ 03 июля 2019

Я разрабатываю приложение в django, чтобы перенести его на Heroku, и, пытаясь перенести базу данных в mysql на heroku, я установил pip-версию mysql-python, и при попытке запустить сервер я получил эту ошибку:

django.db.utils.OperationalError: (2013, «Потерянное соединение с сервером MySQL при« рукопожатии: чтение исходного пакета связи », системная ошибка: 0»)

(У меня была включена моя виртуальная среда).
Странно то, что пакет установил python, даже если он у меня уже установлен.
Я обнаружил, что он не содержит django и несколько ранее установленных модулей, даже pip!

Я переустановил модули, но теперь, когда я запускаю сервер, я получаю эту ошибку выше.
Если я запускаю сервер из другого каталога приложения, база данных работает нормально.
Может быть, этосвязан с чем-то, что я установил в своем каталоге и, возможно, был перезаписан странным пакетом?

вот мой результат замораживания пипсов:

certifi==2019.6.16<br>
dj-database-url==0.5.0<br>
Django==2.2.3<br>
django-heroku==0.3.1<br>
gunicorn==19.9.0<br>
mysql-connector-python==8.0.16<br>
mysqlclient==1.4.2.post1<br>
protobuf==3.6.0<br>
psycopg2==2.8.3<br>
PyMySQL==0.9.3<br>
python-decouple==3.1<br>
pytz==2019.1<br>
six==1.12.0<br>
sqlparse==0.3.0<br>
whitenoise==4.1.2<br>
wincertstore==0.2<br>

Я сейчас удалюпроект и попытаться восстановить его заново, насколько я понимаю, что испортил проект была моя попытка установить mysql-python.

Сбор mysql-python Использование кэшированного https://files.pythonhosted.org/packages/a5/e9/51b544da85a36a68debe7a7091f068d802fc515a3a202652828c73453cad/MySQL-python-1.2.5.zipСборка колес для собранных пакетов: mysql-python Сборка колес для mysql-python (setup.py) ... ошибка ОШИБКА: завершить вывод команды 'C: \ Applicazioni_Tommaso \ Anaconda3 \ envs \ met3 \ python.exe' -u -c'import setuptools, tokenize; file =' "'"' C: \ Users \ Tommaso \ AppData \ Local \ Temp \ pip-install-yr8h0ec1 \ mysql-python \ setup.py '"'" "; f = getattr (tokenize, '"'" 'open' "'"', open) ( file ); code = f.read (). replace ('"'" '\ r \ n'"'" ',' "'"' \ n '"'" '); f.close (); exec (compile (code, file ,' "'"' exec '"'"'))' bdist_wheel -d 'C: \ Users \ Tommaso \ AppData \ Local \ Temp \ pip-wheel-ywwxryy8' --python-tag cp37: ОШИБКА: выполняется bdist_wheel, выполняется build, выполняется build_py, создает build, создает build \ lib.win-amd64-3.7 копирование _mysql_exceptions.py -> build \ lib.win-amd64-3.7 создание build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb__init__.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ converters.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ connections.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ cursors.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ release.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ times.py -> build \ lib.win-amd64-3.7 \ MySQLdb создание сборки \ lib.win-amd64-3.7 \ MySQLdb \ constants, копирующей MySQLdb \ constants__init __. py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constantsкопирование MySQLdb \ constants \ CR.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants
копирование MySQLdb \ constants \ FIELD_TYPE.py -> сборка \ lib.win-amd64-3.7 \ MySQLdb \ constants копированиеMySQLdb \ constants \ ER.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants
копирование MySQLdb \ constants \ FLAG.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants, копирование MySQLdb\ constants \ REFRESH.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants, копирующие MySQLdb \ constants \ CLIENT.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants, выполняющий build_ext
сборка расширения '_mysql' создание сборки \ temp.win-amd64-3.7
создание сборки \ temp.win-amd64-3.7 \ Release C: \ Program Files (x86) \ Microsoft Visual Studio\ 2017 \ BuildTools \ VC \ Tools \ MSVC \ 14.16.27023 \ bin \ HostX86 \ x64 \ cl.exe / c / nologo / Ox / W3 / GL / DNDEBUG / MD -Dversion_info = (1,2,5, 'final', 1) -D__version __ = 1.2.5 "-IC: \ Program Files (x86) \ MySQL \ MySQL, Connector C 6.0.2 \ include" -IC: \ Applicazioni_Tommaso \ Anaconda3 \ envs \ met3 \ include -IC: \ Applicazioni_Tommaso\ Anaconda3 \ envs \ met3 \ include "-IC: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ VC \ Tools \ MSVC \ 14.16.27023 \ include" "-IC: \ Program Files (x86) \Комплекты Windows \ 10 \ include \ 10.0.10240.0 \ ucrt "" -IC: \ Program Files (x86) \ Комплекты Windows \ 8.1 \ include \ shared "" -IC: \ Program Files (x86) \ Комплекты Windows \ 8.1 \ include\ um "" -IC: \ ПрограммаФайлы (x86) \ Windows Kits \ 8.1 \ include \ winrt "" -IC: \ Program Files (x86) \ Windows Kits \ 8.1 \ include \ cppwinrt "/Tc_mysql.c /Fobuild\temp.win-amd64-3.7\Release_mysql.obj / Zl _mysql.c
_mysql.c (42): фатальная ошибка C1083: невозможность включения файла: 'config-win.h': нет такого файла или каталога: ошибка: команда 'C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ инструмент сборки \ VC \ Tools \ MSVC \ 14.16.27023 \ Bin \ HostX86 \ x64 \ cl.exe» Сбой при выходе из состояния 2 ----------------------------------------
ОШИБКА: сбой при сборке колеса для mysql-python. Запуск setup.py clean для mysql-python Не удалось собрать mysql-python Установка собрана пакеты: mysql-python Запуск setup.py для установки mysql-python ... ошибка ОШИБКА: завершить вывод команды «C: \ Applicazioni_Tommaso \ Anaconda3 \ envs \ met3 \ python.exe» -u -c 'import Setuptools, токенизировать; файл = ' " ' " 'C: \ Users \ Томмазо \ AppData \ Local \ Temp \ пип-установки-yr8h0ec1 \ MySQL-питона \ setup.py'"'"'; е = GetAttr (токенизировать, '"'" 'open' "'"', open) ( file ); code = f.read (). replace ('"'" '\ r \ n' "'"', '"'" '\ n' "'"'); f.close (); exec (скомпилировать (код, file , '"'" 'exec' "'"')) " установить --record 'C: \ Users \ Томмазо \ AppData \ Local \ Temp \ пип-запись-dwqliwhp \ установка-record.txt' --single-version-внешне управляемый --compile: ОШИБКА: запущена установка бегущая сборка работает build_py создание сборки создание сборки \ lib.win-amd64-3.7 копирование _mysql_exceptions.py -> build \ lib.win-amd64-3.7 создание сборки \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb__init__.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ converters.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ connections.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ cursors.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ release.py -> build \ lib.win-amd64-3.7 \ MySQLdb копирование MySQLdb \ times.py -> build \ lib.win-amd64-3.7 \ MySQLdb создание сборки \ lib.win-amd64-3.7 \ MySQLdb \ constants копирование MySQLdb \ constants__init __. py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants копирование MySQLdb \ constants \ CR.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants копирование MySQLdb \ constants \ FIELD_TYPE.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants копирование MySQLdb \ constants \ ER.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants копирование MySQLdb \ constants \ FLAG.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants копирование MySQLdb \ constants \ REFRESH.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants копирование MySQLdb \ constants \ CLIENT.py -> build \ lib.win-amd64-3.7 \ MySQLdb \ constants работает build_ext построение расширения _mysql создание сборки \ temp.win-amd64-3.7 создание сборки \ temp.win-amd64-3.7 \ Release C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ VC \ Tools \ MSVC \ 14.16.27023 \ bin \ HostX86 \ x64 \ cl.exe / c / nologo / Ox / W3 / GL / DNDEBUG / MD -Dversion_info = (1,2,5, 'final', 1) -D__version __ = 1.2.5 "-IC: \ Program Files (x86) \ MySQL \ MySQL, Connector C 6.0.2 \ include" -IC: \ Applicazioni_Tommaso \ Anaconda3 \ envs \ met3 \ include -IC: \ Applicazioni_Tommaso \ Anaconda3 \ envs \ met3 \ include "-IC: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ инструмент сборки \ VC \ Tools \ MSVC \ 14.16.27023 \ включают» "-IC: \ Program Files (x86) \ Windows Kits \ 10 \ include \ 10.0.10240.0 \ ucrt" «-IC: \ Program Files (x86) \ Windows Kits \ 8.1 \ include \ shared» "-IC: \ Program Files (x86) \ Windows Kits \ 8.1 \ include \ um" "-IC: \ Program Файлы (x86) \ Windows Kits \ 8.1 \ include \ winrt "" -IC: \ Program Files (x86) \ Windows Kits \ 8.1 \ include \ cppwinrt "/Tc_mysql.c /Fobuild\temp.win-amd64-3.7\Release_mysql.obj / Zl _mysql.c _mysql.c (42): фатальная ошибка C1083: невозможность включения файла: config-win.h: нет такого файла или каталога ошибка: команда 'C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ VC \ Tools \ MSVC \ 14.16.27023 \ bin \ HostX86 \ x64 \ cl.exe' не удалось выйти из состояния 2---------------------------------------- ОШИБКА: Команда "'C: \ Applicazioni_Tommaso \" Anaconda3 \ envs \ met3 \ python.exe '-u -c 'импорт setuptools, токенизировать; файл = ' " ' " 'C: \ Users \ Томмазо \ AppData \ Local \ Temp \ пип-установки-yr8h0ec1 \ MySQL-питона \ setup.py'"'"'; е = GetAttr (токенизировать, '"'" 'open' "'"', open) ( file ); code = f.read (). replace ('"'" '\ r \ n' "'"', '"'" '\ n' "'"'); f.close (); exec (скомпилировать (код, file , '"'" 'exec' "'"')) " установить --record 'C: \ Users \ Томмазо \ AppData \ Local \ Temp \ пип-запись-dwqliwhp \ установка-record.txt' --single-version-внешне управляемый --compile "не удалось с кодом ошибки 1 в C: \ Users \ Томмазо \ AppData \ Local \ Temp \ пип-установки-yr8h0ec1 \ MySQL-питон \

Ответы [ 4 ]

0 голосов
/ 11 июля 2019

решаемые

После исправления, как я описал в предыдущем ответе , Я обнаружил, что у Heroku есть некоторые проблемы с управлением базой данных mysql, даже если они связаны с надстройкой ClearDB. Поэтому я перестроил базу данных в Postgresql, поэтому мне больше не нужны модули Python mysql. Это сделало меня больше не спотыкающимся в предыдущих конфликтах между Джанго и Героку.

0 голосов
/ 03 июля 2019

Обновление:

Оказывается, пытаясь

pip install mysql-python

было то, что полностью испортило мой проект У меня были удалены все установленные модули с моего компьютера: Пип, Конда, Питон, Джанго ...

0 голосов
/ 05 июля 2019

Обновление: Плохая команда, то есть

pip install mysql-python

установил мой путь по умолчанию для Python 2.7 вместо 3.7.

Чтобы это исправить, мне пришлось (Windows 10):

Cortana> панель поиска> введите "env"> изменить переменные среды для системы> переменные среды> выберите "Путь"> изменить>

создайте и переместите наверх (или просто переместитесь наверх) путь, по которому вы установили python 3.7.

Сохранить> закрыть анаконду. Это заставило Pyhton и его модули работать снова. Пришлось переустанавливать pip, теперь снова работает. Но когда моя виртуальная среда включена, у меня проблемы с подключенной базой данных в mysql.

0 голосов
/ 03 июля 2019

Это может быть Firewall проблема.Убедитесь, что порт, на котором вы работаете, MySQL открыт для входящего трафика с IP, где работает App.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...