Zitat:
aber bei MySQL ist es so, dass bei einem Zugriff die gesamte DB geladen werden muss
Das ist schwachsinn. Datenbanken sind extrem auf Geschwindigkeit optimiert und lesen wirklich nru das, was unbedingt gelesen werden muss. Das geht so weit, dass bei einem JOIN die Reihenfolge in der die Tabellen gelesen werden zur Laufzeit nach der Anzahl der Datensätze in der Tabelle bestimmt wird.
Das Problem ist eher, dass die Daten erst zu PHP geschickt werden müssen. Bevor die Daten dann ausgeliefert werde können, legt PHP sie erstmal in den RAM.
Wenn ein PHP-Script sie ausliefert kann dies allerdings auch passieren ... je nachdem wie das
Script geschrieben ist, mehr oder weniger schlimm. Wie PHP sich da genau verhält, weiß ich aber nicht.
Das beste ist, die Dateien direkt vom Webserver ausliefern zu lassen. Wenn die Benutzer eh einen PIN eingeben sollen - was spricht dagegen das Verzeichnis mit htacces zu schützen und der Benutzer muss halt einen Benutzernamen und Passwort eingeben ... ok, ist eine Eingabe mehr aber ansonsten genauso umständlich wie ein PIN einzugeben.