Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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 错误1045(28000):拒绝用户访问';根'@';本地主机';(使用密码:否)在Laravel应用程序上_Php_Mysql_Laravel - Fatal编程技术网

Php 错误1045(28000):拒绝用户访问';根'@';本地主机';(使用密码:否)在Laravel应用程序上

Php 错误1045(28000):拒绝用户访问';根'@';本地主机';(使用密码:否)在Laravel应用程序上,php,mysql,laravel,Php,Mysql,Laravel,当我尝试访问具有db访问权限的laravel home项目时,出现了此错误 我知道这是一个常见的问题,所以我已经阅读了很多帖子并尝试了以下方法: 检查用户名和密码是否正确(相同的用户和密码在命令行和MySql Workbench中工作) 检查Sql端的权限。这里有一个root@localhost 清理cache.env并多次重新启动服务器。我还尝试直接在database.php上临时插入数据库信息 database.php 'default' => 'mysql', 'mysql'

当我尝试访问具有db访问权限的laravel home项目时,出现了此错误

我知道这是一个常见的问题,所以我已经阅读了很多帖子并尝试了以下方法:

  • 检查用户名和密码是否正确(相同的用户和密码在命令行和MySql Workbench中工作)
  • 检查Sql端的权限。这里有一个root@localhost
  • 清理cache.env并多次重新启动服务器。我还尝试直接在database.php上临时插入数据库信息
database.php

 'default' => 'mysql',
 'mysql' => [
        'driver' => 'mysql',
        'dump_command_path' => '/opt/lampp/bin', // only the path, so without 'mysqldump' or 'pg_dump'
        'dump_command_timeout' => 60 * 5, // 5 minute timeout
        'dump_using_single_transaction' => true, // perform dump using a single transaction
        'host' => env('DB_HOST', '10.8.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', ''),
        'username' => env('DB_USERNAME', ''),
        'password' => env('DB_PASSWORD', ''),
        'charset' => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix' => '',
        'strict' => false,
        'engine' => null,
    ],
.env

#MYSQL
DB_HOST=127.0.0.1 //I have tried also localhost
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

尝试放置DB_PASSWORD=”“除非在MySQL配置中指定,否则无法从远程主机连接到root。因此,创建一个新的MySQL用户,给他从所有主机连接的权限
*
创建密码,它应该可以工作。。。旁注:如果本地主机使用类似homestead的虚拟机,那么您指的是这个虚拟机本地数据库,而不是您的实际主机或
.env
中定义的
DB_主机,所以您需要记住这一点……愚蠢的问题,但您在
.env
中确实有密码吗?错误消息说使用密码时
:不
,这让我怀疑。@VedranMileTomljanovic不是working@jack_0MySQL在这里有些棘手。使用root用户并且没有密码或NULL,这看起来是一种非常糟糕的做法,即使在开发过程中,为了记住,您需要有一个具有密码的有效用户,并从您的ip正确访问数据库。因此,请创建一个新用户,具有适当的权限,并在出现任何错误时发布您的错误。。。