Hallo, ist es möglich eine Datenbank anzulegen ohne einen Server? Ich möchte ein Java Programm schreiben, um Kunden Datensätze zu speichern. Die Datenbank müsste für ca. 6 Personen im Büro kleichzeitig erreichbar sein. Standort der Datenbank wäre auf einem externen PC der für alle erreichbar ist. Bitte um Vorschläge!
Hmm, ich glaube nicht, dass sowas geht, denn genau dafür ist ein Server ja da. http://de.wikipedia.org/wiki/Server_%28Software%29 Ich kenn noch SQLite http://de.wikipedia.org/wiki/SQLite . Ich hab aber keine Ahnung, was passiert, wenn mehrere Leute gleichzeitig darauf zugreifen. Gute Nacht
Dieter schrieb: > ist es möglich eine Datenbank anzulegen ohne einen Server? Ich möchte > ein Java Programm schreiben, um Kunden Datensätze zu speichern. Die > Datenbank müsste für ca. 6 Personen im Büro kleichzeitig erreichbar > sein. Standort der Datenbank wäre auf einem externen PC der für alle > erreichbar ist. Prinzipiell ist das machbar, wenn du den Begriff "gleichzeitig" nicht peinlich genau verstehst. Denn während es kein Problem ist, 6 PCs gleichzeitig auf Files lesend zugreifen zu lassen, klappt es nicht wirklich gut, wenn mehr als einer davon die Datenbank-Files verändert. Du musst also ein entsprechendes Locking implementieren. Andererseits stellt sich natürlich die Frage nach dem tieferen Grund deiner Aversion gegen einen Datenbank-Server wenn du ohnehin schon einen externen PC als Fileserver vorsiehst, der wohl ebensogut statt dessen einen Datenbankserver abgeben könnte. Wobei ich mal davon ausgehe, dass du kein 1TB CRM realisieren willst.
naja mit access geht das. (ob das jetzt als DB durchgeht ist ein anders thema)
Ich arbeiter in einer großen Firma und für diese geringe Menge von Daten wird mir kein Server genehmigt. Die beste möglichkeit wäre eine Datei für alle erreichbar irgendwo abzulegen.
Ich bin noch auf XML gestoßen. Was wäre jetzt besser, sowas wie SQLLite oder XML? Oder gibt es noch andere Möglichkeiten?
Der Begriff "Server" ist sehr relativ. Es gibt bereits NAS-Laufwerke, auf denen ein MySQL läuft, so ab 150,- Euro ... das sollte doch wohl machbar sein.
"Standort der Datenbank wäre auf einem externen PC der für alle erreichbar ist." Damit ist es aus Sicht des Programmierers ein Server, auch wenn dieser weder ausschliesslich Serveraufgaben übernimmt noch in einen Serverschrank eingebaut wird. Dazu benötigst Du eine Datenbank-Server-Software (zB Mysql, entsprechende HSQLDB-Variante..). Evtl lässt Du sie auch auf einem bereits vorhandenen "richtigen" Server mitlaufen wenn es im Büro einen gibt* Von Versuchen, wirklich für Einzelplatzbetrieb gedachte Datenbankformate (SQLite, Access MDB, Paradox...) via Fileserver/"Freigaben" verteilt zu nutzen, sei jedem kategorisch abgeraten der noch fragen muss warum das zu Problemen führen kann. Wäre HSQLDB nicht evtl das richtige, wenn das Programm eh in Java geschrieben ist? Wenn mit "externem PC" ein Rechner gemeint ist der direkt offen im Internet steht, dann solltest Du sehr sorgfältig sicherstellen dass die Sicherheitseinstellungen der gewählten Datenbanksoftware korrekt und verstanden sind.
"wird mir kein Server genehmigt" Hatte gepostet bevor Du das geschrieben hast. Das braucht auch keinen dedizierten Server. Aber Dienste jeglicher Art auf Arbeitsplatzrechner zu legen ist, sobald es irgendeine Alternative dazu gibt, die pessimale Lösung.
Dieter schrieb: > ich meinte eine externe Festplatte, bei der man nichts aussführen kann. viele Festplatten (NAS) können aber etwas auführen - was ist das denn für eine Festplatte?
mit firebird embedded geht das (angeblich) inzwischen Embedded Server Notes The embedded server in the Windows library, fbembed.dll, now uses Superclassic, not Superserver as previously, thus unifying its model with that of local connection to Superclassic on POSIX. The database file-lock that previously restricted connections to a single application space is replaced by a global lock table that allows simultaneous access to the same database from different embedded server modules. This facilitates concurrent debugging of applications and use of native utility tools like gbak, gstat and so on. jdbc und firebird ist jetzt ansich auch kein problem wie/ob man jetzt den embedded server mit jdbc verwenden kann, ist mir unbekannt aber google sagt es geht: http://www.firebirdfaq.org/faq350/
Das hört sich doch ganz gut an. Das werde ich mal in Angriff nehmen Danke dir!
Eine Netzwerk Festplatte ist schon ein Server. Ein Server bedeutet, die Maschine, resp ein Port, wartet auf Anfragen und arbeitet die ab. Ein Server macht nie was von selbst. Die Rechner, die die Anfragen absenden nennen sich Clients. Fuer was Guenstiges, wuerd ich die Synology empfehlen.
Hier ging es wohl eher darum ob auf dem NAS eine beliebige Software, die auf eben solche Anfragen horcht (und das macht sie von selbst :), eingerichtet werden kann. Und/Oder ob sich dort ein vorinstallierter MySQL-Server befindet den man nutzen kann. PS: "grosse" Datenbankserver (Mysql, Oracle, Postgres...) können auf einem Host viele Datenbanken für viele Anwendungen gleichzeitig bereitstellen. Frag doch mal euren Admin ob er deine DB nicht auf einem solchen System mit unter bringen kann. Rechne allerdings mit Fragen die Du als Entwickler auch beantworten können solltest (erwartete Größe und Last usw.).
Hallo Dieter, ich hab ein Java Programm geschrieben, dass HSQLDB benutzt. Die Datenbank ist im Prinzip nur ein einziges File + eins für die Konfiguration. Bei meinem Programm wird die Datenbank zwar beim ersten Zugriff "gelockt". Aber ich meine, man kann die auch so öffnen, dass mehrere gleichzeitig drauf zugreifen können. Hier der Link zu meinem Programm: http://fakturama.sebulli.com/ Gerd
Es geht eher um den Servermode den HSQLDB dem Vernehmen nach inzwischen beherrscht.
Mit HSQLDB habe ich schon mal gearbeitet. Das beutet ich kann das Datenbank-File irgendwo ablegen und es können auch mehrere Anwender die Datenbank benutzten. Könntest du mir vielleicht den entsprechenden Ausschnitt aus deinem Programm zeigen?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.