![](/img/trans.png)
[英]Warning: mysqli_connect() [function.mysqli-connect]: (28000/1045): Access denied for user 'root'@'localhost' (using password: YES)
[英]mysqli_connect(): (28000/1045): Access denied for user 'username'@'localhost' (using password: YES)
在共享托管服务器中配置数据库时出现此错误
mysqli_connect(): (28000/1045): 用户 'username'@'localhost' 访问被拒绝(使用密码:YES)
但它在本地主机中正常工作。
<?php
session_start();
if($_SERVER['HTTP_HOST']=="localhost")
{
$serverIp="localhost";
$userName="user1";
$password="XXXXX";
$dbname="example";
}else
{
$serverIp="localhost";
$userName="username";
$password="password";
$dbname="dbname";
}
$cn=mysqli_connect($serverIp,$userName,$password) OR Die("Couldn't Connect - ".mysql_error());
$link=mysql_select_db($dbname,$cn)or Die("Couldn't SELCECT - ".mysql_error());
?>
在大多数情况下,此错误可能与最近更改 cpanel 密码或将服务器迁移到新的托管服务器有关。
因此,当您远程连接时,这可以正常工作,但是当您尝试通过 phpmyadmin 的 cpanel 访问数据库时,您会得到这个
you had the following error with php myadmin: mysqli_connect(): (28000/1045): Access denied for user 'wmct4s'@'localhost' (using password: YES) Undefined index: auth_type
这将通过重置密码并重新启动 cpanel 来解决。
重启cpanel的命令是/scripts/restartsrv_cpsrvd
只需更改您的 cpanel 密码即可。
看起来您在 else 块中插入了错误的凭据,您可以尝试将与 if 块相同的凭据放入并检查是否有效
你的错误是你同时使用 mysql 和 mysqli 。 如果你想使用 mysql 那么你可以写:
$cn = mysql_connect($serverIp, 'mysql_user', 'mysql_password');
$link = mysql_select_db($dbName,$cn);
或者如果你想使用 mysqli 那么你可以写:
$link= new mysqli($serverIp,$userName,$password,$dbName);
您不需要做任何事情,更不用说更改通行证了。 改变它,肯定会起作用。 谢谢
我相信这是 php admin mysqli_connect 错误。
我在我的 cpanel 下的 MySQL Users No db_users 下发现了这一点。
重新启动我的主机解决了这个问题。 然后#sudo service mysql 重启。 在所有重置密码之前是强制性的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.