Назад | Перейти на главную страницу

pgsql не загружается (CentOS 6.8)

* Прежде всего, не отвечайте «php.ini >> uncomment extension = pgsql.so и перезапустите httpd». сделал это миллионы раз, не решило мою проблему.

* Пробовал сотни методов, описанных на разных сайтах, включая stackoverflow, но, к сожалению, у меня не сработало (я склоняюсь к Linux >> noob)

ИНФОРМАЦИЯ: httpd 2.2.15, php 5.6.26 (remi-php56), CentOS 6.8, postgresql 8.2.9

Ошибка 1:

Неустранимая ошибка: вызов неопределенной функции mb_convert_encoding () в /var/www/html/bancarella_dev/config.php в строке 6

Ошибка 1 была решена:

yum install php-mbstring
service httpd restart

Ошибка 2:

Неустранимая ошибка: вызов неопределенной функции pg_connect () в /var/www/html/bancarella_dev/dbconnect.php в строке 69

Чтобы решить ошибку 2, я сделал:

yum install php-pgsql
service httpd restart

Но это не решило ошибку 2.

Чтобы увидеть, какие расширения загружаются, я создал тестовый файл test.php

Код:

$isPgsql =  extension_loaded('pgsql') ? 'yes':'no';

echo "pgsql loaded: {$isPgsql}" ;

print_r(get_loaded_extensions());

Вывод test.php:

pgsql loaded: no

Array
(
    [0] => Core
    [1] => date
    [2] => ereg
    [3] => libxml
    [4] => openssl
    [5] => pcre
    [6] => zlib
    [7] => filter
    [8] => hash
    [9] => Reflection
    [10] => SPL
    [11] => session
    [12] => standard
    [13] => apache2handler
    [14] => bz2
    [15] => calendar
    [16] => ctype
    [17] => curl
    [18] => mbstring
    [19] => fileinfo
    [20] => ftp
    [21] => gettext
    [22] => iconv
    [23] => exif
    [24] => PDO
    [25] => Phar
    [26] => sockets
    [27] => sqlite3
    [28] => tokenizer
    [29] => pdo_pgsql
    [30] => pdo_sqlite
    [31] => json
    [32] => zip
    [33] => mhash
)

Итак, mbstring загружена (поэтому ошибка 1 была решена).

Из массива видно, что pdo_pgsql также загружен, но pgsql - нет.

Зачем? все еще получаю:

Вызов неопределенной функции pg_connect ()

Пожалуйста помоги.

Я обновил PostgreSQL (как предложил @RemiCollet), и все работает правильно.

yum install postgresql96*  
service postgresql-9.6 initdb  
chkconfig postgresql-9.6 on  
service postgresql-9.6 start