如何解决错误:Laravel-MySql 中的 SQL 身份验证方法未

How to resolve the error: SQL authentication method unknown in Laravel-MySql(如何解决错误:Laravel-MySql 中的 SQL 身份验证方法未知)
本文介绍了如何解决错误:Laravel-MySql 中的 SQL 身份验证方法未知的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用 docker 并且我有一个 Laravel Framework 5.5.25 容器和其他带有 mysql Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL) 的容器.在我的 docker compose 配置中,我有这个:

I using docker and I have a container of Laravel Framework 5.5.25 and other with mysql Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL). in my configuration of docker compose I have this:

version: "2"
services:
    mysql:
    image: mysql
        ports:
            - "3307:3306"
        command: --sql_mode=""

所以,当 Laravel 尝试连接到 MySql 时,我有这个错误:

So, when Laravel try to connect to MySql I have this error:

SQLSTATE[HY000] [2054] 服务器请求客户端未知的身份验证方法(SQL:select * from

SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client (SQL: select * from

推荐答案

对于 MySQL 8 和 PHP7+,您必须使用旧式密码:

You have to use legacy style passwords for MySQL 8 and PHP7+:

ALTER USER 'username'@'ip_address' IDENTIFIED WITH mysql_native_password BY 'password';

这篇关于如何解决错误:Laravel-MySql 中的 SQL 身份验证方法未知的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)
in php how do I use preg replace to turn a url into a tinyurl(在php中,如何使用preg替换将URL转换为TinyURL)
all day appointment for ics calendar file wont work(ICS日历文件的全天约会不起作用)
trim function is giving unexpected values php(Trim函数提供了意外的值php)
Basic PDO connection to MySQL(到MySQL的基本PDO连接)
PHP number_format returns 1.00(Php number_Format返回1.00)