Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Open Source DBMS
Lord Hessia
myCSharp.de - Member



Dabei seit:
Beiträge: 497
Herkunft: Gießener Umland

Themenstarter:

Open Source DBMS

beantworten | zitieren | melden

Ich habe gearde gelesen, dass MySQL für kommerzielle Nutzung nicht kostenfrei ist. Es gibt ja noch jede Menge anderer Open Source DBMS. Ich bin bereits nach kurzer Suche zu der Liste PostgreSLQ, Firebird, Derby (nur für Java?) und Ingres gekommen, so dass es doch kein Problem sein sollte, auchein kostenfreies DBMS mit Qualität zu finden. Habt ihr schon Erfahrungen mit den genannten oder noch anderen Open Source Datenbankmanagementsystemen? Mich würden dabei folgende Punkte besonders interessieren:
- Performance (besonders bei Updates)
- Einfache Installation (der Komfort bei der Administration ist dagegen relativ egal)
- Ansprechbar über ODBC (dürfte ja ohnehin für jedes gelten)
- SQL-Standard-Konform (bzw. welche Abweichungen gibt es - ich will eh keine abgefahrenen Sachen machen)

Es wäre super, wenn sich hier ein paar Meinungen einfinden würde.

Gruß Flo
Sarkusmus ist, wenn nichts mehr hilft, außer Lachen.
private Nachricht | Beiträge des Benutzers
MagicAndre1981
myCSharp.de - Member

Avatar #avatar-2623.jpg


Dabei seit:
Beiträge: 913
Herkunft: Nordhausen

beantworten | zitieren | melden

Zitat
Original von Lord Hessia
Habt ihr schon Erfahrungen mit den genannten oder noch anderen Open Source Datenbankmanagementsystemen? Mich würden dabei folgende Punkte besonders interessieren:

Firebird ist schön. Nutze ich schon lange.

- Performance (besonders bei Updates)

ist sehr gut.

- Einfache Installation (der Komfort bei der Administration ist dagegen relativ egal)

sehr einfach und schnell und braucht kaum Speicherplatz. Administrieren brauchst du den FB auch nicht, da keine Log-Dateien geschrieben werden und der Server-Prozess von einen Guardian überwacht wird und fals der Server abraucht startet der Guardian ihn neu

- Ansprechbar über ODBC (dürfte ja ohnehin für jedes gelten)

Hmm, sollte es geben, aber nimm lieber den managed .NET Provider, der ist cool 8)

- SQL-Standard-Konform (bzw. welche Abweichungen gibt es - ich will eh keine abgefahrenen Sachen machen)

Sieht gut aus. Der FireBird hält sich, im Gegensatz zu MySQL, an SQL92. SQL99 wird soweit auch komplett unterstützt.

Lies dich einfach mal durch diese Seite, da gibts alles was du brauchst:

Datenbank-Server, Provider etc:
http://www.ibphoenix.com/main.nfs?a=ibphoenix&o=main

André
private Nachricht | Beiträge des Benutzers
regen
myCSharp.de - Member



Dabei seit:
Beiträge: 498

beantworten | zitieren | melden

Hallo,
habe mir auch mal firebird angeschaut jedoch bin ich da nicht wirklcih weitergekommen wie ich Datenbanken anlege, Rechte vergebe usw.
Gibt es dafür auch so etwas wie das Management Studio für den Sql Server 2005?
private Nachricht | Beiträge des Benutzers
kiar
myCSharp.de - Member



Dabei seit:
Beiträge: 232
Herkunft: Sachsen Anhalt

beantworten | zitieren | melden

moin,

schau dir mal die personal von IBExpert an.

raik
private Nachricht | Beiträge des Benutzers
Lord Hessia
myCSharp.de - Member



Dabei seit:
Beiträge: 497
Herkunft: Gießener Umland

Themenstarter:

beantworten | zitieren | melden

Ich habe mir nach Deiner Empfehlung mal Firebird angesehen, aber ich fand es alles andere als leicht zu bedienen. Ich habe ne Stunde gebraucht, herauszufinden, wie ich mich anmelde (ok, mag auch daran gelegen haben, dass ich nicht richtig gelesen habe, da es ja eigentlich in der umfangreichen Doku beschrieben war, wie es geht. Aber eine Schnellanleitung, die beschreibt, wie man sich anmeldet und die erste Tabelle anlegt wäre schon nicht verkehrt).
Die SQL-Konformität ist ja super, aber dass es kein auto increment gibt, das ist schon blöd.
Die Konsole ist ja eher ein Krampf z.B. um ne Tabelle anzulegen (vor allem wenn sie 25 Spalten hat :-)). Ok, es gibt auch grafische Tools, die auch auf der Webseite von Firebird aufgeführt sind, aber es sind derart viele, dass man als Anfänger völlig verloren ist. Nachdem ich dann ein nettes runtergeladen hatte und ich nach ewigem probieren festgestelllt habe, dass das offenbar gar keine Tabellen anlegen kann, da habe ich die Geduld verloren und mir mal PostgreSQL angesehen.

Und da muss ich sagen, das ist wirklich einfach zu bedienen. Ok, die Silent-Installation, die ich gerne nutzen würde, da man diese einfach bei der Installation des Programms automatisch mit aufrufen könnte, die wurde jedes Mal mit einer kryptischen Fehlermeldung abgebrochen. Aber die normale Installation hat problemlos geklappt. Dass man die DB nicht als Applikation starten darf, wenn man Admin ist, das halte ich für etwas über das Ziel (möglichst hohe Sicherheit) hinausgeschossen und Bevormundung des Nutzers, aber sonst gibt's wenig zu meckern. Nur eins sollte man nie machen: Großbuchstaben in Namen von Tabellenspalten verwenden!!!

Kurzum: Ich werde wohl in Zukunft PostgreSQL verwenden, nicht zuletzt weil es die durchschaubarere Lizenz bietet.
Sarkusmus ist, wenn nichts mehr hilft, außer Lachen.
private Nachricht | Beiträge des Benutzers
BerndFfm
myCSharp.de - Team

Avatar #gvp27cjXxMEZQuCpk4WQ.jpg


Dabei seit:
Beiträge: 3737
Herkunft: Frankfurt a.M.

beantworten | zitieren | melden

MySQL ist auch für kommerzielle Nutzung kostenfrei.

Grüße Bernd Quambusch

PS.: MySQL betreibt Dual Licensing. Es gibt eine kostenfreie Variante und eine lizensierte mit Updates und Hotline, die was kostet.
Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3
private Nachricht | Beiträge des Benutzers
regen
myCSharp.de - Member



Dabei seit:
Beiträge: 498

beantworten | zitieren | melden

Bin mir nicht sicher, aber ist es nicht so, dass MySQL nur dann was kostet, wenn du es mit deiner Anwendung auslieferst, wenn jedoch der Nutzer sich selbst Mysql besorgt es kostenfrei ist?
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 10072

beantworten | zitieren | melden

@BerndFfm:

Wo ist das denn her?

In der Lizenz auf der Seite von MySql steht eindeutig das jede nicht OpenSource
software eine Lizenzt erfordert:
http://www.mysql.com/company/legal/licensing/commercial-license.html
Zitat
When your application is not licensed under either the GPL-compatible Free Software License as defined by the Free Software Foundation or approved by OSI, and you intend to or you may distribute MySQL software, you must first obtain a commercial license to the MySQL product.

Wo bitte ist hier eine kostenlose kommerzielle Nutzung erlaubt?
private Nachricht | Beiträge des Benutzers
MagicAndre1981
myCSharp.de - Member

Avatar #avatar-2623.jpg


Dabei seit:
Beiträge: 913
Herkunft: Nordhausen

beantworten | zitieren | melden

Zitat
Original von Lord Hessia
Die SQL-Konformität ist ja super, aber dass es kein auto increment gibt, das ist schon blöd.

AutoIncrement ist ein Schrott von MySQL und MS (Identity). Bei FireBird gibts da Generatoren, die sich so ähnlich wie Sequences in Oracle, verhalten.
Zitat
Original von Lord Hessia
Ok, es gibt auch grafische Tools, die auch auf der Webseite von Firebird aufgeführt sind, aber es sind derart viele, dass man als Anfänger völlig verloren ist.

IBExpert Personal . Das Ding ist spitze.
Zitat
Original von Lord Hessia
Nachdem ich dann ein nettes runtergeladen hatte und ich nach ewigem probieren festgestelllt habe, dass das offenbar gar keine Tabellen anlegen kann, da habe ich die Geduld verloren und mir mal PostgreSQL angesehen.

Kann ich nicht bestätigen. Hast du danach auch ein Commit gemacht? Wlches Tool hast ud verwendet?
Zitat
Original von Lord Hessia
Kurzum: Ich werde wohl in Zukunft PostgreSQL verwenden, nicht zuletzt weil es die durchschaubarere Lizenz bietet.

Hat der FB doch auch Du kannst ihn einsetzen wie du willst, ohne was zu blechen
private Nachricht | Beiträge des Benutzers
Lord Hessia
myCSharp.de - Member



Dabei seit:
Beiträge: 497
Herkunft: Gießener Umland

Themenstarter:

beantworten | zitieren | melden

Zitat
AutoIncrement ist ein Schrott von MySQL und MS (Identity). Bei FireBird gibts da Generatoren, die sich so ähnlich wie Sequences in Oracle, verhalten.
Wieso Schrott? Ich finde sehr einfach, einer ID-Spalte einfach die Eigenschaft auto increment zu geben und gut ist es. Ok, ich habe nicht die Möglichkeit, die Schrittweite einzustellen und was weiß ich was diese Generatoren können, aber wozu auch?
Zitat
Zitat
Original von Lord Hessia
Ok, es gibt auch grafische Tools, die auch auf der Webseite von Firebird aufgeführt sind, aber es sind derart viele, dass man als Anfänger völlig verloren ist.
IBExpert Personal . Das Ding ist spitze.
Ok, wurde ja weiter oben schon einmal erwähnt und ist wohl einen Test wert.
Zitat
Zitat
Original von Lord Hessia
Nachdem ich dann ein nettes runtergeladen hatte und ich nach ewigem probieren festgestelllt habe, dass das offenbar gar keine Tabellen anlegen kann, da habe ich die Geduld verloren und mir mal PostgreSQL angesehen.
Kann ich nicht bestätigen. Hast du danach auch ein Commit gemacht? Wlches Tool hast ud verwendet?
Wie gesagt, es hatte einfach keine Möglichkeit geboten, eine Tabelle anzulegen. Kein "new table" oder so. wenn ich mich nicht irre, dann hieß das Tool FeniSQL.
Zitat
Zitat
Original von Lord Hessia
Kurzum: Ich werde wohl in Zukunft PostgreSQL verwenden, nicht zuletzt weil es die durchschaubarere Lizenz bietet.
Hat der FB doch auch Du kannst ihn einsetzen wie du willst, ohne was zu blechen
Genau das habe ich versucht herauszufinden. Da ich die einzelnen Lizenztexte immer etwas kompliziert finde, habe ich mich über google etwas über die IPL schlau gemacht und z.B. auf gnu.org wird eher von ihr abgeraten: http://www.gnu.org/philosophy/license-list.html
Postgre stattdessen verwendet die BSD und diese besagt ja im Prinzip nur, dass man die Lizenzhinweise der verwendeten Software nicht entfernen darf.
Sarkusmus ist, wenn nichts mehr hilft, außer Lachen.
private Nachricht | Beiträge des Benutzers
kiar
myCSharp.de - Member



Dabei seit:
Beiträge: 232
Herkunft: Sachsen Anhalt

beantworten | zitieren | melden

moin,

habe mal auf die schnelle ne DB erstellt und dorthin verbunden und schon habe ich die Möglichkeit, alles einzustellen .


verstehe ich nicht, das du keine neue Tabelle anlegen konntest.

nimm dir IBExpert mal richtig zur Brust

raik
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 10072

beantworten | zitieren | melden

Wenn die Gralshüter der GNU eine Lizenz nicht annehmen, heisst das noch lange nichts.

Die hätten es am liebsten, wenn niemand für SW etwas bezahlen müsste.
private Nachricht | Beiträge des Benutzers
MagicAndre1981
myCSharp.de - Member

Avatar #avatar-2623.jpg


Dabei seit:
Beiträge: 913
Herkunft: Nordhausen

beantworten | zitieren | melden

Zitat
Original von Lord Hessia
Zitat
Hat der FB doch auch Du kannst ihn einsetzen wie du willst, ohne was zu blechen
Genau das habe ich versucht herauszufinden.

Do I have to pay anything to use Firebird or distribute it with my application software?

No, there is nothing to pay. If you would like to contribute some cash, you can become a member of the FirebirdSQL Foundation and play your part in keeping the progress of new code development moving forward strongly.
private Nachricht | Beiträge des Benutzers
BerndFfm
myCSharp.de - Team

Avatar #gvp27cjXxMEZQuCpk4WQ.jpg


Dabei seit:
Beiträge: 3737
Herkunft: Frankfurt a.M.

beantworten | zitieren | melden

Fzelle : Mit kommerzieller Nutzung meinte ich MySQL in einer Firma einzusetzen.

Die Datenbank mit einem eigenen Produkt auszuliefern und dafür Geld zu verlangen ist mit der kostenlosen mySQL Version nicht erlaubt.

Da muss der Kunde sich die DB selbst besorgen.

Grüße Bernd
Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 10072

beantworten | zitieren | melden

Das ist ein weit verbreiteter Irrtum.

Sobald eine nicht Opensource anwendung in einem kommerziellen Umfeld
eingesetzt wird, ist eine Lizenz zu erwerben.

Lies Dir bitte die Lizenzbedinguingen dich ich gepostet habe genau durch.
private Nachricht | Beiträge des Benutzers
MagicAndre1981
myCSharp.de - Member

Avatar #avatar-2623.jpg


Dabei seit:
Beiträge: 913
Herkunft: Nordhausen

beantworten | zitieren | melden

Zitat
Original von Lord Hessia
Kurzum: Ich werde wohl in Zukunft PostgreSQL verwenden...

Dass muss ich nun auf Kundenwunsch auch. Gibt es gute Bücher zu PostgreSQL 8.x?
private Nachricht | Beiträge des Benutzers
cadi
myCSharp.de - Member

Avatar #avatar-1786.jpg


Dabei seit:
Beiträge: 308
Herkunft: Hamburg

beantworten | zitieren | melden

Noch eine kleine Information zu FB.

Es gibt eine embedded Version für .NET.
Embedded heisst, keine Installation. Einfach ein paar Dateien ins Bin-Verzeichnis kopieren und mann hat eine vollständiges Datenbanksystem.

FB ist auf jeden Fall besser als MySQL (PostgreSQL und Informix und eigentlich fast jedes andere RDBMS).
Auch wenn es für MySQL mehr grafische Tools geben sollte, ist die Leistung von FB deutlich besser. IBExpert ist wirklich ein gutes Tool.
private Nachricht | Beiträge des Benutzers
schrotty
myCSharp.de - Member



Dabei seit:
Beiträge: 34

beantworten | zitieren | melden

Ich nutze FB 1.5 jetzt auch schon länger. Bei einem neuen Projekt bin ich aber am überlegen, ob ich nicht eventuell auf SQL Server Express umsattle.


Kann einer mal generell eine Aussage zu der Performance der beidern machen, oder anders ausgesrückt: Welche Gründe würden gegen oder für den Einsatz von SQL Express von MS im Vergleich mit FB 1.5 bzw. 2.0 sprechen, aber bitte Fakten und keinen Glaubenskrieg. Klar, einige offensichtliche Punkte wurden schon in diesem Thread genannt, aber vielleicht gibt es ja noch andere Gesichtspunkte.
private Nachricht | Beiträge des Benutzers
cadi
myCSharp.de - Member

Avatar #avatar-1786.jpg


Dabei seit:
Beiträge: 308
Herkunft: Hamburg

beantworten | zitieren | melden

Hallo schrotty,

Die Performance würde ich für vergleichbar halten.
Aber es gibt eine Menge anderer Faktoren die entscheidend sein können:

