Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何修复Laradock上被拒绝的SQLSTATE[HY000][2002]连接(SQL:select*from`categories`where`enable`=1)?_Php_Laravel_Laradock - Fatal编程技术网

Php 如何修复Laradock上被拒绝的SQLSTATE[HY000][2002]连接(SQL:select*from`categories`where`enable`=1)?

Php 如何修复Laradock上被拒绝的SQLSTATE[HY000][2002]连接(SQL:select*from`categories`where`enable`=1)?,php,laravel,laradock,Php,Laravel,Laradock,我试图在docker上构建laravel,但当我试图运行php artisan migrate时,我遇到了如下错误: SQLSTATE[HY000][2002]没有这样的文件或目录(SQL:select*fromcategorieswhereenable=1) 这是我的文件 FROM php:7.2-fpm-alpine RUN docker-php-ext-install pdo pdo_mysql 这是我的docker-compose.yml version: '3' network

我试图在docker上构建laravel,但当我试图运行
php artisan migrate
时,我遇到了如下错误:

SQLSTATE[HY000][2002]没有这样的文件或目录(SQL:select*from
categories
where
enable
=1)

这是我的文件

FROM php:7.2-fpm-alpine
RUN docker-php-ext-install pdo pdo_mysql
这是我的docker-compose.yml

version: '3'

networks:
  laravel:

services:
  nginx:
    image: nginx:stable-alpine
    container_name: nginx
    ports:
      - "8080:80"
    volumes:
      - ./src:/var/www
      - ./nginx/default.conf:/etc/nginx/conf.d/default.conf
    depends_on:
      - php
      - mysql
    networks:
      - laravel

  mysql:
    image: mysql:5.7.22
    container_name: mysql
    restart: unless-stopped
    tty: true
    ports:
      - "3306:3306"
    environment:
      MYSQL_DATABASE: cilsy
      MYSQL_USER: cilsy
      MYSQL_PASSWORD: secret
      MYSQL_ROOT_PASSWORD: secret
      SERVICE_TAGS: dev
      SERVICE_NAME: mysql
    networks:
      - laravel

  php:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: php
    volumes:
      - ./src:/var/www
    ports:
      - "9000:9000"
    networks:
      - laravel
这是我的.env文件

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=cilsy
DB_USERNAME=cilsy
DB_PASSWORD=secret
我已经安装了composer
php-common
php-mbstring
php-xml
php-zip
php-json
libmcrypt-dev
php-curl

我不知道如何解决这个问题,有什么想法吗?

.env
文件中的
“DB\u HOST”从
“localhost”
更改为
“127.0.0.1”

我也有同样的问题。上述解决方案对我都不起作用。我通过将
/app/config/database.php
文件中的
“host”
“localhost”
更改为
“127.0.0.1”

可以运行吗
php artisan配置:清除

然后重新启动服务器

尝试更新XAMPP或任何使用最新PHP版本的服务器

当我将我的项目切换到mac时,我遇到了同样的错误。我尝试了所有方法,最后卸载了XAMPP,并安装了最新PHP版本的XAMPP


我希望这会有所帮助。

打开
.env
文件,将其
DB\u HOST=localhost
更改为
DB\u HOST=127.0.0.1

  • 如果在安装时没有默认用户名,
    DB_USERNAME
    应设置为
    root
  • DB_PASSWORD
    如果数据库中没有设置密码,只需清除它即可

.env
编辑之后,必须清除缓存:
php-artisan-config:cache
在我的情况下,将
DB\u-HOST
更改为localhost并不能解决问题。我不得不将它改为
mysql
,这很好


尝试将.env文件中的“DB_HOST”从“localhost”更改为“127.0.0.1”。我尝试过,但什么也没有发生。我尝试过,但什么也没有发生。更改.env时,请清除配置和缓存php artisan缓存:清除和php artisan配置:清除