Подключите MySQL базу данных в AWS EC2 для Apache SuperSet - PullRequest
0 голосов
/ 17 февраля 2020

Я изучаю Apache SuperSet. Я хочу подключиться к базе данных mysql на сервере, т.е. к экземпляру EC2. Я установил все необходимые библиотеки на основе https://superset.incubator.apache.org/installation.html.I did go - https://docs.sqlalchemy.org/en/12/core/engines.html#database -urls . Хотя у меня есть библиотека, все же, когда я пытаюсь подключить mysql, он говорит: «Нет модуля с именем« MySQLdb »».

Мне интересно, если URL mysql: // {username}: {пароль } @ {IP-адрес экземпляра ec2} / {имя базы данных} само верно? Пожалуйста, помогите мне, как продолжить?

добавлена ​​информация: Шаги следовали

  1. У меня есть сервер с источником данных mysql, и я также запускаю суперсет с того же сервера.
  2. Я добавил входящее правило с IP-адресом 0.0.0.0 на порт 8088.
  3. Я успешно запустил суперсет с помощью суперсета run -h 0.0.0.0 -p 8088 --with-threads - -debugger --reload
  4. После этого я попытался создать новый источник данных в расширенном наборе, источник данных - mysql на том же экземпляре ec2. (Мне также нужно будет подключиться к другому источнику данных на другом сервер)
  5. Я использовал следующее в соответствии с рекомендациями: mysql: // username:password@host: 3306 / dbname (дополнительная информация: в /etc/mysql/my.cnf следующий уже настроенный порт: 3306, bind-address: 127.0.0.1)
  6. При тестировании соединения получена ошибка

новая ошибка, которую я получаю - "Соединение не удалось! \ n \ nВ результате было возвращено сообщение об ошибке: \ n (MySQLdb._exceptions.OperationalError) (2003, \ "Невозможно подключиться к MySQL серверу по {ip address}"

1 Ответ

0 голосов
/ 17 февраля 2020

Скорее всего, вам нужно указать порт хоста, как в mysql://username:password@host:port/dbname.
Вам также необходимо убедиться, что IP-адрес вашего экземпляра EC2 является общедоступным c - это то, что вы будете выделять при настройке. ваш экземпляр.

...