Назад | Перейти на главную страницу

Локальное соединение MySQL не работает из tcp

После обновления моего vps до Ubuntu 16.04 (и примерно через месяц) мне нужно использовать сервер MySQL, который там работал. На самом деле это был экземпляр MariaDB, но, похоже, это не имеет никакого значения. Поскольку я не мог подключиться к туннелю ssh, как всегда, я попытался получить доступ напрямую из удаленной оболочки и с помощью mysql cli интерфейс работает. Дело в том, что я необходимость использовать сервер MySQL с локального IP (для удаленного туннелирования или для mysqli на php). Попытка установить TCP-соединение с mysql --protocol tcp я получил ERROR 1698 (28000): Access denied for user 'root'@'localhost', а php выдает это предупреждение: mysqli::__construct(): (HY000/1698): Access denied for user 'root'@'localhost'.

Я попытался очистить MariaDB, переустановить его, попытаться использовать сам пакет MySQL, удалить все конфигурации и файлы mysql, но безрезультатно.

В конфигурацию всегда входит bind-address = 127.0.0.1 и связанный порт, и это не комментируется, но кажется бесполезным.

Любые идеи?

Я это выяснил. Это был unix_socket плагин, связанный с учетной записью root. Я просто сбежал update user set plugin=''; и перезапустил mysql процесс, и это сработало.