PHP PDO SQLSTATE [HY000] [2002]连接被拒绝

时间:2015-03-05 14:08:51

标签: php mysql pdo

情况就是这样,在localhost上看起来一切正常(mamp pro)并且根本没有问题,但是当我将它上传到服务器时它会给我一个错误:

SQLSTATE[HY000] [2002] Connection refused

不知道这意味着什么,在网上搜索但没有找到解决办法。 以下是我与数据库的连接方式:

define("SERVER_SQL_VERSION","mysql");
define("SQL_SERVER","localhost");
define("SQL_PORT","3306");
define("SQL_USERNAME","userdb_new");
define("SQL_PASSWORD","92384923jjdhasj");
define("SQL_DB_NAME","usernew_db");
define('PREFIX', 'tb_');
if(!function_exists('pdoConnect')) {
function pdoConnect() {
    $pdo = new        PDO(SERVER_SQL_VERSION.":host=".SQL_SERVER.";dbname=".SQL_DB_NAME."",   "".SQL_USERNAME."", "".SQL_PASSWORD.""); 
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
    return $pdo;
}
}
$db = pdoConnect();

对此有任何帮助将不胜感激,谢谢。

1 个答案:

答案 0 :(得分:0)

所以我试图理解这一点:

$pdo = new PDO(SERVER_SQL_VERSION.":host=".SQL_SERVER.";dbname=".SQL_DB_NAME."",   "".SQL_USERNAME."", "".SQL_PASSWORD.""); 

但我迷失在双引号中。他们在那做什么?试试这个:

$dsn = SERVER_SQL_VERSION.':host='.SQL_SERVER.';dbname='.SQL_DB_NAME;
$pdo = new PDO($dsn,SQL_USERNAME,SQL_PASSWORD);