У меня есть небольшое приложение С# (VS 2017, UWP) на машине разработчика, которая должна кормить базу данных mysql на другой машине.
С помощью MySQL-оболочки я могу подключиться, но приложение не может (доступ к одному сокету запрещен из-за разрешений сокета для этого сокета).
Приложение отлично работает с базой данных на машине разработчика (localhost). После нескольких часов поиска в Интернете я понимаю, что удаленный доступ происходит через сокет или TCP; Кроме того, этот сокет на самом деле не вещь в Windows.
Однако в my.ini файле есть 2 места с сокетом (#socket = 0.0 и # socket = MySQL, с которым я ранее не комментировал ошибку).
У меня есть TCP-соединение, так почему же возникает ошибка сокета? Именованная труба каким-то образом похожа на Windows-эквивалент на сокет, но ограничивается локальным подключением и снова как альтернатива TCP, как я ее понимаю.
Странно то, что в статусе сервера workbench путь к файлу конфигурации показывает "... MySQL Server 5.5\my.ini", хотя сервер - 5.7, что также является реальным именем папки. Можно подумать, что файл конфигурации не найден, но почему соединение работает при использовании оболочки? Может ли оболочка установить соединение без my.ini? Это может быть ошибка?
Я переустановил MySQL, потому что думал, что есть поврежденная установка, но такой же результат. (На машине разработчика путь правильный.
Был бы очень рад, если бы кто-то мог помочь!
Разъем unix предназначен для связи между процессом на одном и том же хосте. На локальном компьютере вы можете использовать сокет или TCP. Если вы хотите удаленное соединение, то это TCP.