Frage

Ich habe auf einer Vielzahl von Systemen als Programmierer gearbeitet, teilweise mit Oracle, einige mit MySQL. Ich höre immer wieder Leute sagen, dass Oracle stabiler, robuster und sicherer zu machen. Ist dies der Fall ist?

Wenn ja, auf welche Weise und warum?

Für die Zwecke dieser Frage, sollten Sie eine kleine und mittlere Produktion DB, vielleicht 500.000 Datensätze oder so.

War es hilfreich?

Lösung

Ja. Oracle ist Enterprise-Klasse-Software.

Ich bin mir nicht sicher, ob seine wirklich nicht mehr stabil, dass mysql, habe ich nicht verwendet mysql so viel, aber ich nicht erinnern, jemals mysql Absturz auf mich zu haben. Ich habe Oracle Crash hatte, aber wenn es funktioniert, es gibt mir mehr Informationen darüber, warum es abgestürzt ist, als ich es könnte möglicherweise möchten, und Oracle-Unterstützung ist immer da (gegen Gebühr) zu helfen.

Es ist sehr sehr robust, wird Oracle DB alles tun, praktisch kann es vor Ihren Daten zu brechen, habe ich MySQL-Server habe Dinge wirklich seltsam, wenn sie nicht genügend Speicherplatz laufen, Oracle wird halt nur alle Transaktionen, und schließlich Abschaltung bei es können die Dateien nicht schreiben sie braucht. Ich habe nie verloren Daten in Oracle, auch wenn ich tun dumme Dinge vergessen wie die where-Klausel und aktualisieren jede Zeile statt einer einzelnen Zeile, es ist sehr einfach, die Datenbank zu erhalten zurück, wie es war, bevor vermasseln.

Nicht sicher Sicherheit, sicher Oracle bietet Ihnen viele Möglichkeiten, wie Sie mit dem DB verbunden werden sollen und authentifizieren. Es gibt viele Möglichkeiten in Bezug auf die Benutzer Zugriff haben, was, etc. Aber wie bei den meisten Dingen, wenn Sie ernst nehmen Sicherheit wollen, dann müssen Sie ein Experte, es zu tun. Oracle hat sicherlich viel mehr zu verlieren, wenn sie die Sicherheit nicht richtig. Aber wie bei allen Dingen hat es Exploits.

Wenn nichts anderes, man denke nur an das ... Wenn Oracle stopft auf, sie haben Kunden, die $ 40k pro CPU zahlen (wenn sie Saugern und zahlen Listenpreis) Lizenz + jährliche Wartungsgebühren .. Dies gibt ihnen eine sehr stark intensiv um sicherzustellen, dass die Kunden mit dem Produkt zufrieden sind.

Für eine kleine Datenbank, würde ich ernsthaft vor mysql Oracle XE gut empfehlen. Es hat die wichtigsten Features von MySQL (Free), seine Toten einfach zu installieren, kommt mit einem netten Web-Interface und Anwendungs-Framework (Application Express), wenn Sie die DB glücklich laufen auf einer einzigen CPU, 1 GB RAM und 4 GB Daten, dann XE ist der Weg IMHO zu gehen.

Mysql seine Verwendungen hat, haben viele, viele Menschen gezeigt, dass man mit ihm große Dinge bauen kann, aber seine weit hinter Oracle (und SQL Server und DB2) in Bezug auf die Funktionen ... Aber dann, es ist auch kostenlos und sehr lernen leicht zu, was für viele Menschen ist das wichtigste Merkmal.

Andere Tipps

Ich habe Oracle eine beschädigte Datenbank erstellen, wenn die Platte aus dem Raum läuft. Es ist schwer zu debuggen, nutzt Lasten der Ressourcen und ist schwierig, mit zu arbeiten, ohne ernsthaft erfahrenen DBA der Hand zu halten. Oracle selbst ersetzt Systembinärdateien (zum Beispiel gcc) in / usr / bin /, wenn ich auf einem occation installiert.

Arbeiten mit PostgreSQL, auf der anderen Seite hat sich viel angenehmer gewesen. Es gibt lesbare Fehlermeldungen und wirkt in verständlicher Art und Weise, wenn Sie es gewohnt sind mit Open-Source-* nix-Systemen zu arbeiten. Es ist ganz einfach Replikation einzurichten, damit Ihre Daten ziemlich sicher zu machen.

Eine 500K Rekord-Datenbank kann wahrscheinlich auf Ihrem Mobiltelefon ausgeführt werden. Im Ernst, es ist so klein, dass sowohl Oracle XE und MySQL mehr als ausreichend sein werden, um es zu verwalten.

  • für kleinere DBs (ein paar Millionen Datensätze), Oracle ist Overkill
  • Sie benötigen einen erfahrenen DBA für die korrekte Installation und Verwaltung einer Oracle-System
  • Oracle hat eine größere „Basis-Overhead“, das heißt Sie benötigen eine beefier Maschine Oracle ausführen
  • die „out of the box“ Erfahrung von Oracle verwendete scheußlich zu sein (ich habe ein Oracle-System seit Jahren nicht mehr installiert, ohne zu wissen, wie es sich verhält zur Zeit), während mysql ist sehr schön

