Datenbank MySQL und Java

Sonnenblume123

Aktives Mitglied
Hallo,

ich hätte eine Frage bezüglich MySQL und Java. Ich habe Java mit meiner MySQL Datenbank verbunden. Nun arbeite ich aber mit mehreren Leuten an dem Projekt und möchte nun wissen, ob die auch Zugriff auf die Datenbank haben (sie sollten Zugriff darauf haben, falls nicht).
 
K

kneitzel

Gast
Also normalerweise hat jeder Entwickler seinen eigenen Arbeitsplatz mit eigener oder eigenen Datenbank(en).

Zum Code gehört also auch, dass man eine Datenbank neu aufsetzen oder von einer Schemaversion zu einer anderen upgraden kann.
 
K

kneitzel

Gast
Ja, das sollten die Kollegen dann auch machen. Das gehört zu einer Lösung doch dazu. Wenn die Lösung von irgend jemandem später eingesetzt werden soll, muss er doch auch eine entsprechende Datenbank anlegen. Das ist somit also kein unnötiger Ballast sondern ein existenzieller Teil der Entwicklung.
 

Sonnenblume123

Aktives Mitglied
Problem ist eben, dass das später dem Kunden ausgeliefert werden soll und dieser sollte nicht immer die Datenbank neu erstellen müssen.
Wäre also sinnvoll, wenn ich die Datenbank exportiere und als Datei speichere oder?
 

Thallius

Top Contributor
Also normalerweise hat jeder Entwickler seinen eigenen Arbeitsplatz mit eigener oder eigenen Datenbank(en).

Zum Code gehört also auch, dass man eine Datenbank neu aufsetzen oder von einer Schemaversion zu einer anderen upgraden kann.

Das kommt drauf an ob jeder Client seine eigene Datenbank quasi nur als „SpeicherModul“ benutzt oder ob es sich um eine richtige Dtenbankanwendung handelt. Normalerweise gibt es da irgendwo einen Datenbankserver mit einer Dev, Stage und Prod Datenbank (oder sogar 3 Server, für jede Stage einen). Diese benutzt die Applikation dann.
Und Code der die DB erstellt hat da so gar nichts in dieser Applikation zu suchen. Gute Applikationen haben normalerweise nicht einmal die Rechte Tabellen zu erstellen oder zu verändern, es sei denn das Konzept der Applikation läßt keine andere Lösung zu. Eine gute Datenbank ist immer unabhängig vom ihrer Applikation zu administrieren.

Gruß

Claus
 
K

kneitzel

Gast
Also generell sollte eine Applikation seine Datenbank aktualisieren können. Dazu versioniert man das Schema ebenfalls und hat dann idealerweise Changescripts, die eine Datenbank aktualisieren.

Ob die Applikation die Datenbank selbst aktualisiert (Das findet man bei viel Software für die Massen. Da gibt man dann eine Datenbankverbindung an und dann macht die Software alles selbst) oder ob das über eigene Methoden geht, ist dabei erst einmal egal.

Microsoft hat ein Databank Projekt entwickelt (Bestandteil der SQL Server Data Tools), welches Schema Abgleichs durchführen kann und dann automatische Change Scripts erstellt. Aber davon halte ich nicht sehr viel, denn man will oft deutlich mehr, also solche Tools bereit stellen.

Und natürlich muss ein Kunde eine Datenbank nicht ständig neu erzeugen. Das findet einmal statt (Oder wenn er mehrere Instanzen haben will, dann eben mit mehreren Instanzen) und danach wird die Datenbank gepflegt. Wie soll das auch anders gehen. Ich muss nur an gewisse Datenbanken im TB Bereich denken. Das lässt sich nicht mehr so ohne weiteres neu aufsetzen. :)

Aber nicht desto trotz muss der Entwickler das natürlich aufsetzen können. Und das ist dann auch ein guter Test bei mehreren Entwicklern.

Bei meinen Scripts habe ich:
- Methoden für neue, leere Datenbanken
- Scripts für gewisse Testdaten
- Scripts für produktionsnahe Daten (Helfen beim nachstellen von Problemen).

Und wenn ich etwas brauche, dann ist das sehr schnell erledigt. Generell sind alle Daten in der Sourceverwaltung. Mein Rechner ist nebensächlich. Sprich: Ich habe auch mehrere Entwicklungssysteme: Windows/Linux und zwei Macs. Und wo ich gerade entwickeln will, da reicht ein Abrufen der letzten Version und ich kann loslegen.

Derzeit arbeite ich mit Cuba Studio/Platform, was ich recht interessant finde. Hat auch einige Probleme wie ich meine, aber das ist jetzt nur ein Beispiel: Da werden auch alle Dinge in SQL Scripten angelegt. Man hat mehrere create scripte und dann ganz viele update scripte. Und man kann dann konfigurieren, ob die Updates automatisch eingespielt werden sollen oder manuell. Kann ganz gut sein, wenn man dann einfach eine neue Version deployed und der Rest geht automatisch.

Also Wege gibt es viele und ich würde empfehlen, mit einfachen Create Scripten anzufangen. Und dann Change-Scrite zu pflegen. Die kann man dann am Anfang manuell ausführen. So haben wir auf Arbeit angefangen, ehe wir unseren eigenen DatabaseLoader geschrieben haben.
 

mrBrown

Super-Moderator
Mitarbeiter
Das kommt drauf an ob jeder Client seine eigene Datenbank quasi nur als „SpeicherModul“ benutzt oder ob es sich um eine richtige Dtenbankanwendung handelt. Normalerweise gibt es da irgendwo einen Datenbankserver mit einer Dev, Stage und Prod Datenbank (oder sogar 3 Server, für jede Stage einen). Diese benutzt die Applikation dann.
Und Code der die DB erstellt hat da so gar nichts in dieser Applikation zu suchen. Gute Applikationen haben normalerweise nicht einmal die Rechte Tabellen zu erstellen oder zu verändern, es sei denn das Konzept der Applikation läßt keine andere Lösung zu. Eine gute Datenbank ist immer unabhängig vom ihrer Applikation zu administrieren.
Zu guten Datenbanken gehört auch, das die Administration (erstellen, updaten, etc) automatisiert ist, und damit natürlich als Code vorliegen muss. Ob die Anwendung später im Live-Betrieb die Datenbank verändern kann, ist erstmal völlig unabhängig davon.

Schau Dir mal https://flywaydb.org/ an, könnte geeignet sein, je nachdem was Du vorhast.
Oder als Alternative https://www.liquibase.org, gefällt mir persönlich besser
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F MySQL Wie kann ich in Java Datensätze aus einer MySQL Datenbank gezielt in einzelne Arrays schreiben? Datenbankprogrammierung 9
H Datenbank-Anbindung Java/MySQL Datenbankprogrammierung 2
S Java Connection to MySQL Datenbank FunPic Datenbankprogrammierung 4
G Suchfunktion mit Java in Mysql Datenbank Datenbankprogrammierung 7
M Auf MySQL Datenbank mit Java zugreifen Datenbankprogrammierung 4
M MySQL Datenbank mit Java routen Datenbankprogrammierung 2
M Ausgabe in Tabelle der MySQL-Datenbank mit Java Datenbankprogrammierung 4
B Spaltennamen von MySQL Datenbank nach Java auslesen Datenbankprogrammierung 10
A Java-Applet -> MySQL Datenbank Datenbankprogrammierung 7
L Bilder in MySQL-Datenbank via Java verwalten Datenbankprogrammierung 5
M MySQL-Datenbank über Java ansprechen Datenbankprogrammierung 5
M Mit Java Data Objects Daten in einer MySQL-Datenbank manipul Datenbankprogrammierung 9
F Problem mit MySQL-Datenbank und Java-Applet Datenbankprogrammierung 2
Auf MySql Datenbank zugreifen funktioniert nicht Datenbankprogrammierung 8
M MySQL Datenbank in Array Datenbankprogrammierung 2
W MYSQL Datenbank Login Android Datenbankprogrammierung 3
bueseb84 Spring Boot : Update Mysql Datenbank Datenbankprogrammierung 1
Avalon Attribute werden mit Unterstrich in eine MySQL Datenbank eingetragen Datenbankprogrammierung 10
H Fehler bei getConnection zu MySQL Datenbank Datenbankprogrammierung 18
H MySQL MySQL - Keine Verbindung zur Datenbank?! Datenbankprogrammierung 4
L MySQL Android zu externer MySQL Datenbank verbinden Datenbankprogrammierung 5
P Daten in eine mySQL Datenbank einfügen Datenbankprogrammierung 4
N MySQL Datenbank lokal Datenbankprogrammierung 3
M In MySql Datenbank schreiben Datenbankprogrammierung 6
F BPlaced MySql Datenbank ansprechen Datenbankprogrammierung 5
M MySQL Datenbank durchsuchen Datenbankprogrammierung 5
K MySQL Datenbank 2facher Zugriff Datenbankprogrammierung 1
L Zugriff auf lokal gespeicherte mySQL Datenbank Datenbankprogrammierung 3
S Verbindungsaufbau zu MySql Datenbank nicht möglich Datenbankprogrammierung 3
A Nach Export mysql Verbindung zur Datenbank nicht möglich, was tun? Datenbankprogrammierung 7
MiMa Mehrfacheinträge in MySQL Datenbank Datenbankprogrammierung 5
M Mysql-Datenbank connecten (Eigenes Framework) Datenbankprogrammierung 10
O Viele Verbindungen-Exception bei insert Daten zur MySQL-Datenbank Datenbankprogrammierung 2
E Zugriff auf MySQL-Datenbank Datenbankprogrammierung 4
J MySQL Datenbank konfigurieren, JDBC, MySQL oder Hibernate Datenbankprogrammierung 2
T MySQL Kann Verbindung zur MySQL Datenbank nicht herstellen. Datenbankprogrammierung 4
A MySQL MySQL Datenbank einbinden in GWT Datenbankprogrammierung 6
J Zugriff auf MySQL-Datenbank Datenbankprogrammierung 5
S MySQL Koreanische Schriftzeichen in MySQL Datenbank schreiben Datenbankprogrammierung 11
M Datenbank (MySQL) auslesen Datenbankprogrammierung 3
F Connection refused: connect Bei Verbindungsherstellung zu MySQL Datenbank Datenbankprogrammierung 3
vandread mySQL Datenbank erstellen? Datenbankprogrammierung 4
P Daten aus MySql Datenbank lesen??? Datenbankprogrammierung 6
E Wie auf eine MySql Datenbank zugreifen Datenbankprogrammierung 25
G MySQL: Anfragen von Bits aus der Datenbank Datenbankprogrammierung 3
R Entfernte MySQL Datenbank für lokale Swing-App Datenbankprogrammierung 8
C MySQL Datenbank starten Datenbankprogrammierung 4
C MySQL Datenbank mit Hibernate befüllen Datenbankprogrammierung 5
W Auslesen von Tabellen einer MYSql Datenbank Datenbankprogrammierung 25
M Mysql datenbank auslesen und mittels servlet wiedergeben Datenbankprogrammierung 3
N Problem mit Verbindung zu externer MySQL Datenbank Datenbankprogrammierung 8
G SSH Verbindung zur (MySQL-)Datenbank Datenbankprogrammierung 6
M Sicherheit bei Applet auf MySQL Datenbank Datenbankprogrammierung 4
B Eintrag in der MySQL Datenbank eintragen? Datenbankprogrammierung 2
Z Auslesen aus einer mySQL Datenbank Datenbankprogrammierung 4
M MySQL Datenbank einbinden - Riesenproblem Datenbankprogrammierung 6
R Nach String in MySQL datenbank suchen Datenbankprogrammierung 7
C Verbindung zur MySQL Datenbank scheiter. "Bad handshake Datenbankprogrammierung 2
D mysql Standalone Datenbank Datenbankprogrammierung 6
R Wie ist URL zu meiner MySQL Datenbank? Name?Pwd? Datenbankprogrammierung 2
K keine Verbindung zu mysql Datenbank Datenbankprogrammierung 11
B double Array in MySQL Datenbank speichern/laden Datenbankprogrammierung 12
D Kann nicht auf MySQL Datenbank Zugriff Datenbankprogrammierung 9
F Abfrage eines DB Feldes aus einer mySQL Datenbank Datenbankprogrammierung 2
L Verbindung zu MySQL-Datenbank Datenbankprogrammierung 2
S Daten aus einer MySQL-Datenbank auslesen Datenbankprogrammierung 7
S Problem bei Eingabe von Dateipfad in eine MySQL-Datenbank Datenbankprogrammierung 4
welterde Objekte in Mysql Datenbank speichern Datenbankprogrammierung 3
R Zugriff auf MySQL-Datenbank im Internet Datenbankprogrammierung 13
X Vectoren in mySQL-Datenbank speichern und auslesen Datenbankprogrammierung 8
torresbig MySQL hibernate - could not resolve entity class ... (Datenbank Anfänger) Datenbankprogrammierung 19
M Meine Datenbank lässt sich mit meiner Methode nicht ändern Datenbankprogrammierung 1
I SaaS Applikation: pro Kunde eine Datenbank / Schema oder eine DB für alle Kunden? Datenbankprogrammierung 76
T SQL-Statement Datenbank nach SQL Statement schließen? Datenbankprogrammierung 7
M Datenbank Zugraff nach Umwandlung in .jar-Datei nicht mehr möglich Datenbankprogrammierung 4
MongoDB-Datenbank in Androidstudio einbinden Datenbankprogrammierung 1
thor_norsk Datenbank: Apache Derby Datenbankprogrammierung 6
B SQlite Datenbank, trotz Statements wurden nicht alle Zeilen erzeugt? Datenbankprogrammierung 35
M Datenbank mit REST API Datenbankprogrammierung 66
M Entfernte Datenbank Datenbankprogrammierung 11
T Datenbank: Tabelle erstellen bei Web-Applikation Datenbankprogrammierung 4
D SQLite Datenbank in Android Studio (Java) durchsuchen Datenbankprogrammierung 3
S Den letzten Eintrag aus Datenbank ziehen (Oracle SQL Dev.) Datenbankprogrammierung 14
N Datenbank abfragen nach bestimmten Wort Datenbankprogrammierung 7
Beginner22 Zugriff auf Datenbank aus Java über mariadb Datenbankprogrammierung 3
ma095 value NULL- Datenbank Postgresql Spring - intellij community Datenbankprogrammierung 0
raptorrs Plötzlich keine Verbindung zur Datenbank mehr möglich Datenbankprogrammierung 14
Davee SQLite SQLite Datenbank lässt sich nicht auf anderen PCs öffnen Datenbankprogrammierung 8
P Datenbank Tool - besser als oracle SQL Developer gesucht mit effizinte Verbindungsverwaltung Datenbankprogrammierung 2
X JPA (EclipseLink) und Oracle Datenbank Datenbankprogrammierung 2
T Datenbank auf einer Webseite aus einer Exceltabelle erstellen Datenbankprogrammierung 5
L SQL Datenbank Datenbankprogrammierung 7
L SQL Datenbank INSERT INTO Datenbankprogrammierung 6
L SQL Datenbank Tabelle insert Datenbankprogrammierung 7
L SQL Datenbank Tabelle erstellen Datenbankprogrammierung 6
nonickatall MySQL Auf neue Datensätze in einer Datenbank reagieren Datenbankprogrammierung 5
anton1 Online Datenbank Datenbankprogrammierung 7
krgewb H2-Datenbank öffnen Datenbankprogrammierung 8
J Datenbank abfragen Datenbankprogrammierung 6
P Verbindung zu einer Access Datenbank per Eclipse oder Intellij Datenbankprogrammierung 0

Ähnliche Java Themen

Neue Themen


Oben