Drei Raspberry's und eine externe mariadb Datenbank

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo,

    Ich nutze einen raspberry mit einer mariadb datenbank. diese datenbank ist auch voll verfügbar über diesen pi.

    nun möchte ich diese datenbank extern für weitere Pi's nutzen.

    einen testcode habe ich hier

    php7.0

    PHP
    <?php
    ini_set('display_errors', 1);
    error_reporting(-1); 
    $pdo = new PDO('mysql:host=192.168.178.100;dbname=tabelle', 'root', 'passwort');
    
    $id=1;
    $statement = $pdo->prepare("UPDATE user SET test  = 99 WHERE id = :id");
    $statement->execute(array('id' => $id));
    ?>

    nun bekomme ich eine fehlermeldung (denke es geht um rechte vergabe)

    Zitat

    Fatal error: Uncaught PDOException: SQLSTATE[HY000] [1045] Access denied for user 'root'@'Zero.fritz.box' (using password: YES) in /var/www/test-0.php:4
    Stack trace:
    #0 /var/www/test-0.php(4): PDO->__construct('mysql:host=192....', 'root', 'passwort')
    #1 {main} thrown in /var/www/test-0.php on line 4

    was mache ich falsch bzw wie komme ich weiter?:wallbash:

    #-Wer Rechtschreibfehler findet, darf sie behalten.

    #-Wer fragt, ist ein Narr für 5 Minuten. Wer nicht fragt, ist ein Narr sein Leben lang.

    #-Keiner ist so blind wie der, der nicht sehen will.

  • Drei Raspberry's und eine externe mariadb Datenbank? Schau mal ob du hier fündig wirst!

  • Schon seit einiger Zeit ist der MariaDB Server zur Administration derart geschützt, als der SQL-Administrator "root" nur dann auf die SQL-Datenbanken Zugriff hat, wenn er auch selbst am localhost des mySQL Servers der User root ist.

    Der mySQL Server selbst hat eine eigene Userverwaltung, mit der nicht nur Datenbank- und Tabellenrechte, sondern auch der Zugriff aus einem Netzwerk, oder von einem Host, festgelegt wird.

    Normalerweise ist es Aufgabe des SQL Admins Datenbanken, Tabellen und User so einzurichten, dass nur ein beschränkter Userkreis eine Datenbank und deren Tabellen lesen, beschreiben, ändern und löschen kann. Hier z.B. ein User www, oder php in einer eigenen Datenbank ausserhalb der Systemdatenbank.

    Servus !

    RTFM = Read The Factory Manual, oder so

  • Danke für die Antworten.

    habe es nun aber anders gelöst.

    variablen im heimnetzwerk übergeben ich mit get in der url.

    nicht schön dafür selten.

    #-Wer Rechtschreibfehler findet, darf sie behalten.

    #-Wer fragt, ist ein Narr für 5 Minuten. Wer nicht fragt, ist ein Narr sein Leben lang.

    #-Keiner ist so blind wie der, der nicht sehen will.

Jetzt mitmachen!

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