mmofacts.com

Entwickler: Welche Datenbank setzt ihr ein?

gepostet vor 17 Jahre, 5 Monate von Drezil
nachdem ich durch www.galaxy-news.de/mypage/33_theundeadable/blog/236_mysql_wirklich_frei.html mal etwas zum nachdenken gekommen bin, hab ich mich mal nach alternativen umgesehen .. ich bin von postgres (auf die ich atm umstelle) positiv überrascht. damit lasen sich (u.a. durch vererbung, trigger,..) viele sachen sehr elegant lösen.
produktiv konnte ich es noch nicht testen, da ich mit der umstellung noch nicht fertig bin.
Was für db's setzt ihr ein? ich denke mal nen gorßteil hat mit php/mysql angefangen .. und ist dann daran hängen geblieben .. oder täusche ich mich und es gibt ne stillschweigende mehrheit für mssql?
@MOD: Bitte ins Entwicklerforum (Umsetzung) verschieben. Da kann man nämlich (noch?) keine Umfragen erstellen.
gepostet vor 17 Jahre, 5 Monate von Toby
Ich setze atm MySQL 5.0 ein und arbeite mich da in Views, Triggers usw. ein. Postgre ist aber sicherlich eine schöne Alternative, habe ich auch schon mit gearbeitet. Evt. wird am Ende auch Postgre eingesetzt. Daher will ich sehr auf Views usw. bauen, da ich dadurch komplizierte Abfragen komplett in die DB verlagere und mein Code möglichst Multi-DB-fähig wird.
gepostet vor 17 Jahre, 5 Monate von progs
Ich benutze postgresql und bin damit sehr zufrieden.
gepostet vor 17 Jahre, 5 Monate von MrMaxx
ich benurtze ebenfalls postgreSQL besonders wegen der umfangreichen SQL Unterstützung.
MrMaxx
gepostet vor 17 Jahre, 5 Monate von TheUndeadable
Momentan setze ich MySQL ein, spiele aber momentan insbesondere mit db4o und dem SQL-Server 2005 herum.
Wahrscheinlich werde ich auf Grund der GPL-Problematik von db4o und MySQL abschwören und auf den SQL Server setzen....
gepostet vor 17 Jahre, 5 Monate von Agmemon
Lässt sich nicht pauschal beantworten, je nach Einsatzzweck.
gepostet vor 17 Jahre, 5 Monate von exe
In meinem Spiel bin ich mittlerweile auf Postgres umgestiegen. Hintergrund ist, dass ich durch meinen Job Postgres gut kennen und schätzen gelernt habe. Früher wars mir suspekt, vorallem weil ich mich damit nicht auskannte, mittlerweile halte ich es für ein äusserst leistungsfähiges und elegantes Datenbanksystem.
Konkret bin ich zu Postgres umgestiegen, da es einige sehr schöne Features (Tabellenvererbung und eigene Datentypen als Beispiel) hat die man bei MySQL nach wie vor vermisst, andere Features (Trigger, Stored Procedures und Constraints z.B.) besser als MySQL implementiert.
Eine pauschale Antwort ist aber schwer zu geben. Jedes Datenbanksystem hat seine Stärken und Schwächen. Für mein Browsergame habe ich Postgres ausgewählt, ein anderes Projekt läuft vielleicht wieder auf MySQL oder einer ganz anderen Datenbank. Je nach Bedarf eben.
gepostet vor 17 Jahre, 5 Monate von Bacardi Adi
setze im Moment auch MySql ein. hab mir auch schon ein wenig db4o angeschaut, kann mir aber das ganze aber noch net so ganz vorstellen wie man dort das ganze abbildet.
wegen GPL und andern Gründen (wobei die schwerer wiegen) werde ich wahrscheinlich MS SQL Server 2005 Express Edition bei meinem nächsten Projekt einsetzen.
gepostet vor 17 Jahre, 5 Monate von Itchy
[x] MySQL
Postgres ist mir (war jedenfalls mit 7.4, 8.x hab ich nicht ausprobiert) zu lahm, MS SQL Server läuft zwar fix und benutze ich auch für einige Projekte, läuft aber eher schlecht unter Linux.
Eine Oracle Lizenz zu kaufen, würde ich mit Sicherheit das Geld in was vernünftigeres investieren
Was ich demnächst evtl. mal ausprobieren möchte, ist IBM DB2, da solls wohl eine kostenlose Variante geben, ähnlich der kostenlosen MS SQL Server Variante.
gepostet vor 17 Jahre, 5 Monate von exe
Original von Itchy
[x] MySQL
Postgres ist mir (war jedenfalls mit 7.4, 8.x hab ich nicht ausprobiert) zu lahm [...]

Du hast nicht zufällig MyISAM-Tabellen in MySQL benutzt?
gepostet vor 17 Jahre, 5 Monate von werkannseinefressenichth
man allta. is schon irre das sowas wie das hier existiert. i meine hier trifft mann einfach allet an: opfas , hurensöhne(drezil,kelen), krüppls... undann ochnoch alle auf einem flekk. aba dass ihr dann aunoch leute anmacht die im reallife noch klarkommen(alpha, kaiza) . ts. imeine die hälfte von euch is längst voljährig und pellt sich aba imaanoch die salami wenn ihr wisst wass i mein. i wette keina von euch interessiert sich auch nur für das andere geschlechtalso nomma zusammengefasst: ihr seid alles schwanzlutscher, als kind auffn kopf gefalln, un eure mütta sind arschgeburten und pädofiele kürbismuschis!!! ok hautta rein ihr fozzen. bei euch brauchman echt keine hoffnung mea zu haben.
gepostet vor 17 Jahre, 5 Monate von Kaiser Nero
Ich nutze MySQL. Habe aber auch noch keine andere DB ausprobiert, da ich mit MySQL zur Zeit gut zurecht komme.
mfg
EDIT:
@Moderatoren: sry dass ich hier was dazu schreibe aber er geht mir auf den Geist - ich werde es natürlich wegeditieren wenn der Quatsch aufhört
@Alpha-blubb: Hör einfach auf mit dem Kram. Es bringt nichts. Wie Kampfhörnchen schon gesagt hat. Zu der sache mit den Argumenten: Schau einfach mal im Forumteil "Papierkorb". Dort findest du in einem deiner Flame-Thread eine liste an Argumenten von mir, die die Mods nur durchlesen müssten.
gepostet vor 17 Jahre, 5 Monate von None
ja man du hast es aufn punkt gebracht alter!
alpha, kaiza,werkannseinefressenichth, und HEESE!
drezil du bist ein"lol"-h*rens*hn!
gepostet vor 17 Jahre, 5 Monate von werkannseinefressenichth
bacardi adi i wette deine eltern zwingen dich die olle aldi tüte üba deine hakkfresse zu ziehen.
gepostet vor 17 Jahre, 5 Monate von Drezil
unter anderem deswegen wollte ich, dass das ins interne wandert.
@mods/admins: ich beantrage eine speicherung und ggf. herausgabe der daten (ip-adresse und andere gespeicherte Daten) von werkannseinefressenichth und AlphaIndustries, damit ich strafantrag gegen beide bei der zuständigen behörde stellen kann.
eine solche beleidigung, verleumdung und verunglimpfung habe ich lange nicht mehr erlebt.. naja meinen anwalt wird es freuen.
andernfalls sehe ich mich leider gezwungen das board zu verklagen, da es sonst kaum eine rechtliche handhabe gegen solche subjekte gibt und dieses eskalieren gestern schon abzusehen war - ein sperren der entsprechenden user erfolgte gestern wider der meinung einiger Forenmitglieder nicht.
Sollten hier nicht umgehend Konsequenzen gezogen werden, so werde ich mich auch nach einem anderem Forum umsehen.
gepostet vor 17 Jahre, 5 Monate von mr-smile
stimmt, es sollte mal etwas passieren...
Ich nutze mysql, hab aber noch nix anderes probiert, erstmal will ich mit mysql richtig klarkommen.
gepostet vor 17 Jahre, 5 Monate von None
Ok von mir aus brauchst du keine weiteren post von mir zu erwarten,
aber ich würd mir mal überlegen,
und du weißt, dass du es warst, der beleidigungen gegen mich(später dann gegen mein freund) gebracht hast...bei eröffnung eines normalen Threads mit einer normalen disskussion.
Ich würd jetzt noch was sagen aber Kampfhörni bat ja es sein zu lassen...
UND DAZU:einer der chatter hat eine site über mich eröffent...
gepostet vor 17 Jahre, 5 Monate von MagicForrest
Geht es hier jetzt um Datenbanken oder einen Streit?
Falls es um DBs geht: Ich verwende hauptsächlich MySQL und postgres.
Oracle hab ich auch schon des öfteren verwendet, aber nicht für eigene Projekte/Anwendungen.
gepostet vor 17 Jahre, 5 Monate von Digioso
MySQL.
gepostet vor 17 Jahre, 5 Monate von sammy
Oracle
da wir Oracle auf Arbeit einsetzen, habe ich den Sprung von Mysql zu Oracle gewagt. Ich versuche gerade die meiste Logik direkt in die Datenbank zu legen und PHP nur als Ausgabe zu nutzen.
Sammy
gepostet vor 17 Jahre, 5 Monate von Todi42
Hat mal jemand eine Preisübersicht für die gängigen Datenbanken?
gepostet vor 17 Jahre, 5 Monate von Drezil
was bringt es viel logik in die db zu legen, wenn man eher 10 www-server vor einen db-server schalten kann, wohingegen clustering immer etwas aufwendig ist?!
ich bin nicht voreingenommen .. es erscheint mir nur "weniger logisch". wie funktioniert clustering eigentlich en detail?
gepostet vor 17 Jahre, 5 Monate von Agmemon
Original von Drezilwie funktioniert clustering eigentlich en detail?

Das lässt sich gar nicht so leicht beantworten und hängt von den Anforderungen deiner Anwendung ab. Der einfachste Fall ist wohl, mehrere Datenbankserver zu verwenden, die sich über einen Replikationsmechanismus abgleichen. Bei Replikation muss man aber beachten, dass nur Lese-Zugriffe performanter sind, denn Schreibzugriffe müssen ja auf beiden Maschinen durchgeführt werden. Das Ganze kann aber wieder zu Problemen führen, wenn man memcached verwendet und munter der DB Server bei Anfragen gewechselt wird.
Eine andere beliebte Variante ist es z.B. bei MySQL die Tabellen auf unterschiedliche Server zu verteilen, oftmals nach getrennt nach Table types. Also InnoDB auf den einen Server, MyISAM auf den zweiten Server.
Aber es gibt da viele unterschiedliche Spielarten und man muss immer gucken, wo die Performance-Probleme liegen. Verursacht eine DB z.B. zu viel File I/O sollte man lieber zur Auslagerung von Tablespaces greifen, als zu Clustering.
gepostet vor 17 Jahre, 5 Monate von Drezil
also eigentlich so, wie ich es erwartet hatte .. hätte mir da auch kenen großen "ominösen Trick" lorstellen können.
Stellt sich die Frage: Wieso die DB "unnötig" belasten, wenn man eher 10 WWW-Server ans frontend setzt und die dann etwas mehr rechnen lässt?
Wie gesagt, man kann leichter server dazusetzen als nen db-cluster oder ähnliche gebilde anzuwerfen..
gepostet vor 17 Jahre, 5 Monate von exe
Unterscheidet sich ein Clustering des Frontends denn so stark von dem des Backends? Wenn ich im Frontend clustere muss ich mich da auch im einige Sachen kümmern. Z.B. um einen Loadbalancer der die Anfragen verteilt, Sessionreplikation damit ein User bei Serverwechsel nicht ausgeloggt wird, eventuell verteilte Caches (wenn dein Spiel cached) und und und ...
Man kann zwar unter Umständen auch mehrere identische Webserver aufsetzen und nach Round-Robin-Prinzip die User fest den Servern zuteilen, aber ob das so viel mehr Sinn macht? Ich würde da eher einen Datenbankcluster aufsetzen und jedem Knoten im Cluster alle Spieldatenbanken zuteilen. Raucht einer der Knoten ab springen die anderen für ihn ein. Das ist nämlich der nächste Punkt beim Clustering: Ausfallsicherheit. Das gleiche gilt für das Frontend: Loadbalancer vor den Cluster, Sessionreplikation innerhalb des Clusters und der User kriegt nicht mehr mit auf welchem Server er ist oder ob gerade einer abgestürzt ist.
Also wenn man schon über Clustering nachdenkt sollte man gleich richtig drüber nachdenken. Denn merke: 10 Webserver aufzusetzen die alle das gleiche Frontend anbieten sind auch ein Cluster ..
gepostet vor 17 Jahre, 5 Monate von Kaiser Nero
Und wie funktioniert das technisch gesehen? Ich meine, der Zugriff auf die DB ist doch bestimmt anders, wenn man eine Serverkonstrukion wie z.B. (1) hat oder wenn man nur einen Server mit Frontend und DB hat.

(1)
...............Spielserver................Spielserver (Neulingsrunde)
................................\................./
.................................Hauptserver ---------- Datenbank-Server
........................................|
.........................Spielserver (Speedrunde)
Edit: ah so ists schön - (zwischenräume sind weiße punkte ^^)
Das schema soll darstellen, dass es einen Hauptserver gibt, der mit dem DB-Server verbunden ist. Desweiteren gibt es verschiedene Spielserver, die über den Hauptserver mit dem DB-Server verbunden sind. Auf dem Hauptserver befindet sich auch das gemeinsame Forum. Trotzdem soll alles über einen DB-Server laufen.
Das zweite worauf ich hinaus möchte ist, wie ein Loadbalancer funktioniert. Es ist nicht so, dass ich nicht weis, was er macht, ich möchte nur wissen, wie man einen Loadbalancer erstellt und wie er funktioniert. Das ist natürlich nicht auf das obige Schema bezogen, da ein Loadbalancer dort keinen Sinn machen würde.
mfg
gepostet vor 17 Jahre, 5 Monate von Kampfhoernchen
Es Fehlt: MaxDB
gepostet vor 17 Jahre, 5 Monate von mifritscher
Also, Load balancing läuft meist über einen vorgeschalteten Reverse-Proxy.
Man kann aber auch mehrere IPs zu der Domain eintragen, dann wird reihum gewechselt.
ich nehme btw. auch mysql
mysql kann man über Master/sclave Replikation auch recht gut clustern, man muss halt schauen dass alle änderungen nur zum Master-DB server geschickt werden. Bei einer Most-Read Anwendung sollte das kein großes Problem sein.
gepostet vor 17 Jahre, 5 Monate von sammy
Hallo zusammen,
ich habe bisher nur etwas Erfahrung mit einem Oracle 10g Cluster.
Die Cluster greifen auf eine gemeinsames Storage zu, neue Sessions werden auf die Clusterknoten aufgeteilt.
Der in einem vorherigen Thread vorgeschlagene Abgleich der Datenbanken funktioniert (zumindest mit Oracle) so nicht ohne weiteres. Du mußt ja während der Schreibzugriffe die einzelnen Datenbereiche locken usw., was wäre z.B. wenn du auf einer Tabelle von zwei Sessions den gleichen Datensatz ändern willst, die eine Session geht auf Server 1, die zweite auf Server 2.
Das Spiegeln der Server bringt eher etwas für Sicherheit: zwei Server an zwei Unterschiedlichen Standorten, wenn der erste abraucht, springt der zweite ein (Hot Standby).
Eine Möglichkeit, per Lowcost mehr Performance zu kriegen sollten Oracle-DB Links sein, da kann man von einer DB auf die Daten einer anderen DB zugreifen.
Sammy
gepostet vor 17 Jahre, 5 Monate von Agmemon
Original von Drezil
Stellt sich die Frage: Wieso die DB "unnötig" belasten, wenn man eher 10 WWW-Server ans frontend setzt und die dann etwas mehr rechnen lässt?

Ich denke Du vergisst dabei einen wesentlichen Punkt. Es kommt immer auf das Gesamtumfeld an und wie die Auslastung der Server aussieht. Wenn der DB-Server im Verhältnis weniger zu tun hat, kann man schon überlegen, ob man nicht einen teil der Arbeit in die DB verlegt. Dass kann je nach Umfeld mehr Performance bringen, als man denkt.
Man nehme z.B. die Trigger. Trigger sparen Codeaufwand, Rechenleistung und verringern den Kommunikationsoverhead, wenn man sie richtig einsetzt. Das kann schon was ausmachen, vor allem, wenn DB und Applikationsserver nicht auf der gleichen Maschine liegen.
Zum Topic an sich:
Mal abgesehen davon, dass bei der Umfrage ziemlich viele DBMS fehlen, sollte man bei der Wahl eines DBMS einige Punkte bedenken. Das wichtigste ist natürlich erstmal, seine Anforderungen an das DBMS zu definieren um dann zu sehen, welches DBMS die Anforderungen erfüllt. Darüber hinaus sollte man sich ruhig mal ansehen, für welchen Einsatzzweck das DBMS entwickelt wurde. Mal zwei Beispiele dazu:
Die DBMS aus dem Hause MySQL: MySQL wurde ursprünglich für den Bereich Data-Warehousing entwickelt und hat aufgrund der steigenden Beliebtheit den Anforderungen Webbasierter Anwendungen Rechnung getragen. Somit ist das DBMS eher auf kurze Verbindungen hin optimiert. MaxDB geht hingegen in Richtung der klassischen DBMS Anforderungen, der Begriff fällt mir gerade nicht ein, und ist auf jeden Fall eher in Richtung ERP-Anwendungen optimiert, also lange Verbindungszeiten, parallel, rechenlastige Anfragen, usw.
OODBMS: Viele waren nach der Developerkonferenz sehr angetan von db4o. Wenn man sich die Beschreibung auf der Webseite ansieht, sieht man aber ganz schnell, dass db4o für den embedded-Bereich entwickelt wurde. Ob sich db4o so wirklich für die Anforderungen eines größeren BGs eignet, muss sich zeigen (bin auf die ersten Erfahrungsberichte gespannt), oder ob man besser zum großen Bruder POET greifen sollte.
gepostet vor 17 Jahre, 5 Monate von Sarge
Auch wenn es ein wenig OT ist aber weils gefragt wurde:
Loadbalancing Webserver:
Wie oben gesagt, das einfachste ist: mehrere ips ins dns einzutragen die dann per round robin verteilt werden... verteilt zwar die last, aber wie sie verteilt wird, hast du keinen einfluss drauf. Und du hast auch keine ausfallsicherheit. Fällt ein Webserver aus laufen 1/n Anfragen im groben ins leere - der User merkt dies deutlich.
Loadbalancing via software auf layer3 (ip) ebene:
Du hast einen extra server der deine nach außen sichtbare ip hält. Dieser nimmt alle Packete entgegen. Kriegt er ein packet packt er es wiederrum in ein ip packet und schickt es zu einem webserver. Dieser entpackt es und beantwortet es mit der nach außensichtbaren ip (und nicht seiner eigenen). Er fälscht also quasi den Absender. Die Loadbalancing software kann hier zum einen die verteilungen ändern (z.B. weighted RoundRobin oder je nach Load der Webserver unterschiedlichen Anteil an Anfragen) auch kann sie automatisch kaputte/überlastete webserver aus der Verteilung herausnehmen. Der user bemerkt dadurch nichts von dem Ausfall. Im normalfall wird ein zweiter Server als Backup für den Loadbalancer noch dazugestellt und somit hast du schon ganz gute Ausfallsicherheit in diesem bereich.
Loadbalancing via hardware auf layer3 ebene:
teilweise genau das gleiche (die billigen) wie die Softwarevariante, oder aber die teureren sparen sich die packet huckepackerei und arbeiten auf layer2 da alle Webserver direkt hinten dranhängen und jeder die ip als interface besitzt.
dann gibt es noch loadbalancing auf application-layer(5-7) dort wird dann nach den wirklichen requests verteilt. d.h. der Loadbalancer kennt zur Verteilung den ganzen http header (was angefordert wird vorallem) und entscheidet darauf (und nicht auf packet ebene).. d.h. du kannst alle statischen Files von Webserver-cluster A servieren lassen und alle dynamischen von Cluster B z.B. aber nach außen hin ist es ein system...
ich bin auch der Meinung man sollte, wenn man die Wahl hat ob Webserver oder DB die Last tragen muss, immer die Webserver nehmen (wenn es sinn macht), da diese wesentlich leichter zu clustern sind (und der cluster muss doch früher oder später sowieso her) ... außerdem ist die durchschnittliche Maschine die man als Webserver einsetzt ja auch noch ganzes stück günstiger...
ausfalltechnisch sollte am besten natürlich beides geclustert werden ...
gepostet vor 17 Jahre, 5 Monate von Agmemon
Zu den verfahren, die Sarge genannt hat, gibt es noch eine: Trennung zwischen Webserver und Applikationsservern. Das ist z.B. über FastCGI möglich: Server 1 ist der Webserver, der ncihts anderes macht, als Anfragen zu beantworten. Die Anfrage von dynamischen Seiten werden an Dispatcher weitergeleitet, die auf den Applikationsservern laufen. Unendlich Skalierbar, so einfach wie sarges erste Lösung, wenn nciht einfacher, und man braucht nicht am DNS rumfummeln.
gepostet vor 13 Jahre, 8 Monate von None

Hi Leute.

Ich wollte mal fragen wie das ausschaut mit den Lizenzen für MySQL und PostgreSQL aussieht?

Ein Browsergame ist ja eine komerzielle Nutzung und man verdient ja auch Geld damit.

Muss man bei den Datenbanken eine Lizenz erwerben?

Grüße,

minibi

gepostet vor 13 Jahre, 8 Monate von MrMaxx

Lesen bildet:

http://www.postgresql.org/about/licence

http://dev.mysql.com/downloads/mysql/5.5.4.html (da ist die Lizenz rechts oben zu finden)

Kurzfassung (da du ja schon zu faul warst google zu benutzen, oder auf die entsprechenden Seiten zu gehen):

Du hast keine Probleme damit, solange du Mysql nicht mit deiner Software ausliefern willst (was du vermutlich bei einem Browserspiel nicht vor hast). Im Falle von PostgreSQL dürftest du sogar das.

So long...

Maxx

gepostet vor 13 Jahre, 8 Monate von TheUndeadable

Microsoft SQL Server und MySQL.

Bei ersterem gibt es wie bei PostgreSQL keine Probleme mit der viralen GPL-Lizenz. Ich kann mein Programm dort verteilen wie ich möchte.

> Viele waren nach der Developerkonferenz sehr angetan von db4o

Ich liebe es... Aber zu teuer für mich als Hobby-Programmierer

gepostet vor 13 Jahre, 8 Monate von None

Ich habe schon Google benutzt und habe viele viele Foren durchsucht... Fakt ist das fast nirgends das Thema Geld vedienen und Lizenz ausführlich behandelt wird. Durch die ganzen AGB bin ich bei MySQL ehrlich gesagt nicht durchgestiegen. Bei PostgeSQL stand irgendwas mit wenn man sagt, dass man PostgreSQL benutzt eine komerzielle Nutzung erlaubt ist. Allerdings wollte ich mich in beider Seiten mal absichern und Erfahrungen von Nutzern, die diese Datenbanken komerziell nutzen einsammeln.

Grüße,

minibi

gepostet vor 13 Jahre, 8 Monate von tict4c

MySQL wird unter der GPL Lizenz

http://www.gnu.org/licenses/old-licenses/gpl-2.0.html

unter anderem steht da

The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program

Du kannst MySQL also auch für komerzielle Zwecke nutzen. Ich gehe übrigens davon aus das du den MySQL Server meinst.

Das findet man eigendlich ziemlich schnell raus.

gepostet vor 13 Jahre, 8 Monate von None

Naja das MySQL unter der GPL steht wusste ich. Die Frage war halt speziell auf ein Browergame was ne menge Prfit abwirft...

1. Ich habe aus der Lizenz damals rausgelesen, dass sobald man Profit bekommt oder dritte Personen dieses System benutzen eine Lizenz braucht.

2. Wie sieht es mit PrstgeSQL aus? Muss man da irgendwas beachten? In den Lizenzbedingungen steht irgendwas mit das man einen gewissen Text einbinden muss um es komerziell zu nutzen...

3. Die Frage ist allgemein gehalten was man bei einem Browsergame an Lizenzbedingungen bei den Datenbanken beachten muss, damit es komerziell kostenlos nutzbar ist.

gepostet vor 13 Jahre, 8 Monate von tict4c

Ich hab mir nochmal die Mühe gemacht und ein wenig gesucht.  Es wäre übrigens hilfreich wenn du sagen würdest was du überhaupt vorhast. Willst du nur eine Datenbank für ein Spiel betreiben oder hast du vor alles zu verkaufen?

Ich hab das ganze jetzt nur für MySQL nachgesehen wenn du dich für andere Datenbanken interessierst musst du dich mal nen bisschen bemühen.

In den FAQ's zu den MySQL Lizenzen hab ich folgendes gefunden

http://www.mysql.com/about/legal/licensing/oem/

For OEMs, ISVs, VARs and Other Distributors of Commercial Applications:

OEMs (Original Equipment Manufacturers), ISVs (Independent Software Vendors), VARs (Value Added Resellers) and other distributors that combine and distribute commercially licensed software with MySQL software and do not wish to distribute the source code for the commercially licensed software under version 2 of the GNU General Public License (the "GPL") must enter into a commercial license agreement with Oracle.

Das heißt das du nur dann eine kommerzielle Lizenz benötigst, wenn du dein Produkt mit MySQL verkaufst. Solange du nur ein BG betreibst, kannst du MySQL frei nutzen. Erst wenn du dein Spiel mit MySQL verkaufen willst und es nicht unter der GPL Lizenz vertreibst, musst du eine Lizenz kaufen.

Da du aber selbst wenn du dein BG verkaufen solltest nicht den MySQL Server mit verkaufen brauchst, sondern nur eine Kopie der Datenbank oder ein Script das diese erstellt, mit dem du die Datenbank auf einen MySQL-server importierst wäre selbst das ohne kommerzielle Lizenz möglich.

Hier ist  auch noch einen Auszug aus dem oben verlinkten FAQ.

Q6: What is Oracle's commercial license for MySQL software?
A: Oracle offers a commercial license for all of its MySQL software that is embedded in or bundled with another application. The commercial license allows OEMs, ISVs and VARs to distribute commercial binaries of MySQL software with their own commercial software without subjecting that software to the GPL and its requirement to distribute source code.

Q3: As a commercial OEM, ISV or VAR, when should I purchase a commercial license for MySQL software? A: OEMs, ISVs and VARs that want the benefits of embedding commercial binaries of MySQL software in their commercial applications but do not want to be subject to the GPL and do not want to release the source code for their proprietary applications should purchase a commercial license from Oracle. Purchasing a commercial license means that the GPL does not apply, and a commercial license includes the assurances that distributors typically find in commercial distribution agreements.

gepostet vor 13 Jahre, 8 Monate von None

Jo cool das war genau das was ich gesucht habe ^^

Wollte das Browsergame nicht verkaufen sondern selber betreiben.

Danke ;)

gepostet vor 13 Jahre, 8 Monate von NeoWhoRU

Setze MySQL ein und werde auch dabei bleiben :)

Postgre ist denk ich allerdings eine gute Alternative.
Keine Alternative stellt sich mir der MSSQL Server - allein schon wegen den Lizenzkosten , performance sowie der Query Syntax.
Allerdings gibt es auch eine Sache die man MS SQL zugute halten kann und die auch einigen zum Umstieg anregen könnten : Stored Procedures.
Was die Lizenzkosten von MySQL betrifft muss ich ehrlich gestehen hatte ich mal vor jahren gehört daß ab eine bestimmte nutzeranzahl kosten fällig werden.
Wer also weiß das sein projekt gigantisch wird und es von vielen genutz wird - dem kann man postgre denk ich eher empfehlen.

gepostet vor 13 Jahre, 8 Monate von darwolia

Bezieht sich die Anzahl der Nutzer dabei auf die Anzahl der Nutzer der Applikation, die auf die Datenbank am Ende zugreift (in unserem Fall: Spieler des Browsergames) oder Anzahl der Nutzer mit Zugriffsrechten auf die Datenbank (also beim mysql-server angemeldete accounts mit ihren eigenen Datenbanken und Zugriffsrechten). Das ist ja ein erheblicher Unterschied, da erstere schnell in die tausende gehen kann, zweitere aber meistens bei 1 bleibt.

gepostet vor 13 Jahre, 8 Monate von Forgotten

Original von darwolia

Bezieht sich die Anzahl der Nutzer dabei auf die Anzahl der Nutzer der Applikation, die auf die Datenbank am Ende zugreift (in unserem Fall: Spieler des Browsergames) oder Anzahl der Nutzer mit Zugriffsrechten auf die Datenbank (also beim mysql-server angemeldete accounts mit ihren eigenen Datenbanken und Zugriffsrechten). Das ist ja ein erheblicher Unterschied, da erstere schnell in die tausende gehen kann, zweitere aber meistens bei 1 bleibt.

Naja, wie wollen die das herausfinden, wie viele user es auf deinem Server gibt?

gepostet vor 13 Jahre, 8 Monate von MrMaxx

Original von NeoWhoRU

Allerdings gibt es auch eine Sache die man MS SQL zugute halten kann und die auch einigen zum Umstieg anregen könnten : Stored Procedures.

Wow...Stored Procedures...ich packe meine Geschäftslogik in die Datenbank. Ich habe durch meinen Arbeitgeber an Architekturen mitgearbeitet, die stark auf Stored Procedures setzen. Diese zeichen sich alle dadurch aus, dass du seperate DatenbankServer hast, die wiederum repliziert/verteilt sind. Kurz gesagt es kommt hier auch darauf an, wie viel Daten du über dein Netz verschiebst und wieviele Datenbankzugriffe du hast. Hier sind Stored Procedures wirklich von Vorteil, weil du mit ihnen pro Anwendungsfall nur einen Datenbankzugriff hast und somit sehr gut skalieren kannst.

Die negative Seite ist allerdings auch keine Geheimnis. Stored Procedures sind einfach beschissen zu testen, dauern extrem lange zu entwickeln (ich sag nur "meine IDE heist wieder vi") und verstecken deine Geschäftslogik in der Datenbank.

Da hier vor allem Hobbyentwickler von Browserspielen rumrennen kann ich nur von Stored Procedures abraten. Also kein Pluspunkt für PostgreSQL.

Original von NeoWhoRU

Was die Lizenzkosten von MySQL betrifft muss ich ehrlich gestehen hatte ich mal vor jahren gehört daß ab eine bestimmte nutzeranzahl kosten fällig werden.
Wer also weiß das sein projekt gigantisch wird und es von vielen genutz wird - dem kann man postgre denk ich eher empfehlen.

Ich habe mal gehört, dass wenn du viel Hünchenfleisch isst, dann wachsen dir Brüste, weil Hünchen extrem mit Hormonen behandelt werden....hat mich damals nicht davon abgehalten beim Chinesen um die Ecke Stammkunde zu werden...und Brüste sind mir immernoch nicht gewachsen....oder anders gesagt: Unsinnig...

Die Community-Edition steht unter der GPL...

Warum jetzt MYSQL bei gigantisch vielen Nutzern schlechter sein soll, als PostgreSQL ist mir auch nicht klar. Würde ja bedeuten, dass MYSQL irgendwie schlechter skaliert mit zunehmender Last. Eigentlich ist es eher so, dass MYSQL im allgemeinen schneller ist als PostgreSQL...je nach verwendeter Engine. MYISAM ist jedenfalls hölle schnell (allerdings ohneTransaktionssupport etc..). Wie sich in dem Zusammenhand MYSQL Cluster macht kann ich dir auch nicht so genau sagen, aber immerhin gibt es sowas schonmal. Ich hab Mysql bisher nur in Master-Master Replikationen benutzt, sobald irgendwie auf mehrereServer verteilt wurde.

Ich will jetzt PostgreSQL nicht schlecht reden, denn es ist ein grossartiges Tool mit vielen Funktionen (die oft auch über den Funktionsumfang von Mysql hinausgehen)...ich denke nur, dass es eine Individuelle Entscheidung ist. Es gibt kein pauschal besseres DBMS. Für ein "ordinäres" Browsergame würde ich jedoch immer auf MYSQL zurückgreifen, weil es einfacher zu konfigurieren ist und es mehr und bessere HowTos gibt.

So...nu mal wieder was produktives machen...

Maxx

gepostet vor 13 Jahre, 7 Monate von dewarim

Original von MrMaxx

Die Community-Edition steht unter der GPL...

Und das ist ein Problem, wenn man kommerzielle Software entwickelt, wo der Kunde eine Standalone-Lösung möchte. Wenn ich MySQL (bzw. den JDBC-Connector) mitliefere, müßte ich die Software eigentlich unter GPL stellen. Oder zu unbezifferbaren* Preisen den Connector lizensieren. Das Problem ist keines, wenn man Postgres einsetzt. Ähnlich ist der Fall bei db4o - das wäre durchaus mal interessant, aber da die Kosten nicht kalkulierbar* sind, brauche ich damit gar nicht erst anzufangen, wenn ich nicht-GPL-Software erstelle.

* Ich hasse Software, wo der Preis Verhandlungssache ist. "Stellen Sie sich einfach mit ihrem Euter äh ihrer Brieftasche an die Melkmaschine. Wenn's weh tut, haben wir den Zielpreis erreicht."

Warum jetzt MYSQL bei gigantisch vielen Nutzern schlechter sein soll, als PostgreSQL ist mir auch nicht klar. Würde ja bedeuten, dass MYSQL irgendwie schlechter skaliert mit zunehmender Last. Eigentlich ist es eher so, dass MYSQL im allgemeinen schneller ist als PostgreSQL...je nach verwendeter Engine. MYISAM ist jedenfalls hölle schnell (allerdings ohneTransaktionssupport etc..).

Aber eine Datenbank ohne Transaktionssupport ... das setzt man doch nur ein, wenn die Daten keinen Wert haben oder read-only sind. Sicher, es gibt Leute, die FAT32-Dateisysteme für die System-Partition benutzen...

Soweit ich weiß, hat Postgres da ein besseres Modell zum Locking von Tabellen / Zeilen als MySQL (ich habe das mal vor einiger Zeit verglichen, kann sein, daß MySQL da inzwischen etwas weiter ist. Aber Tabellen-weites locking ist echt übel, wenn man viele Zugriffe hat.).

http://www.wikivs.com/wiki/MySQL_vs_PostgreSQL Beide DBs haben ihre Vor- und Nachteile.

gepostet vor 13 Jahre, 7 Monate von Forgotten

Nunja.

Es ist Ansichtssache, welches DBMS man verwendet.

Ich persönlich nutze auch MySQL und bin eigentlich sehr zufrieden damit.

gepostet vor 13 Jahre, 7 Monate von MrMaxx

Und das ist ein Problem, wenn man kommerzielle Software entwickelt, wo der Kunde eine Standalone-Lösung möchte.

Aber zum Glück befinden wir uns hier in einem Forum von und für Browserspieleentwickler. Und die haben dieses Problem im Allgemeinen nicht...also ist der Einwand hypothetisch.

Maxx

gepostet vor 13 Jahre, 7 Monate von dewarim

Original von MrMaxx

Und das ist ein Problem, wenn man kommerzielle Software entwickelt, wo der Kunde eine Standalone-Lösung möchte.

Aber zum Glück befinden wir uns hier in einem Forum von und für Browserspieleentwickler. Und die haben dieses Problem im Allgemeinen nicht...also ist der Einwand hypothetisch.

Maxx

Naja, es soll ja Fälle gegeben haben, wo jemand sein Browserspiel verkaufen oder lizensieren möchte. Oder wenn ich auf Basis meines Frameworks ein kommerzielles Spiel für jemanden erstelle. Wenn ich das Lizenzmodell von MySQL richtig verstehe, dann braucht man in dem Moment eine kommerzielle Lizenz - oder das Spiel muß Open Source mit einer kompatiblen Lizenz sein.

Im Normalfall (Hobbyprogrammierer, der seinen Code geheim hält) interessiert das keinen, aber im Streitfall, wo jemand einem erfolgreichem Browserspiel ans Bein pinkeln möchte... "Pssst, Oracle, da hat einer im Auftrag MyFreeFarm v3 programmiert und es benutzt MySQL!"

gepostet vor 13 Jahre, 7 Monate von DrakeL

Korrigier mich wenn ich falsch liege. Aber dein Spiel muss nicht GPL lizensiert sein weil du keine Bestandteile von MySQL in deinem Spiel verwendest. Du kommunizierst lediglich mit der Datenbank und da greift GPL nicht.

Anders sieht es bei den Datenbankschnittstellen aus. Die für PHP unterliegt nicht der GPL, dafür aber die von Java. Daher ist dein Spiel in Java geschrieben und bindet den Java Connector für MySQL ein (der unterliegt soweit ich noch weiss der GPL, zumindest tat er es als ich mich damit beschäftigt hatte) dann muss dein Spiel auch unter der GPL lizensiert sein bzw. du benötigst eine Kommerzielle Version des Java Connectors.

Hat aber mit der Datenbank an sich nichts zu tun.

gepostet vor 13 Jahre, 7 Monate von Drezil

Als wir uns in der Firma nach einer neuen Warenwirtschaft umgesehen haben, gab es auch ein Programm, dass mit MySQL arbeitete (alle anderen stellten das DBMS frei.. ). Da wollten die 5000 Euro im Jahr allein für die MySQL-Lizenz haben (die Software an sich hätte nur einen mittleren dreistelligen betrag gekostet).

Ich persönlich bevorzuge PostgreSQL, weil ich die BSD-Lizenz einfach sehr schön zu nutzen finde. Leider gibt es grade im Internetbereich wenig fertige Postgres-kompatible Software (Forum, Blog, CMS, ...). Da muss man immer schon etwas suchen.

gepostet vor 13 Jahre, 7 Monate von Kampfhoernchen

Was ist denn wenn ich eine Software so programmiere, dass der Kunde frei selbst konfigurieren kann, welche Datenbank er verwenden will, man nur die Möglichkeit bereit hält, diese DB zu nutzen?

Sprich eine Abstraktionsschicht, die je nach Konfiguration einen anderen JDBC-Treiber verwendet?

gepostet vor 13 Jahre, 7 Monate von Klaus

Ich werfe mal NoSQL in den Raum. Hat da schon jemand Erfahrungen mit gemacht?

gepostet vor 13 Jahre, 7 Monate von Forgotten

Original von Kampfhoernchen

Was ist denn wenn ich eine Software so programmiere, dass der Kunde frei selbst konfigurieren kann, welche Datenbank er verwenden will, man nur die Möglichkeit bereit hält, diese DB zu nutzen?

Sprich eine Abstraktionsschicht, die je nach Konfiguration einen anderen JDBC-Treiber verwendet?

Ja, das müsste schon gehen.

Dann werden halt statt z.B. den eigens programmierten MySql - Query-, Insert-, Update-, etc. Klassen andere eigens programmierte Klassen benutzt.

Machen ja einige bekannte CMS Systeme oder auch Foren-Systeme.

gepostet vor 13 Jahre, 7 Monate von TheUndeadable

> Aber dein Spiel muss nicht GPL lizensiert sein weil du keine Bestandteile von MySQL in deinem Spiel verwendest. Du kommunizierst lediglich mit der Datenbank und da greift GPL nicht.

Für PHP gibt es hier eine Ausnahme,

aber wenn du den MySQL-Connector für .Net/Java/etc nutzt, so greift die GPL doch, da schon der MySQL-Connector selbst unter die GPL fällt und den bindest du in dein Projekt ein.

Die GPL bei MySQL ist wie ein Damokles-Schwert, das jeden Tag auf diejenigen fallen kann, die MySQL nutzen, aber nicht wollen, dass ihr Produkt OpenSource wird. Oracle kann von heute auf morgen definieren, dass der PHP-Connector nun auch mit der vollen Wucht der GPL-Lizenz auf die PHP-Projekte einschlägt.

MySQL zu nutzen ist wie eine Leiche im Keller. Nutzt einfach Datenbank, die kein solch krasses Lizenz-Risiko in sich tragen. Beispielsweise PostgreSQL oder MS SQL (Die kostenlose Express Edition unterstützt Datenbanken bis 10 GB). Im Regelfall würde ich PostgreSQL nutzen.

MS SQL kostet in den größeren Versionen zwar Geld (meines Erachtens nach zuviel Geld), aber man hat keine Leiche im Keller, die eines Tages entdeckt wird und man sein komplettes Software-Produkt unter dem Virus der GPL stellen muss und damit veröffentlichen.

gepostet vor 13 Jahre, 7 Monate von Forgotten

Ich errinnere mich, gelesen zu haben, dass man in einer Vergabe einer Variablen mehrere Queries ausführen kann, sprich $con = // Tabelle 1; Tabelle 2

Das stellt für mich ein erhöhtes SQL-Injections Riski dar.

Ich kann mich natürlich auch irren und lasse mich dann gerne eines Besseren belehren ;).

gepostet vor 13 Jahre, 7 Monate von DrakeL

Original von Kampfhoernchen

Was ist denn wenn ich eine Software so programmiere, dass der Kunde frei selbst konfigurieren kann, welche Datenbank er verwenden will, man nur die Möglichkeit bereit hält, diese DB zu nutzen?

Sprich eine Abstraktionsschicht, die je nach Konfiguration einen anderen JDBC-Treiber verwendet?

Dann muss der Anwender der den Java MySQL Connector nutzen möchte die Lizenzkosten tragen oder kann den Connector nicht nutzen. Zumindest habe ich es so verstanden, kann höchstens sein dass die JDBC Sachen da noch Ausnahmen beinhalten.

Original von TheUndeadable

Die GPL bei MySQL ist wie ein Damokles-Schwert, das jeden Tag auf diejenigen fallen kann, die MySQL nutzen, aber nicht wollen, dass ihr Produkt OpenSource wird. Oracle kann von heute auf morgen definieren, dass der PHP-Connector nun auch mit der vollen Wucht der GPL-Lizenz auf die PHP-Projekte einschlägt.

Können sie für die zukünftigen Versionen des PHP Connectors ja. Ob sie sich damit einen Gefallen tun ist eine andere Frage.

MySQL zu nutzen ist wie eine Leiche im Keller. Nutzt einfach Datenbank, die kein solch krasses Lizenz-Risiko in sich tragen. Beispielsweise PostgreSQL oder MS SQL (Die kostenlose Express Edition unterstützt Datenbanken bis 10 GB). Im Regelfall würde ich PostgreSQL nutzen.

MS SQL kostet in den größeren Versionen zwar Geld (meines Erachtens nach zuviel Geld), aber man hat keine Leiche im Keller, die eines Tages entdeckt wird und man sein komplettes Software-Produkt unter dem Virus der GPL stellen muss und damit veröffentlichen.

Es gibt keine Leiche im Keller, die Lizenzen sind klar definiert und für die aktuellen Versionen lassen sie sich auch kaum noch ändern, wenn dann für zukünftige Versionen. Und wer seine Software Datenbankunabhängig aufbaut kann schnell wechseln, der Rest müsste dann du einem MySQL Ableger wechseln, zum Beispiel Maria DB. Das kann dir bei jeder Open Source Software passieren wo eine Firma dahinter steckt, und das sind so ziemlich viele.

gepostet vor 13 Jahre, 7 Monate von MrMaxx

Ich kann in meinem Browsergame, das in Java geschrieben ist den unter der GPL stehenden Mysql-Connector benutzen. Solange ich nicht vor habe irgendwelche Kopien des Spiel zu verkaufen, also den unter der GPL stehen Code zu verbreiten, habe ich nichts zu befürchten.

Solange bin ich weder gezwungen meinen eigenen Quellcode zu veröffentlichen, noch den des Connectors, selbst wenn ich Änderunge an seinem Quelltext vornehme. Ich kann damit eigentlich machen, was ich will.

Anders sieht es aus, wenn ich dann die Software vertreiben oder anderweilig verbreiten will. Hier muss ich dann aufpassen und mir ganz genau anschauen, ob das Copyleft eines GPL Programms auf mich zutrifft.

Sollte hier jemand vorhaben sein Spiel zu verkaufen, dann ist es angebraucht wie Kampfhörchen schon erwähnte eine Abstraktionsschicht (wie z.B. einen beliebigen OR-Mapper) zu benutzen, der es dem Benutzer freistellt, welche Datenbank er benutzt. Ausgeliefert wird die Software dann eben ohne.

Solange ihr eine Einzellösung programmiert, die nicht vertrieben wird (was die meisten Browsergames ja nunmal sind), gibt es garkeine Probleme...und auch kein Damoklesschwert, das irgendwo baumelt.

