Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.432 Beiträge
 
Delphi 7 Professional
 
#13

AW: Unvailble Datatbase

  Alt 27. Feb 2024, 16:27
Die Benutzer benötigen keinerlei Zugriff auf die Verzeichnisse bzw. die Datenbankdateien. Den Zugriff benötigt nur der Datenbankserver. Den "Rest" kannst Du über die Konigurationsdateien des Firebirddatenbankservers konfigurieren.

Genaugenommen kann / sollte / muss es dem Entwickler egal sein, wo die Datenbankdatei liegt. Es reicht aus, wenn er den Aliasnamen vorgibt, unter dem seine Software auf "seine" Datenbank zugreift.

Wenn Nonames Datenbank LOGE-AKTUELL heißen soll, dann wird nur in der Konfiguration eine Alias LOGE-AKTUELL benötigt, bei dem Du dann für den Firebirdserver angibts, wo er die entsprechende Datenbankdatei findet. Die darf dann überall liegen wo der Firebirdserver bzw. der Benutzer, unter dessem Account er läuft, Zugriff hat.

Noname muss dann in der Ini-Datei lediglich "GDB=lvhost:LOGE-AKTUELL" angeben.

Und wenn morgen das Laufwerk, auf dem zur Zeit die Datenbankdateien liegen, zu klein wird, kannst Du einen Teil oder alle Datenbankdateien morgen auf ein anderes Laufwerk verschieben. Du muss dann nur den Alias in "Deiner" Firebirdkonfiguration ändern. Für den Client ist das transparent, sprich: Der merkt nix davon. Seine Konfiguration muss nicht angepasst werden, seine Benutzer oder Benutzergruppen müssen keine neuen oder geänderte Zugriffsrechte erhalten, derweil: Die brauchen die schlicht und einfach nicht. Sollten sie die Rechte doch benötigen, dann gewiss nicht für die Datenbankdatei. (Dann sollte man allerdings das genutzte Konzept hinterfragen.)

Bei 'ner Oracle-, SQL-Server-, PostGres-, MySQQL-Datenbank benötigen die Benutzer auch keine Zugriffsrechte auf die Datenbankdateien. Sie müssen nur wissen, wie sie den Datenbankserver erreichen, aber nicht, wo er die Daten letztlich physikalisch ablegt.

Das ist bei FireBird nicht anders, auch wenn es mit mehr oder weniger viel Aufwand bei Firebird im Rahmen des Möglichen ist.

Sehen wir es analog zur Delphipraxis: Wenn ich darauf zugreifen will, gebe ich im Browser halt https//:www.delphipraxis.net ein. Aber wo der dahinterliegende Datenbankserver seine Datenbankdateien hat, um welches Datenbanksystem es sich überhaupt handelt, muss ich nicht wissen, es geht mich nichtmal was an. Und irgendwelche Rechte auf dem Server benötige ich schonmal garnicht.

Das sollte bei eurer Software (meiner Meinung nach) nicht anders sein. In der Ini-Datei sollte nur der Name des Servers stehen, gefolgt von dem Namen (Alias) unter dem die Datenbank zu erreichen ist.

Prinzipell passt das von Dir beschriebene System
Zitat:
Ich kenne Firebird nicht, aber bei anderen SQL-Installationen werden die Datenbanken in den SQL-Server eingehängt und dann findet der Zugriff über <Servername oder IP><eventuell Port> und <Datenbankname> aus der Anwendung heraus statt.
auch bei Firebird.

In die Ini-Datei gehören auch unter FireBird <Servername oder IP><eventuell Port> und <Datenbankname>.

Wie Du dann als Admin letztlich den Datenbankserver einrichtest, sollte alleine Deine Aufgabe sein, da solten auch die Entwickler keine Vorgaben bezüglich der Verzeichnisstrucktur und / oder der Dateinamen für die Datenbanken machen. Das Einzige, auf das Ihr euch einigen müsst / solltet / könnt, ist der Name des Servers und des Alias, über die dann die Kommunikation zwischen Software und Datenbank stattfinden soll. Aber da das Informationen sind, die aus einer INI-Datei gelesen werden, solltest Du selbst das vorgeben dürften.
  Mit Zitat antworten Zitat