用户无法访问数据库的MySQL访问

Eut*_*rpy 0 php mysql database phpmyadmin

我试图连接到名为“ db”的phpMyAdmin数据库,但是出现以下错误:

用户名@服务器名:〜$ mysql -u用户名-p密码

输入密码:(我输入密码)

错误1044(42000):用户'username'@'localhost'对数据库'password'的访问被拒绝

我非常确定我的用户名和密码正确,并且可以访问数据库。让我困惑的是这部分:

数据库“密码”

因为那不是我的数据库的名称。在db.php中的文件看起来是这样的:

<?php

return [
    'class' => 'yii\db\Connection',
    'dsn' => 'mysql:host=localhost;dbname=db',
    'username' => 'username',
    'password' => 'password',
    'charset' => 'utf8',
    'tablePrefix' => 'uni_',
];
Run Code Online (Sandbox Code Playgroud)

mor*_*tzg 5

您搞砸了mysql命令。您正在连接到名为的数据库password,但未提供实际密码。你应该做这个:

mysql -u username -ppassword 
Run Code Online (Sandbox Code Playgroud)

或这个:

mysql -u username --password=password 
Run Code Online (Sandbox Code Playgroud)

这样做的原因是,如果在选项字母后跟一个空格,则程序将无法分辨出后面的参数应该是密码值还是其他类型的参数。

检查它在这里