2017-02-12 22 views
0

私はmysqlデータベースを使用しています。私は私が書いたスクリプトを使って接続したい:私はこのエラーがrecurentであることを見てきましたが、解決策のどれものために働いていない私はエラーがあります:SQLSTATE [HY000] [2005]不明なMySQLサーバーホスト

<?php 

function getDatabase() { 
    $host = 'localhost:3306'; 
    $db = 'freya'; 
    $login = 'root'; 
    $pw = 'helloitsme'; 

    try { 
     return new PDO('mysql:host='.$host.';dbname='.$db.';charset=utf8', $login, $pw); 
    } catch (Exception $e) { 
     die('Erreur : '.$e->getMessage()); 
    } 
} 

$db = getDatabase(); 

。 私はmy.cnfを確認しましたが、私はmysql dbがあるポートを使用していると確信しています。 私はdb名、ログイン名、パスワードが正しいと確信しています。なぜなら、それらを使用してdbでシェルにアクセスしているからです。

何が問題なのですか?あなたが3306としてポートを指定する必要はありません

答えて

4

は、MySQLのデフォルトですが、あなたがしなければ、正しい接続文字列は

'mysql:host=localhost;port=3306 ...' 
です
関連する問題