![]() |
Datenbank: Firebird • Version: 2.5 • Zugriff über: Zeos
Firebird-Datenbank im Netzwerk
Hallo,
nachdem ich mich heute in einem Testprojekt an mein erste Firebird-Datenbank über Zeos herangewagt habe, wollt ich nun an mein eigentliches Projekt ran. Dabei will ich ein Programm schreiben, dass auf meinem Server läuft und Daten in eine Datenbank schreibt. Die Clients sollen dann aus der Datenbank lesen und die Daten verarbeiten. Soweit so gut. Nun dacht ich in meinem jugendlichen Leichtsinn, dass ich eine Datenbank in ein Netzwerklaufwerk erstelle und in der ZConnection von Zeos einfach den Pfad angebe. (beispielhaft: \\Server\Datenbank\test.fdp) Nur, wenn ich das mache und das Programm ausführen lasse, dann erhalte ich einen Fehler, dass das Verbinden nicht möglich sei (Datenbank nicht gefunden). Nur, wie geb ich denn eine Datenbank, die im Netzwerk liegt, richtig an? Bzw. was mach ich generell falsch? |
AW: Firebird-Datenbank im Netzwerk
Liegt die Datenbank auf dem Rechner, auf dem der Datenbankserver läuft?
Pfad muss aus Serversicht sein, oder ein Alias. |
AW: Firebird-Datenbank im Netzwerk
Zitat:
|
AW: Firebird-Datenbank im Netzwerk
Hallöle...:P
Was mkinzler meinte ist der Pfad aus Serversicht. Das kann nie der Pfad mit \\Server\Datenbank... am Anfang sondern z.B. mit C:\Datenbank... sein. |
AW: Firebird-Datenbank im Netzwerk
Zitat:
|
AW: Firebird-Datenbank im Netzwerk
Auf dem Server in der Form:
Delphi-Quellcode:
Laufwerk:\Verzeichnis\Dateiname.fdb
Vom Client im Netz:
Delphi-Quellcode:
\\Freigabename\Verzeichnis\Dateiname.fdb
Delphi-Quellcode:
\\Server\Verzeichnis\Dateiname.fdb
|
AW: Firebird-Datenbank im Netzwerk
Beispiel ohne Syntaxprüfung:
Host: //Server/Freigabe (evt. Port /3050) Datenbank aus Serversicht: C:\Datenbank\Test.fdb ...oder über den Alias, der die Datenbank auf dem Server kennt. Das bedeutet das der Client das Serverlaufwerk nicht kennt...nue den Alias. @nahepets: Wir reden über die Serveranbindung im Multiuserbetrieb und nicht über ein Netzlaufwerk. :wink: |
AW: Firebird-Datenbank im Netzwerk
Zitat:
Oder einen Alias der in der Config steht. Btw. Datenbanken sollten nicht in einer Freigabe liegen |
AW: Firebird-Datenbank im Netzwerk
Hallo,
Servername sei DBSERVER Pfad auf dem Server: C:\Data\Data.Fdb Connectionstring ist dann DBSERVER:C:\Data\Data.Fdb Statt dem Servernamen kann man auch die IP-Nummer des Servers benutzen, falls die statisch ist. Name ist aber besser. |
AW: Firebird-Datenbank im Netzwerk
Das oben genannte ist schon richtig, meines Wissens kann Zeos nicht auf Netzwerk-Pfade zugreifen, sodass die Datenbank auf einer internen Festplatte des Servers liegen muss.
|
AW: Firebird-Datenbank im Netzwerk
Zitat:
|
AW: Firebird-Datenbank im Netzwerk
Hallo,
ZEOS kommuniziert per TCP-IP mit dem Datenbankserver. Netzlaufwerke des Clients spielen überhaupt keine Rolle! ZEOS sagt dem DB-Server, mache mal DB XY auf, ein Netzlaufwerk Z kennt der Server natürlich nicht. Für Tests sollte man die 2.5er Version von FB benutzen, nicht die 3er. |
AW: Firebird-Datenbank im Netzwerk
und wie richtet man das richtig ein?
|
AW: Firebird-Datenbank im Netzwerk
Die Datenbank kann nicht auf einem Netzwerk - Laufwerk des Servers liegen, also kein NAS.
Uhps ja an Zeos liegt es nicht :-S (Danke ) ist eine Beschränkung des Firebird Servers. |
AW: Firebird-Datenbank im Netzwerk
Hallo,
folgendes funktioniert mit allen Datenbankkomponenten :
Sind in der Datenbank Komponente zwei Felder, eines für den Server und eines für die Datenbank, dann muss bei Server nur der Name (FirebirdServer) oder die IP-Adresse des Servers drinstehen. Für das Feld Datenbank kommt dann der komplette Pfad C:\FirebirdDB\TestDB.fdb rein. Zusätzlich noch die Angabe von Username (sysdba) und Passwort (masterkey) und schon solltest Du eine Verbindung hergestellt haben. |
AW: Firebird-Datenbank im Netzwerk
Hallo,
Zitat:
Damit nicht mehrere Programme gleichzeitig unkontrolliert auf die physische Datei (.Fdb) zugreifen, ist Firebird hier der (einzige) Chef mit Datenzugriff. Die Synchronisation der Zugriffe macht Firebird dann selbst. Bei der Classic-Variante greifen zwar auch mehrere Prozese auf die Fdb-Datei zu, machen das aber über eine FB-eigene Synchronisation. Und noch einmal der Hinweis, nimm zuerst mal FB2.5 und nicht FB3.0, weil in FB3 der Zugriff (Connect) geändert wurde, davon weiss ZEOS aber nichts. Es gibt eine Anleitung, wie man das alte Connect wieder aktivieren kann, aber erst mal FB2.5 (SS=Superserver) nehmen, ist einfacher. |
AW: Firebird-Datenbank im Netzwerk
Auf die Datenbank muss über einen lokalen Pfad zugegriffen werden, weil sonst der Firebird-Dienst die DB vermutlich nicht erreichen kann:
Servername:c:\Pfad\zur\Datenbank.fdb |
AW: Firebird-Datenbank im Netzwerk
Hallo,
komm erst heute wieder dazu, weiterzumachen. Zitat:
|
AW: Firebird-Datenbank im Netzwerk
Wenn Du den Server als Applikation startest, dann sind es die Rechte des Users, der den Server startet.
Wenn Du den Server als Service startest, dann ist es das lokale Systemkonto, was i.R. auf alle lokalen Dateien genügend Rechte hat. Wie bei jedem Service kannst Du auch eine andere Kennung angeben mit Windows-Mitteln. Im Setup-Programm kannst Du die Variante am einfachsten festlegen. Installation als Service ist der Standardwert. |
AW: Firebird-Datenbank im Netzwerk
bedarfs auch einem Port?
|
AW: Firebird-Datenbank im Netzwerk
Zitat:
![]() |
AW: Firebird-Datenbank im Netzwerk
Zitat:
Code:
Neustart des Services nicht vergessen.
RemoteServicePort = 3055
|
AW: Firebird-Datenbank im Netzwerk
Liste der Anhänge anzeigen (Anzahl: 1)
Moin,
keine Ahnung ob sich deine Anfrage gerade mit einer Hotlinesession für einen Kunden überschneidet, klingt aber ähnlich. Der Betrieb einer Firebird Datenbank auf einem Netzwerklaufwerk ist mit einem FB3 Server im Application Modus möglich, es muss dann aber ein alias in databases.conf eingetragen werden und erst da darfst du aufs Netzwerklaufwerk verbinden (könnte ggf auch mit der aliases.conf in fb25 gehen, hab ich aber nicht getestet) Embedded geht das sowieso, aber embedded sollte immer nur ein Computer auf eine Datenbank gehen, sonst kann das gewaltig nach hinten los gehen. Wenn die DB aber wie oben auf einem Netzwerklaufwerk liegt, wird dir die Performance um die Ohren fliegen, wie ich gerade in einem Test gemerkt habe, daher muss man seine Kunden schon bei möglicher Wartezeit als sehr belastbar einstufen, eine solche Lösung anzubieten (siehe angehängte Benchmark Grfik, werte unter 100% sind schlecht, 2% ist unterirdisch) Versuch zu unterscheiden zwischen Netzwerkfähiger Version (nur da gibt es gemeinsame Daten, braucht dann aber auf einem Rechner einen installierten Firebird Server, muss dann aber kein echter server sein, kann auch client computer sein, der dann nur an bleiben muss, wenn andere an die daten wollen) und Einzelplatzversion (da hat jeder Rechner eigene Daten). eigene Daten Alles andere wird keine akzeptable Lösung sein |
AW: Firebird-Datenbank im Netzwerk
Gibt es für das Umgehen der Sperre des Zugriffs auf Netzlaufwerke nicht die mit sehr langer Warnung versehene Option?
Code:
in der firebird.conf (Zumindest in 2.5)
#RemoteFileOpenAbility = 0
|
AW: Firebird-Datenbank im Netzwerk
so - nachdem ich den Port 3050 auf dem Server freigegeben habe, hats auch mit dem Zugriff übers Netzwerk hingehauen
|
AW: Firebird-Datenbank im Netzwerk
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:32 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz