Laravel 6.4.1 SQLSTATE[HY000] [2002] 连接被拒绝

20
我是Laravel开发新手。 我已将Xampp更新到Mac Mojave 10.14.6上的7.3.11版本。 在Laravel项目中,当我运行php artisan migrate命令时,出现以下错误。
SQLSTATE [HY000] [2002]连接被拒绝(SQL:select * from information_schema.tables where table_schema = laravel and table_name = migrations and table_type ='BASE TABLE')
当我启动Xampp服务时,我的管理员面板在http://127.0.0.1:8080/phpmyadmin上运行。 我的Laravel工作项目也无法连接到数据库,显示连接被拒绝。 我尝试通过更改.env文件中的DB_PortDB_Host来解决问题。 我尝试清除缓存。
任何帮助将不胜感激。
我的.env文件
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

2
此外,我强烈建议使用Laravel Valet,通过Homebrew安装Nginx和MySQL,而不是使用这种混乱的方式。 - Salim Djerbouh
1
你的MySQL服务器是否运行在3306端口上? - brombeer
@kerbholz 是的,它在同一个端口上。 - Manish Mahajan
我已经通过将Xampp降级到7.1.33来解决了这个问题。 - Manish Mahajan
我重新启动了电脑并开始工作了! - francisco
我在Docker中遇到了竞争条件。等待数据库服务器不仅启动而且可用之后再尝试使用PHP artisan命令解决了这个问题。 - rob
15个回答

0

我曾经遇到这个问题,使用MAMP作为MYSQL服务器。问题在于配置,后来我通过更改端口号解决了这个问题,正确的端口号可以在MAMP说明中找到,它是8889

所以在我的.env文件中,正确的配置应该是:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=8889
DB_DATABASE=dbname
DB_USERNAME=root
DB_PASSWORD=rootpassword

0

尝试在 .env 文件中使用这个配置(我正在使用 Laravel v7.0),它对我有效:

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=root

-1

在我的情况下实际上是这样的。

DB_HOST=127.0.0.1
DB_PORT=33060

之前它是这样的

DB_HOST=127.0.0.1
DB_PORT=3306

许多解决方案都建议将 DB_HOST 更改为“localhost”。 在我的情况下,只是在 DB_PORT 中有一个微小的 0


-1
我正在使用Docker Compose文件。你需要做的就是暴露MySQL的端口。

db:
  image: mysql
  command: --default-authentication-plugin=mysql_native_password
  restart: always
  environment:
    MYSQL_ROOT_PASSWORD: example
    MYSQL_DATABASE: example
    MYSQL_USER: example
    MYSQL_PASSWORD: example
  ports:
    - 3306:3306
adminer:
  image: adminer
  restart: always
  ports:
    - 8080:8080


-1

我感觉自己好蠢啊,哈哈。 在我苦思冥想了几个小时后,终于找到了解决方法。 检查一下你的MySQL运行在哪个端口,然后在.env文件中使用该端口。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=8889
DB_DATABASE=laravel
DB_USERNAME=yourusername
DB_PASSWORD=yourpassword

创建用户时,请确保为该用户授予所有权限。如果您仍然感到困惑,请向我提问,我会抽出时间来帮助您。祝大家编码愉快!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接