Django Операционная ошибка на внешнем соединении БД - PullRequest
0 голосов
/ 27 августа 2018

Я использую Azure Virtual Machine с ubuntu server.

I ssh в машине и установил сервер лампы (а также phpmyadmin, поэтому я могу просматривать через браузер свои базы данных ивыполнить операции).Мой django проект выполняется на моем macbook.

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

Допустим, 1.2.3.4 - это моя ВМ IP.

settings.py

DATABASES = {
    # mysql
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'DBname',
        'USER': 'rootuser',
        'PASSWORD': 'rootPassword',
        'HOST': '1.2.3.4',
    },
}

Выводpython manage.py runserver:

django.db.utils.OperationalError:
  (2003, "Can't connect to MySQL server on '1.2.3.4' (timed out)")

Нужно ли настраивать базу данных mysql?Разве 1.2.3.4 не тот же IP, который мне нужно использовать для соединения с БД?

Также, когда я пытаюсь установить mysqlclient с pip install mysqlclient, возникает ошибка:

Command "python setup.py egg_info" failed with error code 1
  in /private/var/folders/st/8qzvdtwx6xsc1w1ffqd2c7br0000gn/T/pip-install-p25gukfh/mysqlclient/

1 Ответ

0 голосов
/ 27 августа 2018

Я немного заржавел на mysql соединениях, но, как указано в этот ответ :

По умолчанию отключен удаленный root доступ. Если вы хотите включить это, запустите этот SQL [...]

Может быть, вы можете проверить это в первую очередь, чтобы исключить такую ​​ошибку. Или попробуйте другого пользователя, который не root.

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