ODBC konekcija problem?!?

Dakle problem je u pristupu mysql bazi na linux masini, preko ODBC-a, sa windows masine!

evo malo podataka…

linux je mandriva 2006 powerpack, instaliran ODBC… mysql radi, phpmyadmin fercera, ali remote access sa windowsa ne radi…
linux kaze da je odbc driver 3.52 (?!?), na win je 3.51…

Dakle iz ODBC-a (win control panel… bla bla) se ne mogu konektovari, error Can’t connect to MySQL server on “xxx.xxx.xxx.xxx”[10061]

Ima li neko ideju?

Instaliraj PHP-Front na win masinu i pokusaj se skaciti na MySQL. Da li si dodao usera na MySQL koji moze pristupati sa xxx.xxx.xxx.xxx ip adrese

Dodao sam umijesto konkretne ip adrese znak ‘%’… A na win mashinki nemam php/apache…

Zar niko vec nije radio konekciju na MySQL server na linuxu sa win masine? Ili je kod vas sve proslo glatko?

Znam da novija verzija ODBC drivera ima problema sa nekim verzijama MySQL-a kao i nacin autentikacije. Provjericu konkretno koju kombinaciju koristim pa javim da mozes testirati.

Nisi dao dovoljno informacija da ti se moze adekvatno pomoc. Ovako je tesko rec zasto ne funkcionise.

Pokusaj instalirat naj aktuelniju verziju MySQL ODBC konektora na Windows. Provjeri da li slucajno nemas firewall na linux masini (port 3306). Probaj ovo (zamjeni 192.168.2.30 sa svojom IP adresom mysql servera):

$ telnet 192.168.2.30 3306 Trying 192.168.2.30... Connected to 192.168.2.30. Escape character is '^]'. DHost '192.168.2.1' is not allowed to connect to this MySQL serverConnection closed by foreign host.

Pogledaj i ovaj link: http://dev.mysql.com/doc/refman/5.0/en/connection.html

Mozda pomogne.

I jos nesot sto sam tek sad primjetio to “xxx.xxx.xxx.xxx”[10061]! Sta je 10061? Ako je to port onda nije ispravan!

100061 <=> PID

Evo ovako… Na linux-u je mysql 4.1.12, na windowsu myodbc 3.51.12 driver

dalje, preko telneta se ne mogu spojiti na linux… ERROR: could not open connection to the host, on port 3306: connect failed

firewall (shorewall) je prvo bio iskljucen, a sada je deinstaliran totalno…

Probaj na linux masini (mysql serveru) ovo:

# netstat -tap | grep mysql tcp 0 0 *:mysql *:* LISTEN 13316/mysqld
Sa tim mozes vidjet dali je port uopste ikako otvoren.

gornju naredbu odradi ali ne vrati nikakvu info. Dao sam si malo truda i pronasao da -ln umijesto -ta nesto i pokaze… evo rezultata:

unix 2 [ ACC ] STREAM LISTENING 7286 /var/lib/mysql/mysql.sock

Mozda nemas mysql u /etc/services?

Probaj sa:

netstat -tanp | grep 3306

opet se ta komanda izvrsi ali bez povratnih info…

no rucno sam pretrazio services i nasao ova 2 reda…

mysql 3306/tcp # MySQL
mysql 3306/udp # MySQL

Onda ti taj port nije otvoren i moras pregledat instalaciju mysqla.

Probaj deaktivirat mysql i pokrenut ga sa komandom:

mysqld_safe --port=3306 &

U fajlu /etc/my.cnf moraš podesiti da ti MySQL server sluša na mreži. Naći ćeš nešto ovakvo otprilike:

[quote]#bind-address = 127.0.0.1
skip-networking[/quote]
Moraš iskomentirati skip-networking, a odkomentirati bind-address i staviti svoju IP adresu preko koje pristupaš sa druge mašine MySQLu.

Hvala svima na trudu, al kao sto to obicno biva problem je bio do mene i mog neiskustva sa Delphijem (eh lijepi C++, linux i rucno pisane F-ije:), uporno sam htio otici korak vise nego je potrebno i naravno da sam imao problem :slight_smile: Zao mi je sto sam vas namucio, ali vam istovremeno hvala za trud i pomoc, ipak se naucilo nesto iz vasih postova! :slight_smile:

I jos jedno, nikad ne vjeruj delphiju kad kaze ‘catastrophic failure’ :wink: