LDAP + odbc +PostgreSQL
irek@mud.pl - 11-11-2006 00:51
LDAP + odbc +PostgreSQL
Witam
Chce wykonac połączenie jak w temacie i mam problem
postgresql-server-7.4.13 unixODBC-2.2.11 (testowałem rowniez połączenie poprzez libiodbc-3.52.4_1)
openldap server (2.4, 2.3, 2.2 - bez roznicy) OS - FreeBSD 6.1
odbc mam skonfigurowany prawidłowo (zakładam ze tak po testy wykonane poprzez narzedzie isql działaja prawidłowo) # cat odbc.ini
[PostgreSQL] Description = Postgres Driver = /usr/local/lib/libodbcpsql.so Trace = Yes TraceFile = sql.log Database = moja_baza Servername = localhost UserName = user Password = password Port = 5432 Protocol = 6.4 ReadOnly = No RowVersioning = No ShowSystemTables = No ShowOidColumn = No FakeOidIndex = No ConnSettings =
# cat odbcinst.ini [PostgreSQL] Description = PostgreSQL driver for Unix Driver = /usr/local/lib/libodbcpsql.so Setup = /usr/local/lib/libodbcpsqlS.so
openldap kompiluje z opcjami WITH_ODBC=yes WITH_DYNAMIC_BACKENDS=yes WITHOUT_BDB=yes WITHOUT_SASL=yes WITH_ODBC_TYPE=unixodbc
w slapd.conf wpisałem database sql suffix to co jest w bazie rootdn j.w. rootpw hasło dbname PostgreSQL dbuser user dbhost localhost dbpasswd password
i po wywołaniu # /usr/local/libexec/slapd -u ldap -g ldap -4 -d 5
dostaję:
backsql_open_db_conn: SQLConnect() to database "PostgreSQL" as user "user" failed: Return code: -1 Native error code: 201 SQL engine state: IM002 Message: Missing server name, port, or database name in call to CC_connect. backsql_get_db_conn(): could not get connection handle -- returning NULL
siedze juz nad tym problemem kolejny dzien (zamiast unixODBC testowałem libiodbc). PostgreSQL jest teraz w wersji 7.4.x ale próbowałem na wersji 8.1.x, wszystkie wersje openldap
gdzie moze byc błąd ? Czy ktos z Was przetestował takie rozwiązanie ?
-- p. Irek
Rafał Posmyk - 11-11-2006 00:51
irek@mud.pl wrote at Donnerstag, 14. September 2006 11:28:
> i po wywołaniu > # /usr/local/libexec/slapd -u ldap -g ldap -4 -d 5 > > dostaję: > > backsql_open_db_conn: SQLConnect() to database "PostgreSQL" as user "user" > failed: > [...] > Message: Missing server name, port, or database name in call > to CC_connect.
Pokaż jeszcze co jest w logu ODBC (TraceFile = sql.log)
> ... Czy ktos z Was przetestował takie rozwiązanie ?
Jeszcze nie, ale przymierzam się w ten sposób udostępnić firmową książkę adresową.
Ciao, Smyk -- Fju fju - powiedział Ćwirek
Paweł Matejski - 11-11-2006 00:51
irek@mud.pl wrote: > Witam > > Chce wykonac połączenie jak w temacie i mam problem > > postgresql-server-7.4.13 > unixODBC-2.2.11 (testowałem rowniez połączenie poprzez libiodbc-3.52.4_1) > > openldap server (2.4, 2.3, 2.2 - bez roznicy) > OS - FreeBSD 6.1 > > odbc mam skonfigurowany prawidłowo (zakładam ze tak po testy wykonane > poprzez narzedzie isql działaja prawidłowo) > # cat odbc.ini > > [PostgreSQL] > Database = moja_baza [...] > w slapd.conf wpisałem > dbname PostgreSQL
Ja się tam na ldap nie znam, ale to by sie zgadzało z komunikatem.
> backsql_open_db_conn: SQLConnect() to database "PostgreSQL" as user > "user" failed: > Return code: -1 > Native error code: 201 > SQL engine state: IM002 > Message: Missing server name, port, or database name in > call to CC_connect. > backsql_get_db_conn(): could not get connection handle -- returning NULL
A czy na pewno trzeba to robić za pośrednictwem odbc, nie można bezpośrednio?
-- P.M.
Andrzej Stróżyński - 11-11-2006 00:51
Użytkownik "Paweł Matejski" napisał: [...] >> [PostgreSQL] >> Database = moja_baza > [...] >> w slapd.conf wpisałem >> dbname PostgreSQL > > Ja się tam na ldap nie znam, ale to by sie zgadzało z komunikatem. > >> backsql_open_db_conn: SQLConnect() to database "PostgreSQL" as user >> "user" failed: >> Return code: -1 >> Native error code: 201 >> SQL engine state: IM002 >> Message: Missing server name, port, or database name in >> call to CC_connect. >> backsql_get_db_conn(): could not get connection handle -- returning NULL
no właśnie, czy aby na pewno baza, do której chcesz się podłączyć, nazywa się "PostgreSQL"? Jeśli faktycznie bazę nazwałeś tak jak nazwa RDBMS-a to może ta nomenklatura prowadzi do jakichś czeskich błędów?
pozdrawiam A.S.
irek@mud.pl - 11-11-2006 00:51
Paweł Matejski wrote: > A czy na pewno trzeba to robić za pośrednictwem odbc, nie można bezpośrednio? >
openldap nie daje natywnego wsparcia do zadnej bazy danych, ale poprzez własnie odbc moze podłączyc sie do MySQL, Oracle, Postgress-a, itd
-- p. Irek
irek@mud.pl - 11-11-2006 00:51
Andrzej Stróżyński wrote:
> no właśnie, czy aby na pewno baza, do której chcesz się podłączyć, > nazywa się "PostgreSQL"? Jeśli faktycznie bazę nazwałeś tak jak nazwa > RDBMS-a to może ta nomenklatura prowadzi do jakichś czeskich błędów?
baza sie oczywiscie nie nazywa (prawidziwa nazwa jest wpisywana w konfiguracji odbc - tam sie wpisuje po jakims cname-a zadeklarowanym własnie w odbc) PostgreSQL
-- p. Irek
Andrzej Stróżyński - 11-11-2006 00:52
Użytkownik <irek@mud.pl> napisał: > Andrzej Stróżyński wrote: > > > no właśnie, czy aby na pewno baza, do której chcesz się podłączyć, > > nazywa się "PostgreSQL"? Jeśli faktycznie bazę nazwałeś tak jak nazwa > > RDBMS-a to może ta nomenklatura prowadzi do jakichś czeskich błędów? > > baza sie oczywiscie nie nazywa (prawidziwa nazwa jest wpisywana w > konfiguracji odbc - tam sie wpisuje po jakims cname-a zadeklarowanym własnie > w odbc) PostgreSQL
pytam, ponieważ podałeś, że masz taki wpis: >> w slapd.conf wpisałem >> dbname PostgreSQL
a "dbname" kojarzy mi się raczej z konkretną nazwą bazy a nie jakimś odnośnikiem do sekcji w innym pliku.
pozdrawiam A.S.
Rafał Posmyk - 11-11-2006 00:52
Andrzej Stróżyński wrote at Donnerstag, 14. September 2006 22:39:
> pytam, ponieważ podałeś, że masz taki wpis:
>>> w slapd.conf wpisałem >>> dbname * * * * *PostgreSQL
> a "dbname" kojarzy mi się raczej z konkretną nazwą bazy a nie jakimś > odnośnikiem do sekcji w innym pliku.
To powinno być ok. "man slapd-sql" mówi:
/.../ DATA SOURCE CONFIGURATION dbname <datasource name> The name of the ODBC datasource to use.
dbhost <hostname> dbpasswd <password> dbuser <username> The three above options are generally unneeded, because this information is taken from the datasource specified by the dbname directive. They allow to override datasource settings. Also, several RDBMS' drivers tend to require explicit passing of user/password, even if those are given in datasource (Note: dbhost is currently ignored). /.../
Irek, a co sie dzieje, jeśli rzeczywiście pominiesz dbhost, dbuser i dbpassword ?
Co rozumiesz przez:
>>> odbc mam skonfigurowany prawidłowo (zakładam ze tak po testy >>> wykonane poprzez narzedzie isql działaja prawidłowo)
Czyli możesz sie połączyć ze źródłem "PostgreSQL" i wykonać zapytania które wykonywać będzie LDAP ?
Ciao, Smyk -- Fju fju - powiedział Ćwirek
irek@mud.pl - 11-11-2006 00:52
Rafał Posmyk wrote:
> Czyli możesz sie połączyć ze źródłem "PostgreSQL" i wykonać zapytania > które wykonywać będzie LDAP ? > > Ciao, Smyk
juz jest wszystko OK
brakowało zmiennej środowiskowej ODBCINI=/usr/local/etc/odbc.ini -- p. Irek
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[PostgreSQL] - jak =?ISO-8859-2?Q?zabezpieczy=E6_interesy_tw?==?ISO-8859-2?Q?=F3rcy_systemu_=3F=3F=3F?=
postgresql - int/int
postgresql Select count(*) czy raczej Select count(ID)
[PostgreSQL] jak =?ISO-8859-2?Q?pobra=E6_warto=B6=E6_zwracan?==?ISO-8859-2?Q?=B1_przez_funkcj=EA=3F?=
[postgresql] INSERT OR UPDATE - jak =?ISO-8859-2?Q?b=EAdzie_na?==?ISO-8859-2?Q?jlepiej=3F?=
[postgresql] kilka =?ISO-8859-2?Q?rekord=F3w_subquery_jako_?==?ISO-8859-2?Q?string?=
[PostgreSQL] Jak =?ISO-8859-2?Q?po=B3=B1czy=E6_funkcje_z_w?==?ISO-8859-2?Q?idokiem?=
Postgres - replikcja master-master
Dopasowanie do "najlepszego" dopasowania :) [ PostgreSQL]
Problemy z =?ISO-8859-2?Q?instalacj=B1_PostgreSQL_na_syste?==?ISO-8859-2?Q?mach_Windows?=
zanotowane.pldoc.pisz.plpdf.pisz.plshanti.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|