WHM mysql“SQLSTATE [HY000] [1045] 用户访问被拒绝”

Posted

技术标签:

【中文标题】WHM mysql“SQLSTATE [HY000] [1045] 用户访问被拒绝”【英文标题】:WHM mysql "SQLSTATE[HY000] [1045] Access denied for user" 【发布时间】:2014-09-22 13:54:31 【问题描述】:

WHM 安装在专用服务器上。

我可能已经更改了安全配置中的某些内容....

我可以访问WHM提供的phpMYADMIN。

我创建了一个名为 pma.my_domain_name.com 的子域,其中的 PHPMYADMIN 版本取自他们的网站。最新版本。如果我尝试通过该版本进行连接,它会显示 Access Denied #1045。

我更改了 config.inc.php 中的所有内容:

$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
/* Select mysql if your server does not have mysqli */
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
$cfg['Servers'][$i]['user']      = 'root';
$cfg['Servers'][$i]['password']  = '%%PASSWORD%%';

如果 auth_type 设置为 HTTP 而不是 COOKIE,我可以登录。如果我将其保留为 cookie,则会出现错误。

我记得在 PUTTY 中登录到 ROOT 时,我在 WHM 中选中了一个框以强制使用 SSH KEY。我真的不太了解 Sysadmin,我有点卡住了。

我还尝试通过一个有效的 PHP 脚本进行连接。这真的很奇怪。

$db = new PDO('mysql:host=localhost;dbname=%%DATABASE_SCHEMA%%', '%%USERNAME%%', '%%PASSWORD%%');

请帮帮我。

卡尔。

【问题讨论】:

您不希望[$i] 也用于用户/通行证条目吗?如果系统正在迭代并开始在(例如)服务器 #2 上工作,那么它将获得 null 用户/通行证,因为您只有服务器 #1 的硬编码条目。 您好,$i 是 config.inc.php 中提供的变量。所以这不是问题。我也在用 Doctrine 构建的应用程序中尝试过,出现了 smae 错误。 【参考方案1】:

似乎问题出在 WHM 密码生成器上。

它生成了一个带有“)”符号的密码,mysql似乎有问题。

我重新生成了一个没有该符号的新密码,一切都恢复正常。 我可以访问任何用户。 WHM 故障。

3 小时的头痛……考虑到还不错;)

卡尔。

【讨论】:

以上是关于WHM mysql“SQLSTATE [HY000] [1045] 用户访问被拒绝”的主要内容,如果未能解决你的问题,请参考以下文章

SQLSTATE[HY000] [2005] 未知的 MySQL 服务器主机 'localhost:3306' (2)

SQLSTATE[HY000] [2005] 未知的 MySQL 服务器主机 'localhost:3306' (2)

使用 PDO 连接到远程 MYSQL 服务器,导致相同的错误 SQLSTATE[HY000] [2002] [重复]

MySQL + Laravel:SQLSTATE [HY000] [1045] 用户'so'@'localhost'的访问被拒绝,但连接数据正常并且配置缓存被清除

Laravel / MySQL 错误:SQLSTATE[HY000]:一般错误:1835 格式错误的通信数据包

SQLSTATE[HY000] [2002] 资源暂时不可用 - mysql - innodb 和 pdo