Heim  >  Artikel  >  Datenbank  >  Was ist der Unterschied zwischen MySQL und Oracle?

Was ist der Unterschied zwischen MySQL und Oracle?

醉折花枝作酒筹
醉折花枝作酒筹nach vorne
2021-05-31 09:21:442530Durchsuche

Dieser Artikel stellt Ihnen den Unterschied zwischen MySQL und Oracle vor. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Was ist der Unterschied zwischen MySQL und Oracle?

1. Makroskopisch:

1. Oracle ist eine kleine und mittlere Datenbank, während Oracle kostenpflichtig und teuer ist.

2. Oracle unterstützt große Parallelität und großen Datenverkehr und ist das beste Tool für OLTP.

3. Der von der Installation belegte Speicher ist ebenfalls unterschiedlich. Nach Abschluss der MySQL-Installation ist der belegte Speicher viel kleiner als der von Oracle belegte Speicher, und der von Oracle belegte Speicher nimmt zu, je mehr er verwendet wird.

2. Mikroskopische Ansicht:

1. Unterstützung für Transaktionen

Mysql unterstützt standardmäßig keine Transaktionen, aber einige Speicher-Engines wie innodb können dies vollständig unterstützen;

2. Parallelität

Was ist Parallelität? Parallelität ist das wichtigste Merkmal der OLTP-Datenbank (Online-Transaktionsverarbeitung). Parallelität umfasst die Erfassung, gemeinsame Nutzung und Sperrung von Ressourcen.

Mysql unterstützt sowohl Tabellensperren als auch Sperren auf Zeilenebene. Tabellensperren sind beim Sperren von Ressourcen sehr wirksam. Wenn eine Sitzung eine Tabelle zu lange sperrt, können andere Sitzungen die Daten dieser Tabelle nicht aktualisieren.

Oracle verwendet Sperren auf Zeilenebene, die Ressourcen viel weniger intensiv sperren. Es sperrt nur die von SQL benötigten Ressourcen, und die Sperre bezieht sich auf die Datenzeilen in der Datenbank und ist nicht vom Index abhängig. Daher ist die Unterstützung von Oracle für Parallelität viel besser.

3. Datenpersistenz

Oracle garantiert, dass alle übermittelten Transaktionen wiederhergestellt werden können, da Oracle die übermittelte SQL-Operationszeile in die Online-Protokolldatei schreibt und auf der Festplatte speichert. Wenn die Datenbank oder der Host abnormal neu startet, kann Oracle neu gestartet werden Verlassen Sie sich auf Online-Protokolle, um vom Kunden übermittelte Daten wiederherzustellen.

Mysql sendet standardmäßig SQL-Anweisungen, aber wenn während des Aktualisierungsvorgangs ein Datenbank- oder Host-Neustartproblem auftritt, können auch Daten verloren gehen.

4. Transaktionsisolationsstufe

MySQL ist die Isolationsstufe für wiederholbares Lesen, während Oracle die Isolationsstufe für festgeschriebenes Lesen ist. Gleichzeitig unterstützen beide die Isolationsstufe für serialisierbare Transaktionen, die die höchste Stufe erreichen kann.

Konsistenz lesen. Erst nachdem jede Sitzung übermittelt wurde, können andere Sitzungen die übermittelten Änderungen sehen. Oracle erreicht Lesekonsistenz durch die Erstellung von Datenblöcken mit mehreren Versionen im Undo-Tabellenbereich. Wenn sich bei jeder Sitzung der entsprechende Datenblock ändert, erstellt Oracle bei der Abfrage die alten Daten für diese Sitzung .

MySQL verfügt nicht über einen Mechanismus zum Erstellen von Datenblöcken mit mehreren Versionen ähnlich wie Oracle und unterstützt nur die Isolationsstufe des festgeschriebenen Lesens. Wenn eine Sitzung Daten liest, können andere Sitzungen die Daten nicht ändern, aber sie können Daten am Ende der Tabelle einfügen. Wenn eine Sitzung Daten aktualisiert, muss eine exklusive Sperre hinzugefügt werden und andere Sitzungen können nicht auf die Daten zugreifen

5 Übermittlungsmethode

Oracle übermittelt standardmäßig nicht automatisch und muss manuell übermittelt werden. MySQL führt standardmäßig automatisch einen Commit durch.

6. Logische Sicherung

Die logische Sicherung von MySQL erfordert das Sperren von Daten, um sicherzustellen, dass die gesicherten Daten konsistent sind, was sich auf die normale Verwendung von DML (Data Manipulation Language) im Unternehmen auswirkt; die logische Sicherung von Oracle sperrt die Daten nicht Die Daten sind konsistent.

7. Flexibilität von SQL-Anweisungen

MySQL verfügt über viele sehr praktische und praktische Erweiterungen für SQL-Anweisungen, z. B. die Limit-Funktion (Paging), das Einfügen kann mehrere Datenzeilen gleichzeitig einfügen; Oracle fühlt sich in dieser Hinsicht stabiler und traditioneller an , Oracle Das Paging erfolgt über Pseudospalten und Unterabfragen, und Daten können nur Zeile für Zeile eingefügt werden.

8. Datenreplikation

MySQL: Die Konfiguration des Replikationsservers ist einfach, aber wenn ein Problem mit der Hauptdatenbank auftritt, kann die Clusterdatenbank eine bestimmte Datenmenge verlieren. Und Sie müssen die Plex-Bibliothek manuell auf die Hauptbibliothek umstellen.

Oracle: Es gibt sowohl die herkömmliche Push- oder Pull-Datenreplikation als auch den Dual-Machine- oder Multi-Machine-Disaster-Recovery-Mechanismus von Dataguard. Wenn ein Problem mit der Hauptdatenbank auftritt, kann die Standby-Datenbank automatisch auf die Hauptdatenbank umgeschaltet werden Das Konfigurationsmanagement ist komplizierter.

9. Partitionierte Tabelle und partitionierter Index

Die partitionierte Tabelle und der partitionierte Index von Oracle sind noch nicht ausgereift und können die Benutzererfahrung beim Zugriff auf die Datenbank verbessern.

10. Kundendienst und Gebühren

Oracle erhebt eine Gebühr. Wenn Sie Probleme haben, wenden Sie sich bitte an den Kundendienst. Wenn Sie Probleme haben, können Sie diese selbst lösen.

11. Berechtigungen und Sicherheit

Oracles Berechtigungs- und Sicherheitskonzepte sind relativ traditionell und recht zufriedenstellend; außerdem ist es für MySQL-Benutzer bedeutungslos, dass sie gefälscht werden ausgebeutet.

12. In Bezug auf die Leistungsdiagnose

Oracle verfügt über verschiedene ausgereifte Leistungsdiagnose- und Optimierungstools, die viele automatische Analyse- und Diagnosefunktionen realisieren können. Zum Beispiel awr, addm, sqltrace, tkproof usw.; MySQL verfügt über wenige Diagnose- und Optimierungsmethoden, hauptsächlich langsame Abfrageprotokolle.

Verwandte Empfehlungen: „MySQL-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen MySQL und Oracle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen