Как подключиться к 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>'
паролем по умолчанию будет админ