2

Фон

Так что у меня есть веб-сервер на Raspberry Pi, который прекрасно работает. Веб-сервер использует MySQL в фоновом режиме, и веб-страницы могут выполнять запросы без проблем. В последнее время я хочу установить прямые подключения к серверу MySQL, не заходя через веб-сервер. Я установил phpmyadmin на свой сервер (RaspberryPi) и могу подключиться с помощью host.com/phpmyadmin с помощью интерактивных руководств. Все это прекрасно работает, и у меня нет проблем на данный момент. Однако всякий раз, когда я пытаюсь подключиться через Интернет или даже в той же сети, это не работает.

Что я пробовал

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

Следующим шагом я пытаюсь подключиться с компьютера в той же сети. Я решил использовать HeidiSQL в качестве моего клиента. У меня hostname = 192.168.0.106 (локальный IP-адрес сервера), порт 3306 или 80 , user = valid user, а также пароль. На данный момент он не может подключиться к серверу. Я подтвердил, что используемый порт - 3306, стандартный с момента установки.

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

1 ответ1

3

Заставьте MySQL слушать все интерфейсы

Ваша версия MySQL может прослушивать интерфейс localhost (127.0.0.1 и т.д.) По умолчанию *. Вы можете заставить его прослушивать определенный интерфейс или все интерфейсы, если хотите.

Чтобы позволить ему слушать на всех интерфейсах:

  • открыть /etc/mysql/my.cnf
  • закомментируйте строку bind-address = 127.0.0.1 (→ #bind-address = 127.0.0.1)
  • перезапустите MySQL (например, перезапустите sudo service mysql restart или вы управляете сервисами)

* Обратите внимание, что согласно документации, адрес по умолчанию - 0.0.0.0 , но дистрибутивы могут изменить это.

Справка: Опции команд сервера (--bind-address)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .