[debian] mysql geen verbinding via php

Pagina: 1
Acties:
  • 102 views sinds 30-01-2008
  • Reageer

  • TromboneFreakus
  • Registratie: Juli 2001
  • Laatst online: 01-08-2023
We zijn nu al een tijdje bezig in de hoop op Debian de combinatie php4, mysql en apache2 draaiende te krijgen. Dat wil echter totaal niet.

Met phpmyadmin inloggen op de database-server geeft geen respons: geen foutmelding, nada. Via de Linux-bak een telnet uitvoeren op port 3306 geeft echter prima verbinding. En phpmyadmin werkte ook direct na het installeren via 'apt-get'. Waarom krijgt php nu geen verbinding met MySQL? Moeten we nog iets instellen in de firewall of zo?

We hebben al diverse tutorials gevolgd, zoals die op http://www.linuxhelp.net/guides/mysql/. Dat ging allemaal perfect.

Any help??

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Heb je je apache errorlog al eens bekeken?

  • jant
  • Registratie: Juli 2000
  • Niet online
Kun je wel inloggen via een prompt, zo ja probeer dit eens:

http://www.johankooijman.com/archives/59

Een album per dag; een selectie: https://open.spotify.com/playlist/6s3nNLl8pJpCwLR3LPligA?si=dddc51153b2a49e8


  • thegve
  • Registratie: Februari 2004
  • Laatst online: 25-12-2025
Toevallig geen ervaring met de betreffende pakketten. Maar veel dingen die je apt-get zijn standaard dichtgetimmerd voor toegang van buitenaf. Zou je de .conf even voor moeten lezen. Verder zou je het es kunnen proberen om met dpkg alle pakketten eraf te gooien. En direct phpmyadmin te apt-getten. Dan pakt hij zelf iig bij elkaar passende versies van mysqladmin en mysql.(als respons op Jant)

Verwijderd

TromboneFreakus schreef op maandag 04 juli 2005 @ 22:36:
We zijn nu al een tijdje bezig in de hoop op Debian de combinatie php4, mysql en apache2 draaiende te krijgen. Dat wil echter totaal niet.

Met phpmyadmin inloggen op de database-server geeft geen respons: geen foutmelding, nada. Via de Linux-bak een telnet uitvoeren op port 3306 geeft echter prima verbinding. En phpmyadmin werkte ook direct na het installeren via 'apt-get'. Waarom krijgt php nu geen verbinding met MySQL? Moeten we nog iets instellen in de firewall of zo?

We hebben al diverse tutorials gevolgd, zoals die op http://www.linuxhelp.net/guides/mysql/. Dat ging allemaal perfect.

Any help??
Ik neem dat er geen X geinstalleerd is op die server, wat gebeurd als je via bijvoorbeeld Lynx een verbinding maakt op naar poort 3306 op de lokale server, werkt het dan wel ?

Zo ja, dan moet in de configuratie zitten , er zal waarschijnlijk iets in de logs staan in /var/log/ of in de apache log.

Als je een Firewall gebruik, zet die eens uit.

  • Zwerver
  • Registratie: Februari 2001
  • Niet online
Verwijderd schreef op dinsdag 05 juli 2005 @ 06:45:
[...]


Ik neem dat er geen X geinstalleerd is op die server, wat gebeurd als je via bijvoorbeeld Lynx een verbinding maakt op naar poort 3306 op de lokale server, werkt het dan wel ?

Zo ja, dan moet in de configuratie zitten , er zal waarschijnlijk iets in de logs staan in /var/log/ of in de apache log.

Als je een Firewall gebruik, zet die eens uit.
Uhmz, wat is het nut van het connecten met een browser naar port 3306 dan? Het is niet zo dat daar een phpmyadmin op draait ofzo ;) Aan de TS, verduidelijk eens wat er niet werkt? Kan je wel database connecties maken vanaf buiten en werkt alleen phpmyadmin niet? Of werkt het geen van beiden? Standaard mag je met phpmyadmin onder Debian afaik alleen vanaf de localhost connecten, zelfde geldt voor het connecten naar je mysql-server, dat mag standaard (wederom afaik) alleen via de socket en vanaf localhost. Kwestie van de config-files doorspitten dus ;)

Woonachtig Down Under. Ik negeer je insults niet, maar tegen de tijd dat ik ze lees zijn ze meestal niet relevant meer


  • Aapzak
  • Registratie: November 2000
  • Laatst online: 08-01 15:23

Aapzak

Your genuine OS hopper

Volgens mij is het inderdaad zo dat standaard php op localhost connect via socket en niet via tcp. Dus of je kunt connecten op die poort is onbelangrijk, volgens mij staat dat niet eens aan in een standaard installatie.

Je zou inderdaad moeten kijken of je op de commandline kunt connecten door het draaien van 'mysql' client. Standaard install geeft root vanaf localhost toegang zonder password.
code:
1
mysql -u root


als dat lukt moet het vanuit php ook kunnen ( als je extension=mysql.so in je php.ini hebt staan, maar dat moet haast wel, anders doet phpmyadmin het ook niet)

PSN ID: Aapzak


Verwijderd

Ik heb ongeveer hetzelfde probleem.
Connecten met mysql wil bij mij dan wel, ook via phpmyadmin en webmin etc.
Mysql staat ook niet in phpinfo. Nou was ik dus bezig met het installeren van mambo.
Voor diegene die het kennen, je hebt dan zon overzicht met welke modules je hebt of mist. Hij geeft dus bij mysql support - unavailable aan. Dus op een of andere manier kan php niet met mysql praten.
TS, probeer eens phpinfo file te maken en checken of mysql ertussen staat..

  • majornono
  • Registratie: Juni 2002
  • Laatst online: 03-02 14:55
is een van de volgende twee wel geinstalleerd (afhankelijk van je phpversie)?
  • php3-mysql
  • php4-mysql

Problem Exists Between Chair And Keyboard


Verwijderd

Zwerver schreef op dinsdag 05 juli 2005 @ 08:21:
[...]


Uhmz, wat is het nut van het connecten met een browser naar port 3306 dan? Het is niet zo dat daar een phpmyadmin op draait ofzo ;) Aan de TS, verduidelijk eens wat er niet werkt? Kan je wel database connecties maken vanaf buiten en werkt alleen phpmyadmin niet? Of werkt het geen van beiden? Standaard mag je met phpmyadmin onder Debian afaik alleen vanaf de localhost connecten, zelfde geldt voor het connecten naar je mysql-server, dat mag standaard (wederom afaik) alleen via de socket en vanaf localhost. Kwestie van de config-files doorspitten dus ;)
Je heb gelijk, ik heb een foutje gemaakt, dat zal me leren om te reageren voordat ik m'n eerste kop koffie heb gehad. 3306 is de standaard poort van Mysql.

Dat mysql server alleen bereikbaar vanaf localhost is me bekend, maar die heb je ook niet nodig, via phpmyadmin maak je een verbinding naar localhost.

Maar dat phpmyadmin ook een beperking op ip nummer had wist ik niet, ik heb in m'n config.inc.php gekeken , maar daar kon ik geen setting vinden, waar je de beperking van ip nummers in kon stellen, weet je toevallig welke setting dat is ?

Of wordt dat in Debian anders geregeld, ik heb geen phpmyadmin van Debian geinstalleerd, maar gewoon via een tar file, die is door een externe web ontwikkelaar geinstalleerd.

,

  • Gwaihir
  • Registratie: December 2002
  • Niet online
Ik heb hier deze week ook Debian geinstalleerd (sarge) en daarbij de php-myadmin installatie onveranderd gelaten (systeem was RedHat8, phpMyAdmin is 2.5.7pl1). Dat gaf geen problemen.

Toen een en andere al wel geinstalleerd wat maar de databases nog niet ingesteld en gevuld gaf dat een duidelijk te begrijpen foutmelding. Mijn eerste gedachte daarom: draait je phpMyAdmin wel goed? Installeren daarvan is nooit erg veel meer dan een archief uitpakken, dus misschien was je archief niet compleet?

[ Voor 3% gewijzigd door Gwaihir op 08-07-2005 20:49 ]


  • Suepahfly
  • Registratie: Juni 2001
  • Laatst online: 05-02 13:47
Kijk eerst even of mysqld draaid en of de mysql config goed is.
je moet iid de volgend regens in /etc/mysql.cnf hebben staat (lokatie kan anders zijn trouwens)
code:
1
2
3
[mysqld]
basedir=/pad/naar/mysqld
datadir=/pad/naar/databases/


Verlvolgens moet je kijken of de mysql extensie wel is mee gecompileerd in php. Door een bestandje in je webroot te zetten met de volgende regel
code:
1
phpinfo();

en het aan te roepen vanuit een browser. Als mysql er in zit dan moet dat op die pagina staat.
Zo niet dat doe je in de php installatie dir
./configure --with-mysql

  • TromboneFreakus
  • Registratie: Juli 2001
  • Laatst online: 01-08-2023
Het werkt nu wel, na de software opnieuw geinstalleerd te hebben en na Firefox te gebruiken voor phpmyadmin ipv Internet Explorer. Waarom dat wat uitmaakt is overigens nog wel de vraag, maar goed...

Ik zit nu alleen nog met externe connections naar mysql. Heb % in de table host toegevoegd, maar krijg nog een connection refused. Nog ergens anders datzelfde instellen?

  • m33p
  • Registratie: September 2002
  • Laatst online: 06-02 20:21
Ja je moet je config ff nakijken. Daar moet je een listen poort en IP opgeven (standaard op 127.0.0.1). Hier moet je ff het IP van de netwerkkaart bij zetten en dan moet het werken.

  • DeMoN
  • Registratie: Maart 2001
  • Laatst online: 06-01 23:13

DeMoN

Pastafari

ff je /etc/mysql/my.cnf checken dus :)
#
# The skip-networkin option will no longer be set via debconf menu.
# You have to manually change it if you want networking i.e. the server
# listening on port 3306. The default is "disable" - for security reasons.
#skip-networking
edit: ik snap niet waarom je er vanaf een externe host bij wilt btw..
Je connect via je externeclient naar je webserver -> php -> mysql
Dat werkt gewoon hoor.
Wat jij wilt kunnen is externeclient -> mysql
En dat is dus overbodig, of je moet vanaf extern direct qeuries willen kunnen uitvoeren maar het lijkt mij dat je dat door php wilt laten doen. En anders kan je via ssh inlogen en alsnog vanaf de cli queries uitvoeren.

[ Voor 121% gewijzigd door DeMoN op 12-07-2005 12:58 ]

Gamertag: Cosmicv0id
"Het woord Gods is voor mij niets meer dan een expressie en het product van menselijke zwakheid. De Bijbel is een verzamelwerk van legendes die achtenswaardig zijn maar ook primitief en kinderachtig.'' - Albert Einstein


  • m33p
  • Registratie: September 2002
  • Laatst online: 06-02 20:21
Wat DeMoN zegt is allen bij de 'oudere' versies, ik weet zo niet vanaf welke versie maar in de 'nieuwe' versies is het dat je een IP moet instellen waarop hij luisterd. Standaard staat deze op 127.0.0.1, alleen lokaal dus. Stel je deze in op het IP van je netwerkkaart, dan kun je hem ook extern benaderen.
Pagina: 1