Maison > Article > base de données > Quelle est la différence entre Oracle et MySQL
Différences : 1. Oracle est une grande base de données, tandis que Mysql est une base de données de petite et moyenne taille ; 2. Mysql est open source, alors qu'Oracle est payant ; 3. Mysql ne prend pas en charge les transactions par défaut, alors qu'Oracle prend entièrement en charge les choses ; ; 4. Oracle nécessite une soumission manuelle par défaut et Mysql la soumet automatiquement par défaut.
L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.
1. Macroscopiquement :
1 Oracle est une grande base de données, tandis que Mysql est une base de données de petite et moyenne taille ; 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ée.
2. Au microscope :
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, tandis qu'Oracle le fait pour les choses entièrement prises en charge.
2. 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 si la base de données ou l'hôte redémarre anormalement. le redémarrage d'Oracle peut restaurer les données soumises par les clients en s'appuyant sur les journaux 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.
3. 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 niveau le plus élevé.
Lisez 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 multiversions 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. 4. Oracle ne soumet pas automatiquement par défaut et doit être soumis manuellement. Mysql s'engage automatiquement par défaut.
5. 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 du DML (Data Manipulation Language) qui affecte les activités normales ; Oracle ne verrouille pas les données lors de la sauvegarde logique ; . Et les données sauvegardées sont cohérentes.
6. 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 semble plus stable et traditionnel ; à cet égard, la pagination d'Oracle est complétée par des pseudo-colonnes et des sous-requêtes, et les données ne peuvent être insérées que ligne par ligne.
7. 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 récupération 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, mais la base de données de secours peut être automatiquement basculée vers la base de données principale. la gestion de la configuration est plus compliquée.
8. Tables partitionnées et index partitionnésLa 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.
9. Service après-vente et frais
Oracle est facturé, si vous rencontrez des problèmes, veuillez contacter le service client ; Mysql est gratuit et open source, vous pouvez résoudre les problèmes par vous-même.
10. Autorisations et sécurité
Les autorisations et les concepts de sécurité d'Oracle sont relativement traditionnels et assez satisfaisants ; les utilisateurs de MySQL sont liés à l'hôte, ce qui semble dénué de sens. De plus, l'hôte et l'adresse IP sont plus susceptibles d'être contrefaits, ce qui est plus probable. peut en profiter.
11. En termes de 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 vidéo 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!