Announcement

Collapse
No announcement yet.

Kein Zugriff auf Datenbank möglich

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Kein Zugriff auf Datenbank möglich

    Moin,

    Ich dreh hier gerade durch....

    Habe ne Datenbank auf einem Raspberry aufgesetzt.
    Alles TOP... PHPMYADMIN läuft. Daten liesen sich importieren, etc....

    Alles schick...

    Ich bekomme nur keinen Zugriff auf die Werte.

    Einen Benutzer habe ich angelegt. Mittlerweile sogar mit GRANT.

    Wenn ich jetzt über PHP drauf zugreifen will:

    Code:
    <?php
    error_reporting(E_ALL);
    
    define ( 'MYSQL_HOST',      'ZieIP' );
    define ( 'MYSQL_BENUTZER',  'meinBenutzer' );
    define ( 'MYSQL_KENNWORT',  'meinpasswort' );
    define ( 'MYSQL_DATENBANK', 'meineDatenbank' );
    
    $db_link = mysqli_connect (MYSQL_HOST, 
                               MYSQL_BENUTZER, 
                               MYSQL_KENNWORT, 
                               MYSQL_DATENBANK);
    
    if ( $db_link )
    {
        echo 'Verbindung erfolgreich: ';
        print_r( $db_link);
    }
    else
    {
        die('keine Verbindung möglich: ' . mysqli_error());
    }
    ?>
    Dann bekomme ich nur als Ausgabe:
    "keine Verbindung möglich:"

    Mehr nicht.

  • #2
    Alles TOP... PHPMYADMIN läuft.
    Wozu? Wenn du eine lokale DB angelegt hast, warum benutzt du zur Verwaltung dieser, das denkbar schlechteste Tool dafür?
    https://www.mysql.com/de/products/workbench/

    Laufen DB und Webserver auf dem gleichen Host?
    Ist ZieIP dann localhost?

    https://www.bennyn.de/webanwendungen...-erlauben.html

    Wie lautet mysqli_errno?
    Wie lautet mysqli_error?
    Christian

    Comment


    • #3
      Im MySQL Workbench kommt folgende Meldung:
      Code:
      Your Connection attempt faild for user 'Benutzername' to the MySQL server at IP-Adresse:3306:
      Unable to connect to localhost
      Der MariaDB Server ist im Netzwerk auf einem Raspberry.
      Die PHP Datei ist auf einem Webserver auf einem anderen Raspberry im Netzwerk.

      Zu den Nutzerdaten:
      Code:
      MariaDB [TestDB]>  SHOW GRANTS FOR 'Benutzer'@'%';
      +------------------------------------------------------------------------------------------------------------------------------------+
      | Grants for Benutzer@% |
      +------------------------------------------------------------------------------------------------------------------------------------+
      | GRANT ALL PRIVILEGES ON *.* TO `Benutzer`@`%` IDENTIFIED BY PASSWORD 'Password' WITH GRANT OPTION |
      +------------------------------------------------------------------------------------------------------------------------------------+

      Comment


      • #4
        Dann musst du den Zugriff auf die DB von einem anderen Server zulassen
        Siehe Link
        Christian

        Comment


        • #5
          Habe jetzt die bind-Adresse rausgenommen

          Code:
          sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
          War scheinbar in einer anderen Datei als in dem Link beschrieben.
          Dort habe ich folgendes gemacht:

          Code:
          # bind-address            = 127.0.0.1
          anschließend

          Code:
          sudo service mysql restart
          Jetzt wird super Merkwürdig...

          php geht immer noch nicht.

          Aber im MySQL Workbench hat sich die Fhelermeldung geändert. Und zwar extrem komisch:

          Code:
          Your Connection attempt faild for user 'Benutzername' to the MySQL server at xxx.xxx.xxx.148:3306:Access denied for user 'Benutzer'@xxx.xxx.xxx.48' (using Password=yes)
          In der Fehlermeldung macht das Programm aus xxx.xxx.xxx.148 die IP xxx.xxx.xxx.48

          Comment


          • #6
            Weiterlesen

            "Zusätzlich, zur Sicherheitsrichtlinie der MySQL-Konfigurationsdatei, sorgen Einstellungen der MySQL-Tabellen dafür, dass Verbindungen von anderen Hosts blockiert werden. Ob diese Einstellung aktiv ist, bemerkt man an der Serverrückmeldung: „Access denied for user ‚root’@’host‘ (using password: YES)“."
            Christian

            Comment


            • #7
              Habe ich bereits versucht.
              Mit meinem Benutzer scheint es zumindest das Kommando zu akzeptieren, aber die Fehlermeldung im Workbench bleibt.

              mit root sieht es etwas anders aus:
              Code:
              MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
              ERROR 1133 (28000): Can't find any matching row in the user table

              Comment


              • #8
                Okay.... mit Workbench kann ich zugreifen.

                Fehler war mein Passwort. Nicht das ich das Flasche eingegeben habe, aber in meinem Passwort war ein ""
                Habe ein neues Passwort vergeben und Workbench läuft.

                Jetzt ist nur noch PHP offen

                Comment

                Working...
                X