无法链接到MySQL数据库

时间:2015-08-12 21:19:45

标签: php mysql database phpmyadmin

我正在学习MySQL / PHP,我无法弄清楚如何在我的localhost上连接到MySQL。我写了一小段代码,我将root作为我的用户名,root作为我的密码,因为我还没有设置这些元素(据我所知)。我觉得也许我遗漏了一些关于用户名/密码组合的内容。但是,我觉得这不应该是一个问题,因为我没有篡改默认条件。

我需要一些帮助。

我的代码如下:

<?php

try {
    $db = new PDO("mysql:host=localhost;dbname=shirts4max;port=3306", "root", "root");
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $db->exec("SET NAMES 'utf-8'");
} catch (Exception $e) {
    echo "Could not connect to the database.";var_dump($e);
    exit;
}

我只在网页上看到错误消息:

&#34;无法连接到数据库。&#34;

感谢阅读。请帮助我Obiwan。

2 个答案:

答案 0 :(得分:2)

显示真实错误。除维护外,请避免使用root

从PDO手册页面here,为您修改

<?php
    $dsn = 'mysql:dbname=shirts4max;host=localhost';
    $user = 'root';
    $password = 'root';

    try {
            $dbh = new PDO($dsn, $user, $password);
            $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    } catch (PDOException $e) {
        echo 'Connection failed: ' . $e->getMessage();
    }
?>

答案 1 :(得分:0)

您是否尝试使用以下命令行进行连接:mysql -uroot -proot -hlocalhost -p3306?如果您无法以这种方式连接,则PDO连接也不会通过。通过命令行播放连接信息可以让您轻松找到有效的方法,然后将其包含在代码中。另外,如果您没有设置用户/ pw,那么目前可能没有用户/ pw,所以您根本不需要这些参数。