Не удается подключиться к MySQL из bash на Heroku для ClearDB - PullRequest
0 голосов
/ 02 мая 2018

Я пытаюсь получить доступ к моей базе данных ClearDB MySQL на Heroku через mysql.

Я использую Cloud9 для доступа к Heroku и отправки своего кода. Я настроил ClearDB MySQL Ignite в соответствии с руководством по началу работы Heroku. В приложении, которое я пытаюсь запустить, было несколько сценариев для настройки баз данных, и я запустил их через bash Heroku, и база данных была создана, и я вижу, что они работают, когда я посещаю мое приложение, но кое-как я не могу получить mysql подсказка из командной строки Heroku.

Я использую это руководство для доступа к приглашению mysql Как использовать команды Mysql с ClearDB в Heroku?

Я получаю следующую ошибку:

bash: mysql: command not found

Как я могу это исправить?

1 Ответ

0 голосов
/ 02 мая 2018

Почему mysql не работает на оболочке Heroku?

Heroku dynos содержит приложения slug и немного другого. Они больше похожи на контейнеры Docker, чем на традиционные серверы. Если вы хотите использовать что-то в своем приложении, в том числе через одноразовые динамо, такие как тот, который вы получаете через heroku run bash, вам нужно убедиться, что оно включено в ваш слаг.

Клиент командной строки mysql не будет доступен по умолчанию.

Должен ли я добавить mysql к своему слагу?

Я бы не рекомендовал это.

Думайте о своем слаге как о пакете для запуска приложения, а не как о полном сервере. Включите то, что вам нужно для запуска вашего приложения (например, базу данных , библиотеку для любого языка, который вы используете) и не включайте посторонние вещи.

Стоит отметить, что существует максимальный размер для слизней.

Тогда как я могу получить доступ к моей базе данных?

Вместо запуска mysql на Heroku, попробуйте запустить его с вашего терминала Cloud9. Если вы используете правильные параметры для своего хоста, пользователя, пароля и порта, как описано в сообщении, к которому вы привязаны, оно должно подключаться к вашей базе данных ClearDB.

В тестовом рабочем пространстве, которое я настроил, чтобы попробовать это, уже установлено mysql. Если у вас нет, вы можете установить его. Моя рабочая область основана на Ubuntu 14.04:

$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.5 LTS"

На этой ОС должна быть возможность установить mysql, запустив

sudo apt-get install mysql-client-5.5
...