【问题标题】:laradock error on phpmyadmin - can't connectphpmyadmin 上的 laradock 错误 - 无法连接
【发布时间】:2018-08-04 03:21:10
【问题描述】:

我刚开始使用docker、laradock和laravel,在设置完整个环境后我尝试登录我的phpmyadmin,但我无法登录。

我几乎到处寻找,找不到解决方法,所以你们是我最后的希望,哈哈。

Docker 版本 17.12.0-ce,构建 c97c6d6 这是我的 docker ps

我项目的 .env

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

这是我从 phpmyadmin (localhost:8080) 得到的错误

#2054 - The server requested authentication method unknown to the client
mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]
mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client

【问题讨论】:

  • 你能发布你的 Dockerfile(s) 和你用来启动和链接你的容器的命令吗?提供更多有关此信息的帮助。
  • 我使用的命令是 docker-compose up -d nginx mysql phpmyadmin 我用这个命令创建了一个 laravel 项目 docker-compose exec workspace bash compose create-project --prefer-dist laravel/laravel项目名称
  • @CarlosEduardo 我是 docker 和 laradock 的新手,所以我不确定你要的是什么 Dockerfiles
  • 根据您的命令,我相信@Alex Karshin 的回答是解决您问题的方法。
  • 更改 DB_HOST=127.0.0.1

标签: laravel docker phpmyadmin laradock


【解决方案1】:

这是由于 libmysqlclient 的更新引起的,因为 MySQL version 8.0.4 已将默认身份验证方法更改为更安全的 sha256_password

只要 Laravel 和其他软件包(如 PhpMyAdmin)更新以支持这种新的更安全的身份验证方法,这个问题就会自行解决。

如果您不能删除并重建现有的 mysql 数据卷,只需:

  1. 登录到您的 mysql 容器 (docker-compose exec mysql mysql -uroot -proot)
  2. 执行ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
  3. 对您可能创建的任何其他用户重复第 2 步。

如果您可以重新创建 mysql 数据卷:

  1. 修改您的my.conf 文件。在[mysqld] 下添加以下配置选项default_authentication_plugin=mysql_native_password
  2. 删除你的mysql卷rm -rf ~./laradock/data/mysql
  3. 重建mysql容器docker-compose -d --build mysql phpmyadmin

【讨论】:

    【解决方案2】:

    最简单的解决方案是恢复到早期版本的 MySQL。无论如何,这可能是一个好主意,因为 8.0 是“开发人员的版本”。不幸的是,无论您在 .env 文件中设置什么,Laradock 目前都有一个安装 8.0 的错误。我已经提交了关于 Laradock 的 PR 来解决这个特定问题。

    https://github.com/laradock/laradock/pull/1409

    【讨论】:

    • 可能是这样,我放弃在 Windows 上安装 docker 和 laradock。不过感谢您的回复。
    猜你喜欢
    • 2020-07-10
    • 2017-06-19
    • 2016-11-16
    • 1970-01-01
    • 2017-03-19
    • 2019-03-11
    • 2013-02-28
    • 2011-03-14
    • 2016-12-23
    相关资源
    最近更新 更多