【问题标题】:phpmyadmin can't connect to mariadb with docker-compose: Packets out of orderphpmyadmin 无法使用 docker-compose 连接到 mariadb:数据包乱序
【发布时间】:2020-03-03 19:48:38
【问题描述】:

那么这个 docker-compose.yml 有什么问题?在我看来它实际上还可以。

但是当我尝试在http://localhost:8080/index.php 上登录 phpmyadmin 时 我得到错误:

数据包乱序。预计收到 0 个 1. 数据包大小=71
mysqli_real_connect():MySQL 服务器已消失
mysqli_real_connect():读取问候包时出错。 PID=33
mysqli_real_connect(): (HY000/2006): MySQL 服务器已经消失

version: "3"
services:
  db:
    image: mariadb:10.4
    volumes:
      - test_db_data:/var/lib/mysql
    ports:
      - "3306:3306"
    environment:
      MYSQL_DATABASE: test
      MYSQL_USER: test
      MYSQL_PASSWORD: test
      MYSQL_ROOT_PASSWORD: root
    networks:
        - dbtest

  pma:
    image: phpmyadmin/phpmyadmin
    depends_on:
      - db
    ports:
      - 8080:80
    environment:
      - PMA_HOST=db
    networks:
        - dbtest

  adminer:
    image: adminer
    restart: unless-stopped
    ports:
      - 8081:8080
    networks:
      - dbtest

volumes:
  test_db_data:
networks:
  dbtest:

上下文:

  • Docker 版本 19.03.3
  • docker-compose 版本 1.23.2

更新:
我也添加了管理员,登录也失败了。 mysql stderr 显示:

[警告] Aborted connection 9 to db: 'unconnected' user: 'unauthenticated' host: '192.168.32.3' (此连接在没有身份验证的情况下正常关闭)

【问题讨论】:

  • compose文件好像没问题,可以试试看mysql日志,也可以试试docker-compose down -v && docker-compose rm -f && docker-compose up,注意清卷也行。
  • 我更新了问题,日志中的错误是:[Warning] Aborted connection 9 to db: 'unconnected' user: 'unauthenticated' host: '192.168.32.3' (此连接在没有身份验证的情况下正常关闭)

标签: docker phpmyadmin docker-compose mariadb


【解决方案1】:

我遇到了同样的错误,并通过删除数据库卷并重新创建数据库来修复它。不是最好的解决方案。 MySQL 服务器在启动时卡住了。

我很幸运,它是一个开发盒上的数据库,所以我只需要运行迁移和重新植入测试数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-09
    • 2018-12-21
    • 2020-03-26
    • 2018-03-12
    • 1970-01-01
    • 2017-11-18
    • 1970-01-01
    • 2020-04-23
    相关资源
    最近更新 更多