Bhola Ram Sahu Ответов: 2

Как можно получить доступ к базе данных mysql, используемой на веб-сайте (PHP), к оконному приложению C#


Я создал оконное приложение с c# и веб-сайт с PHP.

Я хочу использовать одну и ту же базу данных в обоих приложениях.

Веб-сайт работает правильно (очевидно, он размещен на сервере Linux).

Я не могу использовать одну и ту же базу данных в оконном приложении C#.

Когда я пытаюсь подключиться через C#, я получаю ошибку...




Доступ запрещен для пользователя 'user' @ 'localhost' (использование пароля: да)

Что я уже пробовал:

MySqlConnection кон = новый MySqlConnection (параметр"Server=localhost; для базы данных=имя_базы_данных; пользователь=пользователь; пароль=пароль");



//Та же конфигурация работает и на веб-сайте.

ZurdoDev

Все, что вам нужно сделать, это правильно настроить строку подключения. Это должно быть очень просто.

2 Ответов

Рейтинг:
1

pravinchopade

Попробуйте использовать IP-адрес вместо localhost и указать номер порта.

MySqlConnection con = new MySqlConnection(
"Server=127.0.0.1;Port=3306;Database=database_name;Uid=user;Pwd=password;");


Рейтинг:
0

Richard Deeming

Название "localhost" означает "этот компьютер".

Ваш PHP-код работает на сервере Linux. База данных MySQL работает на том же сервере Linux, поэтому использование "localhost" в строке подключения PHP-это нормально.

Ваше приложение C# (предположительно) не работает на этом сервере Linux. Скорее всего, он работает на компьютере с Windows. Если вы попросите этот код подключиться к базе данных MySQL на том же компьютере, что и приложение C# , он либо не будет работать, либо не будет подключен к тому же экземпляру базы данных.

Вам необходимо обновить строку подключения C#, чтобы указать правильное имя компьютера или IP-адрес сервера Linux, на котором размещена база данных. Возможно, Вам также потребуется настроить экземпляр MySQL в поле Linux, чтобы разрешить подключения с других компьютеров.