Raspberry Pi 4 MySQl Datenbank?
Hi,
Ich muss für die Schule ein Website Projekt erstellen. Es soll eine ganz normale HTML CSS Website werden. Da ich meine Ziele nicht zu niedrig stecken wollte, hab ich mir gedacht, dass es ja nicht so schwierig sein kann einen Raspbarry pi 4 mit MYSQL Datenbank so zu konfigurieren das es sowas wie einen like Button gibt. Ich meine damit nicht, dass man "Artikel" mit GUI auf die Website stellen kann. Sondern ganz normale in Visual code geschriebene "Artikel" wo dann jeder einen like geben kann. Ich habe mich schon viel darüber informiert und bei den meisten Tutorials wird von dieser PHP Zeile gesprochen:
$Verbindung = new mysqli("Servername", "Benutzername", "Passwort", "Datenbankname");
Jetzt kommt die Frage. Wie kann ich meine MYSQL Datenbank so konfigurieren das es einen Servernamen gibt. Die Datenbank und Website (Website wird von einem Website-Hoster gehostet) sollen natürlich überall aufrufbar sein. Ich habe gehört das man da auch den Router konfigurieren muss?
Danke für die Hilfe
Matteo
3 Antworten
Am einfachsten ist es, wenn die Datenbank auf demselben Rechner wie der Webserver läuft. Der Servername ist dann localhost oder 127.0.0.1.
So, wie Du das vorhast, würde es erfordern, die Datenbank aus dem Internet erreichbar zu machen. Das ist aus Sicht der Netzwerk- und Serversicherheit keine gute Idee. Du müsstest auf dem Router den Port für die Datenbank freigeben (in der Regel TCP 3306). Zudem müsstest Du, weil die IP-Adresse dynamisch ist, einen DynDNS-Dienst einrichten. Da gibt es kostenlose Dienste, wo Du ein Konto einrichtest. Viele Heimrouter unterstützten DynDNS, sodass Du auf dem Router die Kontodaten eintragen kannst. Der Router wird dann seine jeweils aktuelle IP-Adresse an den DynDNS-Dienst senden. Der Datenbankserver ist dann unter dem DynDNS-Namen erreichbar. Schau zunächst auf dem Router nach, ob und welche DynDNS-Dienste er unterstützt, dann kannst Du Dir einen passenden Dienst auswählen.
Ja, auf jeden Fall. Oder der Datenbankserver beim Anbieter für das Webhosting. In vielen Webhosting-Paketen ist eine Datenbank und PHP dabei.
Also wenn du datenbank und webseite auf dem selbern host hast, ist es immer
localhost
den es gibt kaum einen irren hoster der zugriffe von aussen auf die datenbank zulassen würde . so macht man das im allgemeinen ,
ich würde erstmal testen auf deinem system und wenn das aufm pi ist dann halt flux eine lamp installation machen und lernen wo du deine webseiten bzw php wie da reinpacken musst .
auch dort wird es localhost sein , und deine webseite mit php wird ja auf dem selbern host sein , also localhost .
am besten du machst aber erstmal ein tutorial und lernst das wirklich, so zusammengefrickelt hast du später sonst mehr problem als lösungen , den wenn ich so die netten schüler kenne suchen die nur den fehler , übernehmen den webserver und dann hast du probeme , oder halt ein gelöschten server/datenbank .
ja ich weiss, ist nicht spielen und zocken und alles nicht einfach , aber so ist halt die realität . wer was will muss halt was tun und lernen . das müssen alle und die die es nicht wollen , die stehen halt am ende ohne irgendeinen erfolg da .
ausserdem musst du ja noch lernen wie du dann dort die daten mit SQL speicherst, wie du eine session machst und und und und , also das ganze PHP serverseitige ding . HTML ist ja eben nciht programmieren, sondern einfach nur beschreiben, deswegen heisst es ja Seitenbeschreibungssprache .
Wenn Du eine LAMPP-Installation machst, ist der Servername immer "localhost" in der Verbindung - selbst wenn Du eine Website von einem anderen Rechner aus abrufst. Solange der MySQL-Server (übrigens: Besser die letzte Version von MariaDB nehmen) und der Web-Server auf dem gleichen Rechner laufen, ist der Servername immer "localhost".
Das bedeutet also, dass es deutlich einfacher ist wenn der Webserver auch vom Raspberry pi gehostet wird?