PHP-Zugriff auf MySQL-Datenbank

  • Moin,

    wenn ich versuche, via PHP auf die MySQL (MariaDB)-Datenbank meines Raspi zuzugreifen kommt

    - nix...

    hier das Minimalprogramm:

    Ausgabe ist 12

    Beim ähnlichen python-Script mit

    Code
    con = MySQLdb.connect("pi-keller.fritz.box", "db_joh", "pw", "temperaturen")

    läuft dagegen alles.

    Beide Scripte werden von anderen Rechnern ausgeführt, das Python-Script von einem weiteren Raspi, das PHP-Script von einem Synology-NAS.

    Irgendwo gibt es da ein Rechte-Problem, aber wo?

    PS: Das PHP-Script läuft auf dem Raspi mit localhost sauber durch.

    Aber da ich das PHP-Script für eine Ajax-Anwendung nutzen will, klappt dabei der externe Zugriff zum Raspi wiederum nicht ;(

    => Irgendwas ist ja immer

    Gruß

    Joh

  • Kann der Server wo PHP drauf läuft den Hostnamen pi-keller.fritz.box auch auflösen?
    Mach da mal ein ping pi-keller.fritz.box, alternativ versuch mal die IP statt dem Hostnamen in der php Datei.

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Minimalprogramm:

    Auch das sollte gesprächiger gemacht werden um wenigstens Fehler zu sehen ...

    https://www.php.net/manual/de/mysqli.construct.php

  • Hast du denn den externen Zugriff auch in der config erlaubt?

    Code
    $ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

    -> bind-address = 0.0.0.0 (vorher war dort ein 127.0.0.1, ggf. das # vor der Zeile entfernen)

    Anschließend braucht der User noch einen externen Login

    Code
    $ sudo mysql
    
    create user "xyz"@"%" identified by "passwordabc";
    grant all privileges on datenbank.* to "user"@"%";
    flush privileges;

    -> xyz durch den Mysqlbenutzernamen, passwortabc durch das Passwort & datenbank durch den Namen der Datenbank ersetzen :)

    anschließend noch den Dienst neustarten:

    Code
    sudo service mysql restart

    2 Mal editiert, zuletzt von Zynischer (3. Mai 2022 um 12:54) aus folgendem Grund: Formatierung angepasst

  • Hast du denn den externen Zugriff auch in der config erlaubt?

    Hat er wohl :

    Zitat

    Beide Scripte werden von anderen Rechnern ausgeführt, das Python-Script von einem weiteren Raspi, das PHP-Script von einem Synology-NAS.

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Auch das sollte gesprächiger gemacht werden um wenigstens Fehler zu sehen ...

    https://www.php.net/manual/de/mysqli.construct.php

    Richtig.
    Ich vermute das die PHP-MySQL erweiterung auf dem NAS gar nicht aktiv ist.

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!