Maison >base de données >tutoriel mysql >Quelle est la différence entre MySQL et Oracle ?

Quelle est la différence entre MySQL et Oracle ?

醉折花枝作酒筹
醉折花枝作酒筹avant
2021-05-31 09:21:442560parcourir

Cet article vous présentera la différence entre MySQL et Oracle. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Quelle est la différence entre MySQL et Oracle ?

1. Macroscopiquement :

1. Oracle est une grande base de données et Mysql est une base de données de petite et moyenne taille ; est payant. Et cher.

2. Oracle prend en charge une concurrence et un trafic importants et constitue le meilleur outil pour OLTP.

3. La mémoire occupée par l'installation est également différente. Une fois l'installation de Mysql terminée, la mémoire occupée est beaucoup plus petite que la mémoire occupée par Oracle, et la mémoire occupée par Oracle augmentera à mesure qu'elle est. utilisé.

2. Vue microscopique :

1. Prise en charge des transactions

Mysql ne prend pas en charge les transactions par défaut, mais certains moteurs de stockage tels que innodb peuvent le prendre en charge ; soutient pleinement les choses.

2. Concurrence

Qu'est-ce que la concurrence ? La concurrence est la fonctionnalité la plus importante de la base de données OLTP (On-Line Transaction Processing). La concurrence implique l'acquisition, le partage et le verrouillage des ressources.

Mysql prend en charge à la fois les verrous de table et les verrous au niveau des lignes. Les verrous de table sont très puissants pour verrouiller les ressources. Si une session verrouille une table trop longtemps, les autres sessions ne pourront pas mettre à jour les données de cette table.

Oracle utilise le verrouillage au niveau des lignes, qui verrouille les ressources de manière beaucoup moins intensive. Il verrouille uniquement les ressources requises par SQL, et le verrouillage s'effectue sur les lignes de données de la base de données et ne dépend pas de l'index. Par conséquent, la prise en charge de la concurrence par Oracle est bien meilleure.

3. Persistance des données

Oracle garantit que toutes les transactions soumises peuvent être récupérées, car Oracle écrit la ligne d'opération SQL soumise dans le fichier journal en ligne et l'enregistre sur le disque. la base de données ou l'hôte redémarre anormalement, le redémarrage d'Oracle peut restaurer les données soumises par le client en s'appuyant sur le journal en ligne.

Mysql soumet les instructions SQL par défaut, mais s'il y a un problème de redémarrage de la base de données ou de l'hôte pendant le processus de mise à jour, les données peuvent également être perdues.

4. Niveau d'isolement des transactions

MySQL est le niveau d'isolement des lectures répétables, tandis qu'Oracle est le niveau d'isolement des lectures validées. En même temps, les deux prennent en charge le niveau d'isolement des transactions sérialisées sérialisables, qui. peut atteindre le plus haut niveau.

Lire la cohérence. Ce n'est qu'après la soumission de chaque session que les autres sessions peuvent voir les modifications soumises. Oracle obtient la cohérence de lecture en construisant des blocs de données multiversions dans l'espace table d'annulation lorsque chaque session est interrogée, si le bloc de données correspondant change, Oracle construira les anciennes données de cette session dans l'espace table d'annulation lorsqu'elle est interrogée. .

MySQL ne dispose pas de mécanisme pour construire des blocs de données multi-versions similaires à Oracle et ne prend en charge que le niveau d'isolation des lectures validées. Lorsqu'une session lit des données, les autres sessions ne peuvent pas modifier les données, mais elles peuvent insérer des données à la fin du tableau. Lorsqu'une session met à jour les données, un verrou exclusif doit être ajouté. Les autres sessions ne peuvent pas accéder aux données

5. Méthode de soumission

Oracle ne soumet pas automatiquement par défaut et doit être soumis manuellement. Mysql s'engage automatiquement par défaut.

6. Sauvegarde logique

La sauvegarde logique MySQL nécessite le verrouillage des données pour garantir la cohérence des données sauvegardées, ce qui affecte l'utilisation normale du DML (Data Manipulation Language) dans les données logiques Oracle ; n'est pas verrouillé pendant la sauvegarde et les données sauvegardées sont cohérentes.

7. Flexibilité des instructions SQL

mysql a de nombreuses extensions très pratiques et pratiques aux instructions SQL, telles que la fonction de limite (pagination), l'insertion peut insérer plusieurs lignes de données à la fois Oracle ; est ici Cela semble plus stable et traditionnel. La pagination d'Oracle se fait via des pseudo-colonnes et des sous-requêtes, et les données ne peuvent être insérées que ligne par ligne.

8. Réplication des données

MySQL : La configuration du serveur de réplication est simple, mais lorsqu'il y a un problème avec la base de données principale, la base de données du cluster peut perdre une certaine quantité de données. Et vous devez basculer manuellement la bibliothèque plex vers la bibliothèque principale.

Oracle : Il existe à la fois une réplication de données traditionnelle push ou pull et un mécanisme de reprise après sinistre sur deux ou plusieurs machines de dataguard. En cas de problème avec la base de données principale, la base de données de secours peut être automatiquement basculée vers la base de données principale. base de données, mais la gestion de la configuration est complexe.

9. Table partitionnée et index partitionné

La table partitionnée de MySQL n'est pas encore mature et stable ; les fonctions de table partitionnée et d'index partitionné d'Oracle sont très matures et peuvent améliorer l'expérience de l'utilisateur en matière d'accès à la base de données.

10. Service après-vente et frais

Oracle facture des frais. Si vous rencontrez des problèmes, veuillez contacter le service client. Mysql est gratuit et open source. les par vous-même.

11. Autorisations et sécurité

Les autorisations et les concepts de sécurité d'Oracle sont relativement traditionnels et tout à fait satisfaisants ; les utilisateurs de MySQL sont liés à l'hôte, ce qui semble dénué de sens. susceptible d’être contrefait. Profitez de l’occasion.

12. Diagnostic des performances

Oracle dispose de divers outils de diagnostic et de réglage des performances matures, qui peuvent réaliser de nombreuses fonctions d'analyse et de diagnostic automatiques. Par exemple, awr, addm, sqltrace, tkproof, etc. MySQL dispose de peu de méthodes de diagnostic et de réglage, principalement des journaux de requêtes lents.

Recommandations associées : "Tutoriel mysql"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer