Mysql 拒绝用户访问';根'@';本地主机';仅限邮递员API

Mysql 拒绝用户访问';根'@';本地主机';仅限邮递员API,mysql,laravel,api,postman,sequelpro,Mysql,Laravel,Api,Postman,Sequelpro,我正在使用postman尝试发出API post请求: 必须有数据库连接,因为我可以很好地迁移数据库。使用php artisan tinker我还可以添加一个新用户: >>> $user = new User(); => App\User {#3060} >>> $user->name = "kyle"; => "kyle" >>> $user->email = "kyle@example.com" => "k

我正在使用postman尝试发出API post请求:

必须有数据库连接,因为我可以很好地迁移数据库。使用
php artisan tinker
我还可以添加一个新用户:

>>> $user = new User();
=> App\User {#3060}
>>> $user->name = "kyle";
=> "kyle"
>>> $user->email = "kyle@example.com"
=> "kyle@example.com"
>>> $user->email = "kyle@example.com";
=> "kyle@example.com"
>>> $user->password = bcrypt('password');
=> "$2y$10$VQ8i0wlUKOfMzz6s/AXNBekcAdDAah9EvCvLeOASu3t06x.eVMCFq"
>>> $user->save();
=> true
>>> User::all();
=> Illuminate\Database\Eloquent\Collection {#3080
     all: [
       App\User {#3081
         id: 1,
         name: "kyle",
         email: "kyle@example.com",
         email_verified_at: null,
         created_at: "2020-04-29 06:15:03",
         updated_at: "2020-04-29 06:15:03",
       },
     ],
   }
然而,当我尝试在postman中创建一个记录时,我得到了以下结果:

Illumb\Database\QueryException:SQLSTATE[HY000][1045]拒绝用户“root”@“localhost”(使用密码:否)(SQL:insert-into
用户
名称
电子邮件
密码
更新
创建
)值(凯尔,kyle@example.com第671行的文件/Applications/MAMP/htdocs/laravel vue spa/vendor/laravel/framework/src/light/Database/Connection.php中

这是我的AuthController:

public function register(Request $request)
    {


        /*$request->validate([
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|',
            'password' => 'required|string|min:6|confirmed'
        ]);*/

        $user = new User();
        $user->name = $request->name;
        $user->email = $request->email;
        $user->password = bcrypt($request->password);

        $user->save();

        /*if($user->save()){
            return response()->json([
                'message' => 'User was successfully created.',
                'status_code' => 201
            ], 201);
        } else {
            return response()->json([
                'message' => 'An error occured. Please try again.',
                'status_code' => 500
            ], 500);
        } */
    }
.env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_spa
DB_USERNAME=root
DB_PASSWORD=password
我还尝试过切换
DB_HOST=localhost
。在Sequel Pro中,我的权限设置为super。我还尝试过对
User::all();
执行
GET
请求,这是同样的折磨

编辑1 config/database.php

'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
                PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

我还运行了
php-artisan-config:clear
php-artisan-optimize:clear

当您更改env文件中的某些内容时,必须运行此命令php-artisan-config:cache
php-artisan-optimize:clear
最适合清除所有缓存触发我的是
(使用密码:否)
你能分享你的
config/database.php吗?
?啊@Sergio明白了!如果问题解决了,请给出答案并接受它,这样当你更改env文件中的某些内容时,它也可以帮助其他人。你必须运行以下命令php artisan config:cache
php artisan optimize:clear
最适合清除所有缓存什么触发器我是
(使用密码:否)
你能分享你的
配置/数据库.php
吗?啊@Sergio明白了!如果问题解决了,请给出答案并接受它,这样它也可以帮助其他人