1. Desktop- oder Server-Applikation
Auf dem Desktop würde ich immer Firebird bevorzugen, da die installation sehr viel schlanker als die der MSDE (immerhin 70MB alleine das Setup) ist. Für den User sind die spezifischen features eher uninteressant.
Bei einer Serverinstallation ende ich meistens bei einem SQL-Server oder der MSDE. Vorallem, wenn in der bestehenden Infrastruktur bereits SQL-Server vorhanden sind. Damit hat man den Vorteil, das die vorhandenen (DB-) Admins sich um Backups und die Pflege der Datenbank kümmern können (bei "exoten" wie Firebird bleibt das Risiko sonst häfig beim Hersteller der Software. Das kann sehr unscön werden)

2. Benötigte Features
Firebird hat eigentlich alles, was man braucht - bis hin zur Möglichkeit es um eigenen Funktionen zu erweitern.
Der SQL-Server (2005) hat aber so schöne Dinge wie den Reporting-Server und ebenfalls Möglichkeit eigene Funktionen einzubinden (per .NET), das aber viel einfacher als bei Firebird.

3. SQL-Dialekt
Die meisten SQL-RDBMS unterstützen zwar ANSI-SQL aber die Syntax von Stored-Procedures und speziellen Typen kann sehr nervig sein, wenn man von einem System auf ein anderes umsteigt.
Wenn mann z.B. von MS-SQL auf Firebird umsteigt wird man erstmal einige zeit googlen um autoinkremetielle Felder definieren zu können.
Wenn man von MySQL auf Oracle umsteig wird mann im ersten Projekt wohl kaum PL/SQL soweit beherrschen, das man eine schöne Lösung hinbekommt. Erfahrungen müssen halt auch gemacht werden.

4. GUI Tools
MS-Sql hat geniale Tools zum Verwalten und Entwickeln von Datenbanken (Ein debugger für Stored Procedures ist schon was geniales).
Auch wenn es für MySQL, Oracle, Firebird etc. ähnlich gute Tools gibt, kosten die, die einen wirklich helfen ordentlich Geld. Wenn man allerdings damit leben kann alle seine Tabellen in plain SQL zu erstellen kann man das vernachlässigen (aber erfahrungsgemäß spart ein visuelles Tool da schon eine Menge Zeit)

5. Kosten
Das sind zum einen die Lizenzkoste, dann die Kosten für Entwicklertools und letztlich auch die Wartungskosten. In rechnenzentren kann es durchaus sein, das das Hosten von Datenbanken unterschiedlic teuer ist (oder garnicht unterstützt wird und der kunde/entwicklier sich selbst drum kümmern muss)
Ausserdem kann es teuer werden, wenn man mehr performance braucht und CPUs nachrüsten muss oder ähnliches. (Lizenz pro CPU war mal sehr beliebt)

Fazit:
Mit RDBMS ist es wie mit Programmiersprachen: Es gibt nicht DIE BESTE, sondern nur die BESTE FÜR DEN JOB.
Und das ist eine komplexe Entscheidung. Wenn Geld keine Rolle spielt und der Kunde keinen Ideologischen Probleme mit Microsoft hat (wird er wohl nicht, da wir hier in einen C#-Forum sind) würde ich wahrscheinlich MS-SQL bevorzugen.
Trotzdem Plane ich gerade ein (Desktop-)Projekt mit Firebird
private Nachricht | Beiträge des Benutzers
MagicAndre1981
myCSharp.de - Member

Avatar #avatar-2623.jpg


Dabei seit:
Beiträge: 913
Herkunft: Nordhausen

beantworten | zitieren | melden

Zitat
Original von MagicAndre1981
Dass muss ich nun auf Kundenwunsch auch. Gibt es gute Bücher zu PostgreSQL 8.x?

*push*
Hat niemand eine Idee?
private Nachricht | Beiträge des Benutzers
Lord Hessia
myCSharp.de - Member



Dabei seit:
Beiträge: 497
Herkunft: Gießener Umland

Themenstarter:

Bücher nötig?

beantworten | zitieren | melden

Ich weiß natürlich nicht wie tief Du in die Materie einsteigen musst, aber mir hat die Online-Doku auf der Postgresql-Seite alle Fragen beantwortet.
Die haben auch eine Bücherübersicht http://www.postgresql.org/docs/books/
Sarkusmus ist, wenn nichts mehr hilft, außer Lachen.
private Nachricht | Beiträge des Benutzers