Xampp访问被拒绝phpmyadmin未连接到MySQL

Xampp访问被拒绝phpmyadmin未连接到MySQL,php,mysql,linux,pdo,xampp,Php,Mysql,Linux,Pdo,Xampp,我读了很多类似的问题,但没有找到一个明确的答案。另外,我的问题与那些不同,因为直到我关闭我的系统一小时后,一切都正常工作。所以我在另一个问题中再次发布我的问题 我在Linux(Ubuntu14.04)上运行Xampp,当一切正常时,直到我关闭它一小时后,它突然开始抛出这个错误。我没有更改任何文件中的一行代码,也没有更改任何权限,也没有在Linux中运行任何未知命令: Connection failed: SQLSTATE[HY000] [1049] Unknown database 'user_

我读了很多类似的问题,但没有找到一个明确的答案。另外,我的问题与那些不同,因为直到我关闭我的系统一小时后,一切都正常工作。所以我在另一个问题中再次发布我的问题

我在Linux(Ubuntu14.04)上运行Xampp,当一切正常时,直到我关闭它一小时后,它突然开始抛出这个错误。我没有更改任何文件中的一行代码,也没有更改任何权限,也没有在Linux中运行任何未知命令:

Connection failed: SQLSTATE[HY000] [1049] Unknown database 'user_list'

Notice: Undefined variable: connect in /opt/lampp/htdocs/Project1_July2015/verify_blacklisted.php on line 15

Fatal error: Call to a member function prepare() on null in /opt/lampp/htdocs/Project1_July2015/verify_blacklisted.php on line 15
我已经使用变量“connect”测试了PDO连接,该变量连接到我的数据库“user_list”,该数据库确实存在。它确实能够正确地检索数据。当我尝试连接到localhost/phpmyadmin时

MySQL said: 

Cannot connect: invalid settings. 
Connection for controluser as defined in your configuration failed.
phpMyAdmin tried to connect to the MySQL server, and the server rejected the connection. You should check the host, username and password in your configuration and make sure that they correspond to the information given by the administrator of the MySQL server.
用户名尚未设置。它是“root”,密码还没有设置。在安装Xampp时,我一直使用相同的设置,没有更改任何所有权或任何其他详细信息。我不知道为什么会这样。在这方面有经验的人能帮我解决这些问题吗

编辑:在进一步的测试中,我可以连接到本地主机上的另一个网站,该网站存储在我的htdocs文件夹中,与此类似,因此这肯定是一个与phpmyadmin不连接到我的数据库相关的问题,因为工作的网站至少不涉及到其主页上的任何数据库的连接。刚才提到了,以防细节有助于解决问题

我的连接代码如下,它一直工作到一小时前:

<?php
    $server_name = "127.0.0.1";
    $server_username = "root";
    $server_password = "";
    $db_name=$_SESSION["db_name"];

    //echo "<br>"."Attempting connection to database " . $db_name . "<br>";
    try {
        $connect = new PDO("mysql:host=$server_name;dbname=$db_name", $server_username, $server_password);

        $connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        //echo "<br>"."Connected successfully to database " . $db_name . "<br>"; 
    } catch(PDOException $e) {
        echo "<br>" . "Connection failed: " . $e->getMessage() . "<br>";
    }
    //#3
?>

编辑2:就像我说的代码很好。我没有改变它的任何一行,它以前也工作得很好。我这里的主要问题是phpmyadmin本身无法连接到数据库。有关详细信息,请参阅下面的屏幕截图。我认为这是所有其他问题的根本原因:


因此,问题在于在xampp中双重安装mysql,以及单独处理当前正在运行的版本

这就是帮助我找到答案的原因

这是我后来发现的手动方法,如果有帮助的话:


显示连接文件代码。尝试使用
die(“调试”)要查找代码故障的位置,我知道代码故障的位置。问题在于phpmyadmin本身对数据库的访问被拒绝,因此“$connect”首先自然无法连接到数据库,这也导致了另外两个错误。您的
config.inc.php
中的
$cfg['Servers'][$i]['auth_type']
是否设置为cookie或config?关于
$cfg['Servers'][$i]['AllowNoPassword']
我无法访问localhost/security/xamppsecurity.php,文件上说:
$cfg['Servers'][$i]['auth_type']='config'
$cfg['Servers'][$i]['AllowNoPassword']=true