Как поделиться сервером MySQL, работающим на Ubuntu под Docker, с ПК с Windows?

У меня сервер MySQL работает на Ubuntu 18.04 под Docker. Мне нужно загрузить отладчик MySQL (dbForge Studio) для разработки сложной хранимой процедуры. dbForge Studio работает только под Windows 10. Я обнаружил в своей сети компьютер с Windows 10 и загрузил dbForge Studio.

Когда я пытаюсь подключиться с компьютера Win к серверу MySQL (в Ubuntu), я получаю ошибку 10061, не удается подключиться . Как мне установить это соединение?

docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.XX.0.1  netmask 255.255.0.0  broadcast 172.XX.255.255
        ether 02:42:e5:9e:83:17  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Вот мое определение mysql в docker-compose:

mysql:
    container_name: "mysql"
    restart: unless-stopped
    image: mysql:5.7
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --sql_mode='' --general-log=1
    environment:
      - MYSQL_DATABASE
      - MYSQL_PASSWORD
      - MYSQL_ROOT_PASSWORD
      - MYSQL_USER
    volumes:
      - data:/var/lib/mysql
      - ./mysql/mysql.sql:/docker-entrypoint-initdb.d/mysql.sql
    ports:
      - "3306:3306"
    networks:
      - net
1
задан 28 December 2020 в 16:01

1 ответ

Ошибка 10061 означает в сетевом подключении было отказано, и это может произойти только в двух случаях:

  1. Брандмауэр блокирует доступ
  2. Вы пытаетесь подключиться как root

В первой проблеме вам нужно подтвердите, что контейнер Docker прослушивает внешний трафик на 3306 и что файл my.conf имеет привязку к 0.0.0.0, а не к по умолчанию ]127.0.0.1.

Для второго варианта не подключайтесь как root. Создайте учетную запись с GRANT ALL ON *.* WITH GRANT OPTION, чтобы предоставить этой учетной записи те же разрешения, что и root.

Надеюсь, это укажет вам правильное направление

1
ответ дан 28 December 2020 в 14:38

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

Похожие вопросы: