Почему я продолжаю получать mysql ошибку 1042?

Я создаю веб-API ASP.NET на VPS Linux, с помощью Apache и mod_mono. Я имею все настроенное и успешно продемонстрировал, что веб-маршруты API работают.

Мои новейшие локальные изменения добавляют интеграцию с mysql базой данных. На моей машине разработки это работает отлично. Однако каждый раз, когда я загружаю опубликованный API, соединение со сбоями базы данных. Я сделал некоторое рытье и понял, что исключение, выданное ошибка отчетов 1042 - не Может получить имя хоста для Вашего адреса.

Вот моя строка подключения:

SERVER={0};DATABASE={1};UID={2};PASSWORD={3}; (сервер является localhost, и другие значения заполнены в соответственно).

Что я делаю неправильно? Как я могу заставить это соединяться с mysql? У меня нет проблем при соединении из той же учетной записи, которую я пытаюсь использовать, когда я - ssh'ed в на моей администраторской учетной записи...

Править:

Я попытался поместить skip-name-resolve в/var/mysql/my.cnf, но это ничего не сделало. Я также попытался сбросить хосты в mysql.

0
задан 7 August 2015 в 11:46

1 ответ

Ваш API, кажется, правильно не разрешает "localhost" часть строки соединения с базой данных. При замене "localhost" IP-адресом он может соединиться с сервером по сети, таким образом, пропустив часть твердости.

Однако Ваш сервер MySQL должен предоставить доступ по сети. Это - установка не по умолчанию, для которой вполне достаточная справка доступна в другом месте на этом сайте.

Имеют в виду, что Вы теперь трудно кодировали IP-адрес в программное обеспечение API. Удостоверьтесь, что программное обеспечение продолжает функционировать даже после изменения сети, например, путем замены IP-адреса надлежащим именем хоста.

0
ответ дан 1 October 2019 в 05:16

Другие вопросы по тегам:

Похожие вопросы: