Alex_winf01 Geschrieben 4. Juli 2006 Teilen Geschrieben 4. Juli 2006 Hallo liebe Forengemeinde. Ich schreibe gerade an einer Anwendung mit Java und einer MySQL-Datenbank. Ich habe bei mir bereits MySQL-Server installiert. Nun möchte ich nicht, dass der Anwender den kompletten MySQL-Server bei sich installieren muss, sondern nur die eigentliche Datenbank. Also dass, was bei MySQL im Ordner "data" liegt. Nun gibt der Anwender Daten ein und speichert diese ab. Zur Verdeutlichung: der Anwender downloadet sich die Anwendung (ich liefere also für MySQL die Datenbank (aus dem Ordner data)). Und die eigentliche Anwendung. Geht das überhaupt? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Joe Kinley Geschrieben 4. Juli 2006 Teilen Geschrieben 4. Juli 2006 Du meinst ein Script wo die daten drinstecken, damit der User diese dann in seine Datenbank einspielen kann? Kein Problem. Das Kind heisst "mysqldump". Dies einfach in der Kommandozeile nutzen, und in eine Datei bla.sql schreiben. Diese kann man dann auf der anderen Seite mit mysql bla.sql wieder einspielen. Einfach man mysqldump schaun wie du genau die Datenbank rausziehst Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SNOWMAN Geschrieben 4. Juli 2006 Teilen Geschrieben 4. Juli 2006 Nein, ich glaube, er möchte den Inhalt des data Ordner (in diesem werden die Daten der Datenbanken abgespeichert) an den Kunden senden und direkt drauf zugreifen können. Also ich sags mal so: Theoretisch ist das Möglich, nur hat der Kunde dann Dateien mit denen er nix anfangen kann. Er bräuchte trozdem einen MySQL Server da dieser die Schnittstelle zwischen - grob formuliert - SQL Statements und den Dateien aus dem data-Ordner darstellt. Außer, dein Javaprogramm kann diese Dateien interpretieren und die Daten rausholen (dann hättest du so irgendwie deinen eigenen MySQL Server nachgebaut, natürlich nur mit Funktionen für dein Programm) Du hast drei Optionen: 1. Du baust das um und verwendest direkt Dateien zum speichern der Daten 2. Du setzt vorraus, das der Kunde einen MySQL Server verwendet 3. Du stellst deinen Server ins Internet und konfigurierst dein Programm so, das es auf diesen Server zugreift. Aber, um es nochmal zu sagen, die Dateien aus dem data-Order alleine bringen dir nix. Das wäre in etwa vergleichbar mit: Du baust aus einem Auto den Motor, alle Elektrik und Mechanik aus und erwartest, das es/du immernoch fahren, blinken und Schalten kann. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Alex_winf01 Geschrieben 4. Juli 2006 Autor Teilen Geschrieben 4. Juli 2006 Würde es genügen, wenn ich den mysql-Ordner inkl. der von mir vordefinierten Datenbanken mit zur Anwendung gebe? Und noch was: Damit Java und MySQL miteinander kommunizieren können, brauche ich einen JDBC-Treiber (liegt vor). Der muss doch auch beim Kunden und auch in die Runtime eingebunden sein. Oder sehe ich das falsch? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Alex_winf01 Geschrieben 5. Juli 2006 Autor Teilen Geschrieben 5. Juli 2006 Hallo nochmal, ich sehe in der zwischenzeit, dass es ohne SQL-Server nicht geht. Mein Kollege behauptet stuhr, es würde gehen, dem Kunden nur die Datenbank zu übermitteln. Wie kann ich ihm beweisen, dass es nicht geht? Wenn ich ihm mit dem Programm zeige, dass es nicht geht, behauptet er ich hätte mies programmiert. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Joe Kinley Geschrieben 5. Juli 2006 Teilen Geschrieben 5. Juli 2006 Auch wenn ich dieserlei Fragen hasse, hier ist sie wirklich angebracht: Warum wuerde man das wollen? Die Gleichung von Snowman ergibt naemlich genau den sinn.... man braucht nunmal das System dazu, um mit den Daten arbeiten zu koennen. Wenn dein Kollege unbedingt meint, es muesse gehn, soll er es dir zeigen... dann wird er schon sehn dass es nicht geht. Rein technisch ginge es wenn du die Engine von MySQL nachprogrammierst... aber das waer wirklich unsinnig... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 5. Juli 2006 Teilen Geschrieben 5. Juli 2006 Klar geht es, wenn du den Inhalt vom Data Ordner kopierst. Im Data Ordner hat jede Datanbank des MySQL-Servers ein eigenes Verzeichnis. In dem Verzeichniss liegen die Daten der einzelnen Tabellen. Du kannst theoretisch einfach den entsprechenden Ordner kopieren und der Kunde kopiert den bei sich in den Data Ordner. ABER: Das ist zwar möglich, aber nicht die beste Lösung. Vor einer solchen Aktion sollte man den Server stoppen, da es ansonsten zu Datenfehlern kommen kann, wenn z.B. beim (Über-)schreiben der Dateien gerade auf den Server zugegriffen wird o.ä. Also Backuplösungen (und damit auch zum Wiedereinspielen der Daten) gibt es z.B. mysqldump oder mysqlhotcopy. Damit wird nichts anderes getan, als eine Textdatei angelegt, die alle SQL-Kommandos enthält um deine DB + Tabellen und Inhalten wieder so anzulegen wie sie in dem Moment des Backups war. Alternativ kannst du auch Tools wie den MySQL Administrator o.ä. verwenden, die eine ähnliche Funktion zur Verfügung stellen. Das wäre die zu bevorzugende Methode. Du machst ein Backup der DB und der Kunde bekommt das Backup-File, welches er (oder auch dein Programm) dann in die DB einspielt. EDIT: Also wenn ich das nochmal lese: Ihr habt beide recht. Es ist möglich nur die Daten dem Kunden zu übermitteln (s.o.) und gleichzeitig braucht der Kunde natürlich einen (My)SQL-Server, auf dem die (einzeln übermittelten) Daten dann eingespielt werden. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 5. Juli 2006 Teilen Geschrieben 5. Juli 2006 Hi, bei Java-Mysql brauchst du zwingend, die Daten, den Mysql Server, den JDBC Driver und deine Anwendung. Es gibt aber auch Datenbanken die direkt als Jar laufen und so in deine Anwendung eingebunden werden können. Beispiel: www.db4o.com Da würdest du nur deine Anwendung und die Daten ausliefern. Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Alex_winf01 Geschrieben 5. Juli 2006 Autor Teilen Geschrieben 5. Juli 2006 Hallo, ich habe leider keinerlei Erfahrung. Wie muss ich denn die Datenbank dann einbinden und wie kann ich sie administrieren? Ich weiss, dass es ein Admin-Tool dazu gibt. Könntest Du mir kurz eine Art "Anleitung" geben, wie ich die DB zu installieren kann und wie ich dieses Admin-Tool nutzen kann? Das Tutorial habe ich bereits gesehen. Ich komme damit aber nicht so gut klar. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
robotto7831a Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 Welches Betriebssystem? Frank Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 Wie muss ich denn die Datenbank dann einbinden und wie kann ich sie administrieren? Ich weiss, dass es ein Admin-Tool dazu gibt. Kenne diese spezielle DB jetzt nicht, aber andere, die ähnlich funktionieren... Die Daten werden in so einer DB genauso wie in MySQL z.B. als Dateien gespeichert (das was im data-Ordner steht). Der Unterschied zu MySQL ist nur, dass MySQL ein Programm bereitstellt, was die Daten ausliest oder einträgt, der MySQL Server. Bei einer solchen DB ist die Logik zum Schreiben und Lesen der Daten nicht in einem externen Programm untergebracht, sondern in einer Komponente, die einfach in dein Programm eingebunden werden muss. Darüber kommunizierst du dann mit den Daten. Meißt gibt es dann dazu eigene Komponenten, die wie die Standard DB-Komponenten aufgebaut sind. Darüber bindest du die DB dann ein und musst nur angeben, wo die Dateien liegen. Der Rest geht dann wie üblich. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Alex_winf01 Geschrieben 6. Juli 2006 Autor Teilen Geschrieben 6. Juli 2006 @ palvoelgyi ich benutze Windows XP Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.