sqlstate[hy000][1044]访问被拒绝

vsmadaxz  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(1460)

我在我的cpanel里上传了一个laravel项目。它给出了以下错误
sqlstate[hy000][1044]拒绝用户“amartuki\u finance”@“localhost”访问数据库“amartuki\u finance”
但我已经换了衣服 .env 文件的数据库名、用户和密码。同时在中配置 config/database.php 文件。 .env 文件

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=amartuki_finance
DB_USERNAME=amartuki_finance
DB_PASSWORD=amartuki_finance
``` `config/database.php` 文件

'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'amartuki_finance'),
'username' => env('DB_USERNAME', 'amartuki_finance'),
'password' => env('DB_PASSWORD', 'amartuki_finance'),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
],

那解决办法是什么呢!有人帮忙吗?
wpx232ag

wpx232ag1#

解决了我的问题。这是一个非常愚蠢的错误。
创建用户后,我没有将该用户添加到我的数据库中,这就是为什么用户没有获得任何特权的原因。
现在更改这些内容,项目就可以成功运行了。

hc8w905p

hc8w905p2#

您应该按照以下方法加载 env 中的值 Laravel 加载环境文件
dotenv::load(base_path());//env文件的路径
需要你的价值观
dotenv::必需(数组('db\u port','db\u host','db\u database','db\u username','db\u password','db\u socket');
分配如下

'mysql' => [
    'driver' => 'mysql',
    'host' => getenv('DB_HOST'),
    'port' => getenv('DB_PORT'),
    'database' => getenv('DB_DATABASE'),
    'username' => getenv('DB_USERNAME'),
    'password' => getenv('DB_PASSWORD'),
    'unix_socket' => getenv('DB_SOCKET'),
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
    'prefix' => '',
    'strict' => false,
    'engine' => null,
],

相关问题