Php 如何修复Laradock上被拒绝的SQLSTATE[HY000][2002]连接(SQL:select*from`categories`where`enable`=1)?
我试图在docker上构建laravel,但当我试图运行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
php artisan migrate
时,我遇到了如下错误:
SQLSTATE[HY000][2002]没有这样的文件或目录(SQL:select*fromcategories
whereenable
=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
我已经安装了composerphp-common
php-mbstringphp-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配置:清除