Maxx

gepostet vor 13 Jahre, 7 Monate von DrakeL

Original von MrMaxx

Solange bin ich weder gezwungen meinen eigenen Quellcode zu veröffentlichen, noch den des Connectors, selbst wenn ich Änderunge an seinem Quelltext vornehme. Ich kann damit eigentlich machen, was ich will.

Deine Software muss trotzdem unter der GPL stehen oder nicht?

Das stört dich nicht wenn sie eh nicht weitergibst. Das stört dich aber spätestens wenn nochandere Leute im Team hast und die Software irgendwie nach aussen verbreitet wird, denn dann kann sie jeder nutzen ohne dass du etwas unternehmen kannst.

gepostet vor 13 Jahre, 7 Monate von MrMaxx

Du hast dein Browsergame und in diesem linkst du gegen diverse Bibliotheken. Jede dieser Bibliotheken benutzt zu als Lizenznehmer unter ihrer jeweiligen Lizenz.

Du schreibst dein deinen eigenen Code, an dem du ALLE Rechte besitzt. Hier greift erstmal das Urheberrecht.

Sobald du einer anderen Person deine Software (also das gesamte Paket mit allen sich darin befindlichen Bibliotheken) verfügbar machen willst (sei es durch Verkauf oder sonstiges), so geschieht dies unter einer bestimmten Lizenz. Verwendest du GPL Software, so sagt diese, dass du sie nur unter bestimmten Bedingungen benutzen (und dann auch abändern) darft. Eine der Bedingungen ist das starke Copyleft, der virale Charakter, der dich zwingt beim Verbreiten deiner Software dies ebenfalls unter der GPL zu machen.

Dabei kann es zu Komplikationen kommen, wenn du Bibliothen benutzt, die unter Lizenzen stehen, die nicht miteinander kompatibel sind. Ob dies bei dir der Fall ist kannst du unter http://www.gnu.org/licenses/license-list.html nachlesen. Hier ist für die gängigsten Lizenzen aufgeführt, ob sie kompatibel zur GPL sind oder nicht.

Das bedeutet, jedoch nicht, dass du dir nicht jederzeit überlegen kannst deine Software unter eine andere Lizenz zu stellen. Lass einfach die GPL-Bibliotheken raus und benutz irgendeine Proprietäre "IchMeinsMeinsMeins"-Lizenz. Nochmal zur Erinnerung: Du brauchst musst erst eine Lizenz wählen, wenn es überhaupt einen Lizenznehmer gibt...also einen wie auch immer geratenen Kunden (der die Software kaufen will...das ist nicht der Spieler deines Spieles).

Das stört dich aber spätestens wenn nochandere Leute im Team hast und die Software irgendwie nach aussen verbreitet wird

Dann hast du ein anderes Problem, nämlich, dass ohne deine Zustimmung Code verbreitet wird, an dem allein du die Rechte besitzt (mit seinem Code kann er allerdings machen, was er will). Es gibt hier keinen Lizenznehmer, dem du rechenschaft schuldig bist, also können auch die Regeln GPL nicht zum Tragen kommen. Ich würd mir eher mal überlegen ob du gegen die entsprechende Person rechtliche Schritte einleitest.

Ich hoffe das hat ein wenig Licht in die Sache gebracht und einigen hier du "Angst" vor dem Einsatz von GPL Software genommen.

Maxx

P.S.: Das war keine Rechtberatung und ich bin auch kein Anwalt...lest euch den Scheiss selber nochmal durch, wenn ihr gaaanz sicher sein müsst.

gepostet vor 13 Jahre, 7 Monate von TheUndeadable

Solange ihr eine Einzellösung programmiert, die nicht vertrieben wird (was die meisten Browsergames ja nunmal sind), gibt es garkeine Probleme...und auch kein Damoklesschwert, das irgendwo baumelt.

Und sobald man es vertreiben möchte... KATSCHUNG! War doch alles so schön kostenlos... und dann auch umsonst.

gepostet vor 13 Jahre, 7 Monate von DrakeL

Original von TheUndeadable

Und sobald man es vertreiben möchte... KATSCHUNG! War doch alles so schön kostenlos... und dann auch umsonst.

Na wie gut dass das die PHP Entwickler (die wohl die Hauptwender von MySQL sein dürften schätzungsweise) da keine Angst haben brauchen, da es den PHP Connector nicht betrifft. :)

gepostet vor 13 Jahre, 7 Monate von tict4c

Würde es nicht auch gehen, wenn man alles so programiert, das der Käufer den Connector einbindet, der aber im verkauften Code nicht vorkommt, weil man alle Querrys an eine Zentrale Funktion schickt die den Connector einbindet und das ergebnis zurückgibt.

Beim Verkauf würde man dann den Bereich rausnehmen, bei dem der Connector eingebunden wird und evtl nur eine Anleitung dazu geben wie der Connector wider eingebunden werden kann.

gepostet vor 13 Jahre, 7 Monate von dewarim

Original von tict4c

Würde es nicht auch gehen, wenn man alles so programiert, das der Käufer den Connector einbindet, der aber im verkauften Code nicht vorkommt, weil man alle Querrys an eine Zentrale Funktion schickt die den Connector einbindet und das ergebnis zurückgibt.

Beim Verkauf würde man dann den Bereich rausnehmen, bei dem der Connector eingebunden wird und evtl nur eine Anleitung dazu geben wie der Connector wider eingebunden werden kann.

Wenn du das z.B. über Hibernate & eine Config-Datei machst, sollte das gehen.

gepostet vor 13 Jahre, 7 Monate von TheUndeadable

Original von tict4c

Würde es nicht auch gehen, wenn man alles so programiert, das der Käufer den Connector einbindet, der aber im verkauften Code nicht vorkommt, weil man alle Querrys an eine Zentrale Funktion schickt die den Connector einbindet und das ergebnis zurückgibt.

Beim Verkauf würde man dann den Bereich rausnehmen, bei dem der Connector eingebunden wird und evtl nur eine Anleitung dazu geben wie der Connector wider eingebunden werden kann.

 Wenn du dich auf dein Konstrukt verlassen möchtest, geht es bestimmt.

Ich bevorzuge aber lieber sichere Szenarien.

Jedem das Seine.

gepostet vor 12 Jahre, 6 Monate von sukchart

Ich habe auch MySQL im einsatz. Wenn man dazu eine effektive Datenhaltung, gestützt durch Memcache, einsetzt, kann man auch aus einem kleinen Server eine Menge raus holen.

Auf diese Diskussion antworten