私が抱えている問題を説明しようとしています!!!
PDO拡張機能を使用して、pgpool-IIを介してPostgreSQLに接続します。Apache内では正常に動作しますが、(同じマシン上の)PHP CLIから、次のPDOエラーが発生します。
SQLSTATE [HY000]:一般エラー:7サーバーへの接続がありません
私はすでにグーグルとここで検索しました、しかし誰もこれをしようとしたことがないようです。誰かが何か考えを持っていますか?
編集:
これは、接続を確立するために使用するコードです。
include 'manage_db.php';
include_once 'properties.php';
global $properties;
$dsn = 'pgsql:dbname=' . $properties['db_pgpool'] . ';host=localhost;port=' . $properties['port_pgpool'];
try{
$mgmtDb = new ManageDb($dsn, $properties['username_pgpool'], $properties['password_pgpool']);
} catch (Exception $e) {
echo 'PDO - Caught exception: ', $e->getMessage(), "\n";
}
ManageDBは、データベース接続を作成するだけでなく、いくつかのユーティリティ関数を実装する私自身のクラスです。
class ManageDb {
var $db;
function ManageDb($dsn, $username, $password){
$this->db = new PDO($dsn, $username, $password);
$this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
....