mysqli_connect():( 28000/1045):拒绝访问用户'用户名' @' localhost' (使用密码:是)

时间:2017-03-18 17:01:55

标签: php

我在共享托管服务器中配置数据库时出现此错误

  

mysqli_connect():( 28000/1045):拒绝访问用户'用户名' @' localhost' (使用密码:是)

但它在localhost中正常工作。

<?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()); 
?> 

6 个答案:

答案 0 :(得分:3)

只需更改您的cpanel密码,它就会起作用。

答案 1 :(得分:1)

看起来您在else块中插入了错误的凭据,您可以尝试将与if块相同的凭据并检查其是否有效

答案 2 :(得分:0)

你的错误是你使用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);

答案 3 :(得分:0)

在大多数情况下,此错误与最近更改的cpanel密码或将服务器迁移到新的托管服务器有关。

因此,当您尝试通过phpmyadmin上的cpanel访问数据库时,如果您远程连接BUT则可以正常工作

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

答案 4 :(得分:0)

您不需要做任何事情,更不用说更改通行证了。更改它,肯定会起作用。谢谢

答案 5 :(得分:-2)

I believe this i the php admin mysqli_connect error.

I found out this on my cpanel under MySQL Users No db_users.

This the admin panel. WHM in this case also has no db user.

重新启动主机可以解决此问题。然后#sudo服务mysql重新启动。在进行上述所有重置操作之前,必须先设置密码。