Oracle ist ein Tier, das wirklich DBA Wissen braucht. Ich stimme mit denen, die sagen, 500k Aufzeichnungen nichts sind. Es ist nicht die Komplexität von Oracle wert, wenn es einfache numerischen / Textdaten sind.

Auf der anderen Seite, ist Oracle äußerst effizient mit Blobs. Wenn jede Ihrer Aufzeichnungen eine 100MB Binärdatei war, würden Sie ein Vermögen benötigen sie auf Oracle laufen (Ich hätte gerne ein 3-Knoten RAC-Cluster mit einem guten SAN empfehlen).

Ich habe ein Projekt, das Datum (~ 10 Millionen Zeilen, 1,2 GB Daten) in drei verschiedenen Datenbanken, 2 Oracle und MySQL 1 sendet. Ich habe keine Probleme der Arbeit mit beiden Systemen hat, noch habe ich keine großen Vorteile auf beiden Seiten gesehen. Wenn Sie an einem Ort sind, die bereits Oracle für andere Projekte verwendet, das Hinzufügen auf eine neue Datenbank sollte nicht zu viel von einem Problem werden, aber wenn Sie denken an die Einrichtung eines neuen Datenbankserver auf und haben nichts in Platz bereits, MySQL finden Sie das Geld sparen.

Oracle Enterprise geht davon aus, dass es ein Unternehmen ist, sie zu unterstützen, das heißt, eine echte Oracle DBA. Ein Anfänger (aber kompetent) DBA sollte in der Lage sein, MySQL zu sichern viel leichter als Oracle, nur weil Oracle von Natur aus komplexer ist. Natürlich Oracle die Enterprise-Monitoring-Tools darüber hinaus hat, was MySQL zur Zeit verfügt (soweit ich gesehen habe), aber der DBA muss in der Lage sein, sie wirksam zu sein verwenden.

Eine solche kleine Datenbank, wie Sie von den meisten alles gehandhabt werden beschreiben könnte, so kann ich nicht sehen, dass Oracle gerechtfertigt wäre, wenn die Infrastruktur bereits vorhanden war. Beide haben die Replikation, Transaktionen und Warm-Backups so würde entweder gute Dienste leisten.

Die Antwort hängt ganz , wie Sie jedes DBMS konfigurieren. Beide sind in der Lage Umgang mit 500.000 Datensätze ein Vielfaches.

Oracle ist viel beefier. Viele seiner Funktionen würden nur in einem größeren Unternehmen oder High-Performance-Einstellung gesucht werden. Sie sind in erster Linie bieten mit Skalierung, Replikation und Load-Balancing zu tun.

Für kleine DBs, betrachten SQLite. Für kleine bis mittlere, Blick auf MySQL oder PostgreSQL. Für die größte, Blick auf MSSQL, Oracle, DB2, etc.

Edit: die andere Antwort gelesen haben, werde ich hinzufügen, dass, wenn Ihre Daten wirklich ist, wirklich kritisch, sollten Sie eine replizierte Setup und Sie werden wahrscheinlich zu einem aussehen wollen von die großen DB-Provider für so etwas.

Wenn Sie potenzielle Opfer ( äußerst selten ) Datenverluste und würde eine verbesserte Leistung vorziehen, auf einige der leichteren Optionen aussehen.

Es ist wahr, dass Oracle ist ein Tier.

Es ist auch wahr, dass Oracle ist weithin die sicherste Groß Datenbank berücksichtigt.

Das Problem ist, dass Oracle Entwickler scheinen nicht kritische Sicherheits consepts zu erreichen. Oracle ist die am wenigsten sichere Datenbankserver auf dem Markt (Laut unabhängigen Sicherheitsforscher)

http://itic-corp.com/blog/2010/09/sql-server-most-secure-database-oracle-least-secure-database-since-2002/

MySQL ist eigentlich ziemlich sicher nach diesen Forschern. Ich weiß nicht viel über die Werkzeuge zur Verfügung. Was ist witzigsten über diese Forschung ist, dass die gleichen Leute, die ein Spielzeug Microsoft SQL Server ihre Daten gestohlen hätten nennen würden von Angreifern dass MSSQL würde vereiteln, weil sie ein Tier verwenden, das eine schreckliche Sicherheitsmodell hat eher als ein „Spielzeug“, das ist sicher.

Ich bin mit Oracle / SQL Server / MySQL für verschiedene Anwendungen und Website

No Database Beat kann Oracle in vielen anderen Bereich, aber es ist die Datenbank, die für die Verwaltung tiefes Wissen erfordern.

und wenn Sie ein Problem mit Orakeln gefunden, kann einige Male verbringen sie auch mit gutem DBAs Jungs zu lösen.

Sie können für 500K mit MySql gehen oder Millionen von Datensätzen, dann ist es mehr Licht als andere DB, und Null Verwaltungsaufwand erfordern, und wird eine Menge von Ressourcen Ihres Computers nicht nehmen, ich habe es immer in meiner Entwicklung PC, und nie kein ernsthaftes Problem damit konfrontiert hatte.

Ich würde verlangen, dass Sie mit MySQL oder PostgreSQL gehen, wenn Sie die erweiterten featuers von Oracle nicht benötigen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top