NEWS
Sql-Adapter mit MySql verbinden
-
@codierknecht
Natürlich, also mein IOB läuft über dem Raspberry 4 über Proxy und MariaDB wie gesagt auf dem Apache Server, der ist frei zu installieren im Internet.Also ich konnte nun doch die Config-Datei bearbeiten, wie du oben beschrieben hast habe ich es eben abgespeichert, aber dennoch der selbe Fehler.
Und jetzt sehe ich, dass mein Adapter nicht verbunden ist:
Um ehrlich zu sein weiß ich nicht, ob es die ganze Zeit so war. Fällt mir erst jetzt auf, aber heute morgen lief es ganz normal
-
@marcio sagte in Sql-Adapter mit MySql verbinden:
habe ich es eben abgespeichert
Und den Server danach neu gestartet?
-
@marcio sagte in Sql-Adapter mit MySql verbinden:
@codierknecht
MariaDB wie gesagt auf dem Apache ServerApache ist ein Webserver (http / https). Da kann kein MariaDB drauf laufen!!!
-
@MarcIO
Ich glaube, Dir fehlen hier so einige Grundlagen.Du hast also LAMPP/XAMPP als Komplettpaket heruntergeladen und installiert?
Das Zeug besteht aus verschiedenen Komponenten, die jeweils völlig andere Aufgaben haben.
Das "A" wie"Apache" ist der Webserver. Der hostet Deine selbst erstellten Webseiten, so dass Du sie über den Browser erreichen kannst.
Das "M" wie "MySQL/MariaDB" ist eine Datenbank. Die hat erstmal gar nix mit dem Indianer zu tun.
Wenn ich also schreibeUnd den Server danach neu gestartet?
meine ich damit den Datenbankserver bzw. dessen Prozess.
Und damit wir Dir hier weiterhelfen können, habe ich nach der Hardware gefragt.
Läuft das auf Deinem MacMini? Oder einem Linux-Server? Einem Windows-Server? Oder mit auf dem Pi?Die beiden "P" stehen für "Perl/PHP" und bieten die Möglichkeit, zu programmieren. Diese Programme werden in der Regel zur Erzeugung dynamischer Webseiten verwendet.
Damit ist dann z.B. "Phpmyadmin" programmiert. Eine Verwaltungsoberfläche, mit der man die Datenbank administrieren kann.Für den SQL-Adapter brauchst Du nur das "M" - also die Datenbankinstanz.
-
@haus-automatisierung Ok verstehe nun.
@Codierknecht In der Tat ja, mit dem Apache hatte ich mich nicht so sehr auseinander gesetzt gehabt, deshalb danke sehr für die Aufklärung!
Also mein IOB läuft auf dem Raspy und das ganze andere Zeug auf mein Mac mini.
Ich habe mich umentschieden und mir nun MySQL separat angelegt und bediene es über die MySQL Workbench. Da läuft soweit alles ganz ok, kann es auch über den VS Code erreichen, aber der IOB kommt erneut nicht drauf.So sehen die Daten der Verbindung aus:
Und bei der Eingabe im IOB bekomme ich erneut diesen Fehler:
Die Server habe ich natürlich restarted
-
@marcio sagte in Sql-Adapter mit MySql verbinden:
Also mein IOB läuft auf dem Raspy und das ganze andere Zeug auf mein Mac mini.
@marcio sagte in Sql-Adapter mit MySql verbinden:
Und bei der Eingabe im IOB bekomme ich erneut diesen Fehler:
localhost
ist in dem Fall ja der Raspberry Pi selbst. Wie ich Dich verstehe, läuft darauf aber keine SQL-Datenbank, sondern auf dem Mac Mini. -
Mit der IP-Adresse ebenso versucht, aber vergeblich:
Error: Host '10.27.49.191' is not allowed to connect to this MySQL server
Werden dann hier die eingehende Verbindungen verweigert?
-
@marcio Man kann sowohl in der Konfiguration des Datenbank-Servers festlegen, dass Verbindungen von extern nicht erlaubt werden, als auch eine Firewall konfigurieren usw. Es gibt 100 Gründe warum das nicht laufen könnte.
- Irgendwie passt das auch alles nicht zusammen. Du teilst einen Screenshot vom Mac mit MySQL Workbench (fandest Sequel Pro nicht gut?), aber im ioBroker legst Du
localhost
fest - Also läuft die Datenbank direkt auf dem Mac, oder nur die Software MySQL Workbench?
Wenn dem so ist, würde ich die Konfiguration der Datenbank prüfen, damit externe Verbindungen auch erlaubt werden. Wie genau hast Du die Datenbank aufgesetzt / installiert? Ist das ein MAMP oder ähnliches?
Aber warum eigentlich verteilen? Soll dein Mac dann dauerhaft laufen?
- Irgendwie passt das auch alles nicht zusammen. Du teilst einen Screenshot vom Mac mit MySQL Workbench (fandest Sequel Pro nicht gut?), aber im ioBroker legst Du
-
- Localhost war tatsächlich eine Fehleingabe, nach der Korrektur kam eben die Fehlermeldung im letzten Beitrag raus. Mit dem Sequel Pro noch nicht gearbeitet, deshalb kann ich es auch noch nicht bewerten.
- Sowohl auch, MySql und Workbench laufen auf dem Mac
Bei der Konfigurationsdatei wurde ich noch nicht fündig, kann es sein, dass dieser (noch) nicht existiert s. Bild:
Nein nein dieser wird nicht dauerhaft auf dem Mac laufen, dient vorübergehend für den Test und Aufbau.
-
@marcio Dann schau mal die Dokumentation zur MySQL-Konfiguration an. Du suchst wahrscheinlich die Option
bind-address
(nein, dafür wird es keine grafische Oberfläche geben, sondern nur eine Textdatei).
-
@haus-automatisierung Also langsam werd ich ziemlich unsicher damit. Laut WWW Solls ja bei Mac unter dem Ordner ein "etc" Ordner geben, in der die config-Datei sein soll. Tut es bei mir nicht. Ich habe nur eine gefunden, die liegt allerdings noch im Ordner von XAMP, aber diesen will ich ja an sich nicht mehr verwenden..
-
@marcio Da Du nicht verrätst, auf welchem Weg der Server auf den Mac gekommen ist, kann man wohl auch nicht helfen.
-
@haus-automatisierung Meinst du den XAMPP? Wurde aus deren Webseite runtergeladen
-
@marcio sagte in Sql-Adapter mit MySql verbinden:
die liegt allerdings noch im Ordner von XAMP, aber diesen will ich ja an sich nicht mehr verwenden..
Also doch XAMP. Dann weißt Du ja wo die Konfiguration zu finden ist. https://www.apachefriends.org/de/faq_osx.html
MySQL configuration file: /Applications/XAMPP/xamppfiles/etc/my.cnf
-
@haus-automatisierung sagte in Sql-Adapter mit MySql verbinden:
bind-address
auf 0.0.0.0 setzen
Ro75.
-
@MarcIO
Dass die Workbench auf dem Mac an die Datenbank ist klar: Da läuft ja beides auf dem gleichen Rechner.Der ioBroker auf dem Pi ist aber ein anderer Rechner - und der darf per Voreinstellung nicht.
Unter Linux erhält man hiermit
mysql --verbose --help
alle möglichen Informationen zur laufenden Instanz. Da steht auch in einer Zeile der Pfad zur Konfig.
Default options are read from the following files in the given order: /etc/my.cnf ~/.my.cnf
Keine Ahnung, ob das auf 'nem Mac in der Konsole auch so funzt.
-
@codierknecht sagte in Sql-Adapter mit MySql verbinden:
Keine Ahnung, ob das auf 'nem Mac in der Konsole auch so funzt.
Nein, weil das Verzeichnis der XAMP-Binaries nicht in der PATH-Variablen liegen wird.
Bitte einfach die
bind-address
in der Config/Applications/XAMPP/xamppfiles/etc/my.cnf
anpassen und den Dienst neustarten. -
@haus-automatisierung sagte in Sql-Adapter mit MySql verbinden:
Bitte einfach die bind-address in der Config /Applications/XAMPP/xamppfiles/etc/my.cnf anpassen und den Dienst neustarten.
Die Frage ist, wo der ganze Kram nun installiert wurde.
Ich habe mich umentschieden und mir nun MySQL separat angelegt
Im Paket als XAMPP oder doch Standalone?
Wenn die Workbench läuft, sollte die das ja wissen (Netzfund, unter "Server Status")
Edit
Sollte laut Tante Gurgel hier liegen:/usr/local/mysql
-
@codierknecht Hab den Pfad auf den Mac doch jetzt 2x geteilt ?!
-
Das findest du in keiner konfigurationsdatei.
Die Berechtigung welcher User von welcher ip(oder alle) auf welche Datenbank mit welchen Rechten zugreifen darf steht in der Datenbank und muss mit speziellen sql Anweisungen abgefragt und gesetzt werden
https://dev.mysql.com/doc/refman/8.4/en/access-control.html
https://stackoverflow.com/questions/8348506/grant-remote-access-of-mysql-database-from-any-ip-address