Hilefoks hat gesagt.:
Das ist nicht möglich. Ein solcher müsste gegen die MySQL-DB Linken und würde dabei selbst unter die GPL fallen. Mh... geht doch... aber nur wenn man über Socket mit dem Server kommuniziert.
Jepp, per Socket stehen dir alle Wege offen. Wobei manche da auch schon wieder eine Grauzone drin sehen...
Es gibt noch einen Treiber für MySQL-Datenbanken der ohne GPL auskommt: MM.MYSQL genannt. Das ist der "frühere" JDBC MySQL-Connector. Der ist mit LGPL lizensiert. Irgendwo hier im Forum hab ich den mal wieder ausgegraben und getestet. Nach einen kleinen Fix im Code lief er "wieder". Man hat also durchaus die Möglichkeit MySQL ohne GPL zu nutzen.
Und selbst wenn man einen komplett eigenen Treiber schreiben will muss man da nix "linken". Du kannst das MySQL-Protokoll auch selbst implementieren. IMHO ist MySQL an sich urheberrechtlich und was weiß ich geschützt. Aber das Protokoll kannst du "nachbauen" ohne dass dir da einer an den Karren fahren kann. Zur not eben mit White-Room/Clean-Room-Engineering (siehe wikipedia).
Oder man geht den Umweg über PHP.... Java sprich PHP an, und PHP spricht die Datenbank an. (so macht's
http://jpmdbc.dev.java.net [ist auf meinem mist gewachsen ;-)]).
Zu dem Thema: "Muss ich mein Programm, das MySQL-JDBC benutzen kann, auch unter die GPL stellen wenn ich es veröffentliche":
Das ist, AFAIk "Grauzone".. Du bist auf der "sichereren" Seite wenn du dein Programm so baust, dass der Kunde per Konfigurationstool oder ähnliches selbst dafür verantwortlich ist einen Treiber für die JDBC-Schnittstelle anzuflanschen. Was er dann benutzt ist seine Sache. Schließlich ist JDBC ein offener Standard.
Lieferst du aber ein Programm aus, das schon vorkonfiguriert für MySQL ist, und hast vielleicht sogar noch den MySQL-JDBC-Connector mit dazugeliefert, dann sieht's eher schlecht aus.
Um ganz sicher zu gehen: Nehmt doch Postgres ?!
Oder es bildet sich hier eine Truppe die den in die Tage gekommenen MM.Mysql Treiber (LGPL) wieder aufgreift und auf den neusten Stand bringt... (wäre wohl mit von der Partie)
- Alex