Illuminate \ Database \ QueryException:SQLSTATE [HY000] [1044]用户``@'localhost'对数据库'forge'的访问被拒绝

时间:2019-08-09 14:29:04

标签: mysql laravel

我已经在github上下载了一个仓库,并创建了一个数据库。我正在尝试进行迁移,但出现以下错误

错误:

  

Illuminate \ Database \ QueryException:SQLSTATE [HY000] [1044]用户“ @'localhost”对数据库“ forge”的访问被拒绝(SQL:从information_schema.tables中选择*,其中table_schema = forge和table_name = migrations和table_type ='BASE TABLE')

这是我的.env文件

APP_NAME=Tafuta
APP_ENV=local
APP_KEY=base64:0IDLuBYdTssK55SeeQTmCJ3GHlJXsR6BahTeenXaf90=
APP_DEBUG=true
APP_URL=http://localhost

LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=TafutaM
DB_USERNAME=root
DB_PASSWORD=

BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

3 个答案:

答案 0 :(得分:1)

变量不考虑您的.env

这可能是由于您的Vhost configuration中的某物引起的

  • 直接声明其中的变量将覆盖.env变量。

  • 声明另一个environment file要读取。像.env.prod.env.dev

答案 1 :(得分:0)

许多人都有这个常见错误:这是因为未设置数据库。

错误说:“ @ localhost”,然后用户名=”
database:forge,然后数据库名为='forge'

如果您未在.env中看到该参数,这是因为未读取文件,那么您必须刷新配置:

php artisan config:cache

如果您使用的是php artisan serve,请取消它,然后再次运行。

现在,如果问题仍然存在,则必须使用终端或数据库工具登录数据库,并确保下一个参数相同:

DB_CONNECTION=
DB_HOST=
DB_PORT=
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=

有时候,人们设置了错误的端口或用户名或任何其他名称(如果您编辑.env文件,请不要忘记刷新配置)。

答案 2 :(得分:0)

如果您是从GitHub下载源代码,则必须运行以下命令:

composer install
cp .env.example .env
php artisan key:generate
php artisan config:clear
php artisan cache:clear
php artisan migrate