2012-08-31 4 views
4

Я довольно новичок в CodeIgniter, но в прошлом я разработал несколько рабочих страниц. Я пытаюсь реорганизовать эти страницы (старые страницы все еще работают в Linux-окне Postgres) и разрабатывают их в окне Windows; но я застрял с вопросом подключения базы данных Postgres, и я получаю следующее сообщение об ошибке:PHP - Codeigniter - Ошибка подключения к PostgreSQL

A Database Error Occurred

Unable to connect to your database server using the provided settings.

Filename: C:\Subayogam_v2.0\Codeigniter\system\database\DB_driver.php
Line Number: 124

Я знаю, что эта ошибка возникает, когда конфигурация базы данных отсутствует, но у меня есть корректная конфигурация БД в C: \ Subayogam_v2.0 \ Codeigniter \ приложения \ Config \ database.php. Ниже приведен файл конфигурации данных:

$active_group = 'default'; 
$active_record = TRUE; 

$db['default']['hostname'] = 'localhost'; 
$db['default']['username'] = 'postgres'; 
$db['default']['password'] = 'mypassword'; 
$db['default']['database'] = 'subayogam_v2.0'; 
$db['default']['dbdriver'] = 'postgre'; 
$db['default']['dbprefix'] = ''; 
$db['default']['pconnect'] = TRUE; 
$db['default']['db_debug'] = TRUE; 
$db['default']['cache_on'] = TRUE; 
/*$db['default']['cachedir'] = '/var/subayogam_2.0/cache';*/ 
$db['default']['cachedir'] = 'C:\Subayogam_v2.0\Codeigniter\cache'; 
$db['default']['char_set'] = 'utf8'; 
$db['default']['dbcollat'] = 'utf8_general_ci'; 
$db['default']['swap_pre'] = ''; 
$db['default']['autoinit'] = TRUE; 
$db['default']['stricton'] = FALSE; 

я дважды проверил путь к папке кэша, а также попытался простой PHP-страницу, которая подключается к одной и той же БД, чтобы увидеть, если водители работают, и я могу видеть результаты из базы данных. В журнале ошибок Apache также нет полезных сообщений об ошибках. Я скопировал все приложение из текущей версии и изменил файл DB, чтобы указать на новую базу данных. Ничто другое не изменилось.

Что может быть неправильным? Есть ли какой-либо конкретный файл журнала, который может предоставить мне больше информации об ошибке?

+0

является 'db_driver' действительно' postgre' не 'postgres' или' postgresql'? * twitch * –

+1

Это сообщение. У меня есть рабочая версия в ящике Linux, которая использует posgre. – user1452030

+0

Вы смотрели в средстве просмотра событий Windows? Выполнен поиск файла внутри 'C: \ Subayogam_v2.0 \ Codeigniter', измененного за последний час (после запуска теста)? Я даже попробовал Process Monitor, чтобы узнать, могу ли я найти, куда писал исполняемый файл codeigniter, посмотреть, могу ли я обнаружить какие-либо журналы. –

ответ

6

У меня была аналогичная проблема, когда я впервые установил codeigniter с postgres. Postgres работает на другом порту, поэтому вам нужно указать порт в конфигурации базы данных как таковой; 5432 был выбран по умолчанию postgres по умолчанию, поскольку у меня уже установлен mysql.

 

    $db['default']['port'] = 5432; 

Смежные вопросы