Toon posts:

[Gentoo] Kan niet met MySQL server connecten

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik draai hier Gentoo met een 2.6 kernel. Hierop draait o.a. MySQL 4.0.22. Het lukt me niet om een externe connectie met de MySQL server te leggen. Vanuit Webmin is de MySQL server benaderbaar (alhoewel ik niet weet in hoeverre Webmin van MySQL gebruikt maakt en wat gewoon door Webmin gedaan wordt). Wil ik lokaal connecten (via telnet) met de server, dan krijg ik dit:

code:
1
2
3
4
5
6
tuxserver root # telnet localhost 3306
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
'
4.0.22"lzC}n.:,Connection closed by foreign host.


Doe ik het nog eens, dan zie ik dit:
code:
1
2
3
4
5
6
tuxserver root # telnet localhost 3306
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
'
4.0.22m:vf{X&T,Connection closed by foreign host.


Zoals je ziet staan er telkens een aantal willekeurige tekens

Nu heb ik ter controle eventjes phpBB2 op mijn server gezet en dat werkt gewoon. Conclusie: MySQL werkt! Wil ik echter vanuit een extern station uit hetzelfde netwerk met de MySQL server verbinden, dan krijg ik een access denied melding. Probeer ik hetzelfde maar dan via een SSH tunnel dan krijg ik de melding dat de verbinding met de database tijdens een query (in heb geen query ingegeven, dus het zal om een initialisatie gaan...?) verbroken is.

In eerste instantie zou je denken aan een firewall probleem, maar dat denk ik niet. Ik heb enkel IPtables op deze computer geinstalleerd en ik heb alles openstaan (dus geen rules gedefinieerd). De server werkt ook op alle andere poorten (http, https, ftp etc).

Wie kan mijn helpen?

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 13-02 20:06

Gerco

Professional Newbie

Heb je in my.cnf de optie skip-networking wel uitgezet?
Heeft de user waarmee je probeert te verbinden wel rechten om dat remote te doen (veld Host in users tabel in mysql database)
Mag die user remote wel een bepaaldde database benaderen (veld Host in db tabel in mysql database)

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • El_kingo
  • Registratie: Mei 2002
  • Laatst online: 17-03-2025
Heb je in je mysql configuratie file 'skip-networking' uit gezet ?
als deze aan staat is het nl alleen mogelijk vanaf localhost te connecten

[ Voor 6% gewijzigd door El_kingo op 17-02-2005 13:28 . Reden: Damn it, Spuit 11.... ]


Verwijderd

Topicstarter
Voor skip networking staat een #, dus die is idd uitgeschakeld.

Verder heb ik de gebruiker alle mogelijke rechten toegekend, zelfs dat maakt niets uit. Ik heb nu op mijn Winblows PC even PremiumSoft Navicat gezet (pakket gebruik ik al een jaar of 2 met allerhande MySQL dbs) en ik krijg altijd de melding "Can't connect to MySQL server on '192.168.1.2' (10061)". Andere tools geven soortgelijke foutmeldingen.

  • dajappie
  • Registratie: Januari 2005
  • Laatst online: 09:58
In zowel de 'user' als de 'db' tabel van de 'mysql' database staat voor de betreffende gebruiker een '%' bij het Host-attribuut? Je hebt een FLUSH PRIVILEGES gedaan na de aanpassing van de rechten?

[ Voor 14% gewijzigd door dajappie op 17-02-2005 14:23 ]


  • weijl
  • Registratie: Juli 2002
  • Niet online
heet dat OS niet windows?

Verwijderd

Topicstarter
dajappie schreef op donderdag 17 februari 2005 @ 14:23:
In zowel de 'user' als de 'db' tabel van de 'mysql' database staat voor de betreffende gebruiker een '%' bij het Host-attribuut? Je hebt een FLUSH PRIVILEGES gedaan na de aanpassing van de rechten?
Ik heb het zonet even gecontroleerd. Er stond geen % in de user tabel. Veranderd, flush gedaan maar geen resultaat. Helaas....

Verwijderd

Topicstarter
Hmm ja Navicat draait idd op Windows, maar het probleem zit niet bij Windows maar MySQL opd e Linux bak... ik kan alleen vanaf de localhost gonnecten en verder vanaf geen enkele PC....

  • stefklep
  • Registratie: Januari 2003
  • Laatst online: 06-02 11:04

stefklep

((Stefklepje))

Verwijderd schreef op donderdag 17 februari 2005 @ 16:36:
[...]


Hmm ja Navicat draait idd op Windows, maar het probleem zit niet bij Windows maar MySQL opd e Linux bak... ik kan alleen vanaf de localhost gonnecten en verder vanaf geen enkele PC....
Ja dat komt omdat je met bv phpmyadmin even een ip adres ik dacht van de server moet invullen en dat zal het wel lukken ofwel haal bij host % en maak daar een ip adres van je server van.

Verwijderd

Topicstarter
stefklep schreef op donderdag 17 februari 2005 @ 18:25:
[...]

Ja dat komt omdat je met bv phpmyadmin even een ip adres ik dacht van de server moet invullen en dat zal het wel lukken ofwel haal bij host % en maak daar een ip adres van je server van.
bij host het ip van de server? moet het dan niet van de client zijn?

  • stefklep
  • Registratie: Januari 2003
  • Laatst online: 06-02 11:04

stefklep

((Stefklepje))

Verwijderd schreef op donderdag 17 februari 2005 @ 19:00:
[...]


bij host het ip van de server? moet het dan niet van de client zijn?
Nee heb het hier net even voor je uitgeprobeerd en zelf een beetje mee speelen kan ook geen kwaad ;)

  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Volgens mij is % niet genoeg als je ook localhost wil. Je moet dan zowel een row maken met % als een met localhost, als je de user het privilege wil geven van waar dan ook in te loggen.

Rustacean


  • rschu68
  • Registratie: December 2000
  • Laatst online: 27-01 10:05
Het zal wel een domme opmerking van mij zijn maar ja, toch maar...

je zegt "telnet localhost 3306" maar wat gebeurt er als je zegt "telnet localhost:3306"
(host:port) > _/-\o_
Het lijkt alsof je gewoon een telnet sesie via de poort van telnet het opzetten bent ?

  • dajappie
  • Registratie: Januari 2005
  • Laatst online: 09:58
remke schreef op vrijdag 18 februari 2005 @ 14:17:
je zegt "telnet localhost 3306" maar wat gebeurt er als je zegt "telnet localhost:3306"
(host:port) > _/-\o_
Het lijkt alsof je gewoon een telnet sesie via de poort van telnet het opzetten bent ?
Onder Linux-telnet staat er een spatie geen dubbele punt tussen host en poort :) Daarbij kon je zien dat hij netjes een reply kreeg van zijn server nl. het versienr. van z'n MySQL en vervolgens wat machine-meuk.

  • PowerSp00n
  • Registratie: Februari 2002
  • Laatst online: 17-11-2025

PowerSp00n

There is no spoon

Manuzhai schreef op vrijdag 18 februari 2005 @ 12:29:
Volgens mij is % niet genoeg als je ook localhost wil. Je moet dan zowel een row maken met % als een met localhost, als je de user het privilege wil geven van waar dan ook in te loggen.
Yup klopt, heb ik laatst ook zo mee zitten kloten.

Verwijderd

Zomaar een idee, maar heb je in my.cnf deze optie al aangepast:
code:
1
2
3
# keep secure by default!
bind-address    = 127.0.0.1
port            = 3306

Naar bijvoorbeeld:
code:
1
2
3
# keep secure by default!
bind-address    = 0.0.0.0
port            = 3306

Aangezien de mysqld anders alleen maar op localhost luistert, en connecties van buiten de machine sowieso gereject worden. En dat is toevallig de default config van Gentoo.

En staat er een # voor "skip-networking"?
Anders doet hij sowieso geen networking.

[ Voor 37% gewijzigd door Verwijderd op 18-02-2005 17:12 ]


Verwijderd

Topicstarter
Verwijderd schreef op vrijdag 18 februari 2005 @ 17:06:
Zomaar een idee, maar heb je in my.cnf deze optie al aangepast:
code:
1
2
3
# keep secure by default!
bind-address    = 127.0.0.1
port            = 3306

Naar bijvoorbeeld:
code:
1
2
3
# keep secure by default!
bind-address    = 0.0.0.0
port            = 3306

Aangezien de mysqld anders alleen maar op localhost luistert, en connecties van buiten de machine sowieso gereject worden. En dat is toevallig de default config van Gentoo.

En staat er een # voor "skip-networking"?
Anders doet hij sowieso geen networking.
En dat was het probleem! Ik heb het bind adres veranderd en nu werkt het als een tierelier. Je bent dan ook hartstikke bedankt!
Pagina: 1