Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [FIXED][symfony] propel-insert-sql na postgresie
Forum PHP.pl > Forum > PHP > Frameworki
Ziels
Witam,

Mam problem dotyczący symfony i postgresqla, otóż:

Mam w configach ustawione dane:
  1. <?php
  2. propel.project  = portal
  3. propel.database = pgsql
  4. propel.database.createUrl = pgsql://user@localhost/
  5. propel.database.url  = pgsql://user@localhost/db
  6. ?>


Dane są poprawne na 100%, hasła nie ma. Przy komendzie propel-insert-sql dostaję błąd:
  1. <?php
  2. ziell@greyworld:~/php/portal/svn/trunk$ sudo php5 symfony propel-insert-sql
  3. (...)
  4. Execution of target "insert-sql" failed for the following reason: /usr/share/php/symfony/vendor/propel-generator/build-propel.xml:296:1: [wrapped: Could not connect [User Info: host=localhost dbname='db' user='user'] [User Info: Array]]
  5. [phing] /usr/share/php/symfony/vendor/propel-generator/build-propel.xml:296:1: [wrapped: Could not connect [User Info: host=localhost dbname='db' user='user'] [User Info: Array]]
  6. ?>


Jednocześnie logowanie z konsoli przebiega bez problemu:
  1. <?php
  2. ziell@greyworld:~$ psql -U user --password
  3. Password for user user:
  4. Welcome to psql 8.2.5, the PostgreSQL interactive terminal.
  5. ?>


W pg_hba.conf mam ustawione następujące dane:
  1. <?php
  2. local all postgres  ident sameuser
  3. # TYPE DATABASE USER CIDR-ADDRESS METHOD
  4.  
  5. # "local" is for Unix domain socket connections only
  6. local  all  all  password
  7. # IPv4 local connections:
  8. host all  all  127.0.0.1/32 md5
  9. # IPv6 local connections:
  10. host all  all  ::1/128  md5
  11. ?>


Na www jest ten sam problem więc zakłądam że problem stoi po stronie samego php bądź symfony/propela. O co może chodzić?
gangrena
sprobuj ustawic jednak haslo dla uzytkownika, a w pg_hba ustal np.

  1. <?php
  2. # "local" is for Unix domain socket connections only
  3. local  all  all  password
  4. # IPv4 local connections:
  5. host all  all  127.0.0.1/32 password
  6. host all  all  192.168.0.254/24 password
  7. ?>

jezeli ci nie zalezy, mozesz zamiast password uzyc trust

sprawdz tez na jakim interfejsie chodzi www, byc moze jest tez problem na firewall-u
Ziels
Odpaliłem następujący skrypt w php:
  1. <?php
  2. $c = pg_connect('');
  3. ?>


Otrzymując takie błędy:

  1. <?php
  2. ziell@greyworld:/var/www$ php5 -d pgsql.max_links[=12] connect.php
  3. PHP Warning: Cannot load module 'pdo_pgsql' because required module 'pdo' is not loaded in Unknown on line 0
  4.  
  5. Warning: pg_connect(): Cannot create new link. Too many open links (0) in /var/www/connect.php on line 3
  6.  
  7. Warning: pg_last_error(): No PostgreSQL link opened yet in /var/www/connect.php on line 4
  8.  
  9. Warning: pg_close(): supplied argument is not a valid PostgreSQL link resource in /var/www/connect.php on line 5
  10. ?>



Czyli wina leży po stronie samego php. Można prosić jakiegoś moderatora o przeniesienie tematu na serwery www albo hydepark?



Edit:

Problem rozwiązany - skompilowałem od nowa php dla apache, i zacząłem korzystać z /usr/bin/php5-cgi connect.php pod konsolą. Działa smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.