Удаленное подключение mysql через wamp

 MySqlConnection con = new MySqlConnection("Server = 'ip_adress'; Database = 'db'; Uid = 'root'; Pwd = 'test'; SslMode = none");

Привет! Я пытаюсь подключиться к своей базе данных mysql, используя свой ip вместо localhost. Используя localhost, все в порядке, но он не может подключиться, когда я использую ip. Я следил за большинством, если не за всеми ветками по этой теме, но до сих пор не могу это исправить. Я могу подключиться к phpmyadmin с помощью ipadress, я предоставил полные привилегии root, установил хост на%, перенаправил порт 3306 и 80. Я ценю любую помощь. Спасибо

Переадресация порта должна быть 3306, а не 3606.

James Wong 26.06.2018 15:01

неправильно написано. я добрался до 3306

A. Dravid 26.06.2018 15:02

Я полагаю, вы сбросили привилегии SQL и перезапустили маршрутизатор?

James Wong 26.06.2018 15:20

я сделал это .. но я не думаю, что это проблема с пользователями. он просто не может подключиться к ip, если пользователь будет проблемой, я думаю, я получу еще одну ошибку.

A. Dravid 26.06.2018 15:22

это C# что ли? Какую именно ошибку вы получаете?

ADyson 26.06.2018 15:26

Ваше приложение действительно не должно входить в систему как root, если вы можете ему помочь, создайте учетную запись специально для него, которая имеет только те привилегии, которые ему действительно требуются для выполнения своей работы. В любом случае, действительно ли mysql настроен для прослушивания внешних подключений на этом IP-адресе (что будет выглядеть, когда вы используете IP-адрес, даже если физически ваш клиент находится на том же компьютере)? Глупый вопрос, но вы проверили правильность IP-адреса? Есть ли на машине какой-либо брандмауэр?

ADyson 26.06.2018 15:27

Установите PsPing и с удаленного хоста попробуйте запустить TCP ping с помощью psping 192.0.0.0:3306 -T. Если он говорит, что пакет потерян, это означает, что брандмауэр блокирует этот порт. Вы можете получить PsPing здесь docs.microsoft.com/en-us/sysinternals/downloads/psping (PS: nmap может сделать то же самое, если он у вас установлен)

James Wong 26.06.2018 15:30
stackoverflow.com/questions/14779104/… также может быть полезным ресурсом
ADyson 26.06.2018 15:31
i.imgur.com/oag3mYb.png Я создал нового пользователя, я все еще получаю ту же ошибку. «Невозможно подключиться ни к одному из указанных mysql»
A. Dravid 26.06.2018 15:32

он слушает 3306, он не возвращает 100% потерю пакетов. Я думаю, что настроил его для внешних подключений, как я уже сказал, я следовал большинству руководств. единственное, что я не сделал, так это раскомментировал bind-adress: 127.0.0.1, потому что его нет. Я остановил брандмауэр, та же ошибка

A. Dravid 26.06.2018 15:45

@ A.Dravid Попробуй отредактировать на bind-address = 0.0.0.0

James Wong 26.06.2018 15:56

это действительно помогло ... я не понимаю почему, но большое вам спасибо, ребята <3

A. Dravid 26.06.2018 16:01

это потому, что он связывает его со всеми интерфейсами, а не только с localhost

ADyson 26.06.2018 16:27
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
13
3 401
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Поскольку это сработало для вас, я опубликую это как ответ :) Что проливает свет на вашу ситуацию, так это то, что вы упомянули, что привязка порта MySQL в конфигурации установлена ​​на

bind-address = 127.0.0.1

Вышеупомянутая конфигурация означала, что MySQL слушает только входящие запросы от localhost. Чтобы он слушал все интерфейсы, измените его на

bind-address = 0.0.0.0

Возможны риски безопасности, связанные с прослушиванием всех интерфейсов. Этот риск можно снизить, занеся в белый список определенные IP-адреса, указав пользователей с определенного хоста или добавив правила брандмауэра на сетевом уровне.

CREATE USER 'dbuser'@'192.0.0.100';

Справка:

Рад, что у вас все получилось, и наслаждайтесь пребыванием в SO. Ваше здоровье!

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