Как подключиться к ProxySQL с настройкой по умолчанию в Docker

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

docker run -d -p 6032:6032 --name proxysql prima/proxysql:latest

Затем я попытался подключиться к нему из моего локального MySQL следующим образом:

mysql -u admin -padmin -h 127.0.0.1 -P6032

и я получаю эту ошибку:

ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0 "Internal error/check (Not system error)"

Я попробовал этот трюк с twindb/proxysql:latest а также prima/proxysql:latest образы докера и результат был тот же:(

2 ответа

Решение

Вам нужно на карту 6033 вместо 6032

docker run -d 6033:6033 --name proxysql prima/proxysql:latest

А потом беги ниже

mysql -u admin -padmin -h 127.0.0.1 -P6033

Внутри контейнера MySQL слушает 127.0.0.1:6032 и для внешних подключений он слушает на 0.0.0.0:6033, Так что вам нужно использовать 6033 для соединений снаружи контейнера

Вы не можете подключиться к proxysql извне контейнера в конфигурации по умолчанию. bash в контейнер proxysql и затем выполните

 mysql -u admin -p<password-here> -h 127.0.0.1 -P 6032 --prompt='proxysql>'

паролем по умолчанию будет админ

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