Shu*_*rga 5 mysql php-7.2 ubuntu-18.04 laravel-6
我在测试 Laravel 项目的浏览器中收到此错误:
\nIlluminate\\Database\\QueryException\nSQLSTATE[HY000] [1698] Access denied for user \'root\'@\'localhost\'\n(SQL: select count(*) as aggregate from `users` where `email` = test@test.com)\nRun Code Online (Sandbox Code Playgroud)\n我在 Stack Overflow 和其他网站上发现了类似的问题,但给出的所有解决方案都不适合我。
\n另一个类似的错误代码是关于 MySQL 的,但我的是关于 Laravel 的。不是MySQL。
\n我使用Ubuntu 18.04 (Bionic Beaver)、Laravel 6、LAMP,我的数据库是 MySQL,服务器由 Apache 2.4 提供服务,而不是 Homebrew 或 PHP localhost。
----------(测试项目上下文)
\n我正在遵循教程,并成功添加了“登录”和“注册”按钮。现在,当我尝试注册新用户时,我遇到了两个权限问题,我可以用 解决sudo chmod这些问题,但我已经在第三个问题上停留了五个小时。如果今天还没有解决问题,我将重新安装所有内容。
根据我的理解,PHP ARTISAN UI:AUTH需要处理所有代码,您只需要PHP ARTISAN MIGRATE在创建我已经完成的授权 UI 之后即可。MIGRATE我实际上可以在 MYSQL 终端中看到数据库中创建的表。
----------(/测试项目上下文)
\n我尝试过的解决方案:
\nDB_CONNECTION=mysql\nDB_HOST=127.0.0.1 or 127.0.0.11 or localhost\nDB_PORT=3306 or 33060\nDB_DATABASE=test\nDB_USERNAME=root or I_created_a_new_user_with_all_privileges\nDB_PASSWORD=password\nRun Code Online (Sandbox Code Playgroud)\n我尝试在Laravel 的app\\config\\database.php文件中匹配我的数据库配置。
\n我已经sudo chmod 777 /var/www/html/blog脱离了绝望。
我在终端尝试了一堆清除。
\nphp artisan config:cache\nphp artisan config:clear\nphp artisan cache:clear\nRun Code Online (Sandbox Code Playgroud)\n这是app\\config\\database.php文件:
\n\'mysql\' => [\n \'driver\' => \'mysql\',\n \'url\' => env(\'DATABASE_URL\'), <--- NEVER TRIED THIS PART THOUGH, idk what to put\n \'host\' => env(\'DB_HOST\', \'127.0.0.1\'), <---- tried all\n \'port\' => env(\'DB_PORT\', \'3306\'), <---- tried 33060\n \'database\' => env(\'DB_DATABASE\', \'forge\'), <--- tried \'test\' as my DB\n \'username\' => env(\'DB_USERNAME\', \'forge\'), <--- tried \'root\' or \'nico\'\n \'password\' => env(\'DB_PASSWORD\', \'\'), <--- \'password\'\n \'unix_socket\' => env(\'DB_SOCKET\', \'\'),\n \'charset\' => \'utf8mb4\', <--- tried \'utf8\'\n \'collation\' => \'utf8mb4_unicode_ci\',\n \'prefix\' => \'\',\n \'prefix_indexes\' => true,\n \'strict\' => true,\n \'engine\' => null,\n \'options\' => extension_loaded(\'pdo_mysql\') ? array_filter([\n PDO::MYSQL_ATTR_SSL_CA => env(\'MYSQL_ATTR_SSL_CA\'),\n ]) : [],\n ],\nRun Code Online (Sandbox Code Playgroud)\n我已经检查了文件和程序的所有者。它可以是root或www-data,并确保 Apache2 由root或www-data之一或两者运行。我用了ps aux | grep apache。
我在 Windows\xc2\xa010 WAMP 堆栈中从未遇到过此问题。我已经无计可施了。
\n我从头开始重新创建了该项目,但仍然遇到相同的错误。
\n本文解决了这个问题:#1698 - Access Denied for user \'root\'@\'localhost\' mysql -5.7 and ubuntu-16.04
\nStep 1. `sudo mysql -u root -p`\n\nStep 2. `USE mysql;`\n\nStep 3. `ALTER USER \'root\'@\'localhost\' IDENTIFIED WITH mysql_native_password BY \'admin\';`\n\nHere \'admin\' is your new password, but you can change it.\n\nStep 4. Exit Thanks. You are done.\nRun Code Online (Sandbox Code Playgroud)\n