Фон
Недавно я был назначен ответственным за поддержку почти завершенного веб-сайта и бэкэнда, написанных на 6 или около того языках (HTML, javascript, php, java, postgres, python ...). Я хорош с некоторыми из них, но не с другими (php, javascript).
Проблема
Я не могу подключить сайт к базе данных postgres с помощью php. Я нашел и изменил файл с именем dbconn.php (который предположительно отвечает за подключение к базе данных), и в настоящее время он выглядит следующим образом:
<?php
$host = "redshift-cluster-merp.something.region.redshift.amazonaws.com";
$port = 5430;
$user = "awsuser";
$pass = "myfancypassword";
$dbName = "merpdev";
$dsn = "pgsql:host=$host;dbname=$dbName;port=$port;";
$pdo = new PDO($dsn, $user, $pass);
?>
Это не создает связь между сайтом и базой данных. Тем не менее, я могу войти в базу данных с того же IP-адреса в терминале через
psql -h redshift-cluster-merp.something.region.redshift.amazonaws.com -U awsuser -p 5430 -d merpdev
И я также могу подключиться через JDBC с аналогичными параметрами. Файл dbconn.php
правильный или я что-то упустил?
Я предполагаю, что строки с $dsn
и / или $pdo
могут иметь синтаксическую ошибку.