Как выполнить программу с доступом к mysql за пределами опубликованной папки? - PullRequest
0 голосов
/ 31 января 2019

У меня есть консольное приложение ядра .net, которое обращается к MySQL.Я скомпилировал приложение для успешной работы на моем Raspberry Pi, который также содержит базу данных MySQL.После того, как я скомпилировал свой скомпилированный код в мой raspberry pi, я могу успешно запустить код, если я нахожусь в папке, содержащей приложение.Однако, если я поднимусь на уровень и попробую запустить приложение.Я получаю ошибку аутентификации от MySQL.Например, внутри моей папки публикации я могу запустить ./Application без каких-либо проблем.Если я поднимаюсь на уровень и затем запускаю, например, публикацию / приложение, произойдет сбой с ошибкой аутентификации.

Ниже приведено исключение, которое я получаю.

Необработанное исключение:MySql.Data.MySqlClient.MySqlException: доступ запрещен для пользователя '' @ 'localhost' (используя пароль: НЕТ)

Также ниже вы можете увидеть файл настроек моего приложения, который содержит информацию о моем соединении.

{
  "ConnectionStrings": {
    "TestDB": "Server=127.0.0.1;Database=TestDB;Uid=remote;Pwd=remote"
  }
}

Вот также запрос, который я использовал для предоставления доступа моего пользователя к БД.

GRANT ALL PRIVILEGES ON TestDB.* TO remote@'%' IDENTIFIED BY 'remote';

Кто-нибудь знает, что может быть причиной этой проблемы?Моя конечная цель - иметь возможность запускать приложение из любого каталога, чтобы добавить его в демон cron.

Буду признателен за любую помощь.

Спасибо.

1 Ответ

0 голосов
/ 31 января 2019

Я думаю, у вас есть ошибка в строке подключения.

Попробуйте:

{
  "ConnectionStrings": {
    "TestDB": "Server=127.0.0.1;Database=TestDB;User=remote;Password=remote"
  }
}

Я только что заменил Uid и Pwd на User и Password

...