Maison >base de données >tutoriel mysql >Quelle est la différence entre Oracle et MySQL
Différences : 1. La base de données Oracle est un système de gestion de base de données relationnelle objet lourd, et mysql est un système de gestion de base de données relationnelle open source léger ; 2. Oracle a de nombreux paramètres pour vérifier les utilisateurs et dispose d'une sécurité renforcée, et mysql vérifie qu'il n'y en a que trois paramètres utilisateur et la sécurité est faible.
L'environnement d'exploitation de ce tutoriel : système windows10, version mysql8.0.22, ordinateur Dell G3.
Quelle est la différence entre Oracle et MySQL ? 1. Différences de type et de coûtLa base de données Oracle est un système de gestion de base de données relationnelle objet (ORDBMS), une base de données robuste. Il est souvent appelé Oracle RDBMS ou simplement Oracle et est une base de données.
MySQL est un système de gestion de base de données relationnelle (SGBDR) open source et une base de données légère. Il s'agit du SGBDR le plus utilisé au monde et fonctionne comme un serveur offrant un accès multi-utilisateurs à plusieurs bases de données. Il s'agit d'une base de données open source et gratuite.
2. Différences de stockage
Par rapport à Oracle, MySQL n'a pas d'espaces de table, de gestion des rôles, d'instantanés, de synonymes et de packages, ni de gestion automatique du stockage.
3. Différences de sécurité
MySQL utilise trois paramètres pour authentifier les utilisateurs, à savoir le nom d'utilisateur, le mot de passe et l'emplacement ; Oracle utilise de nombreuses fonctionnalités de sécurité telles que le nom d'utilisateur, le mot de passe, le fichier de configuration, l'authentification locale, l'authentification d'identité externe, des améliorations de sécurité avancées et plus.
4. Prise en charge des transactions
MySQL ne peut prendre en charge que les transactions avec le verrouillage au niveau des lignes du moteur de stockage innodb, tandis qu'Oracle prend entièrement en charge les transactions
5. Différences de diagnostic des performances
Méthode de réglage du diagnostic MySQL Moins, principalement des requêtes lentes. journaux.
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.
6. Différences dans les outils de gestion
MySQL possède moins d'outils de gestion sous Linux nécessite parfois l'installation de packages supplémentaires (phpmyadmin, etc). est complexe.
Oracle dispose d'une variété de lignes de commande matures, d'interfaces graphiques, d'outils de gestion Web et de nombreux outils de gestion tiers, ce qui rend la gestion extrêmement pratique et efficace.
7. Différences de concurrence
MySQL utilise principalement des verrous au niveau de la table, et la granularité du verrouillage des ressources est très grande. Si une session verrouille une table trop longtemps, les autres sessions ne pourront pas mettre à jour les données de cette table. . Bien que les tables du moteur InnoDB puissent utiliser des verrous au niveau de la ligne, ce mécanisme de verrouillage au niveau de la ligne repose sur l'index de la table. Si la table n'a pas d'index ou si l'instruction SQL n'utilise pas d'index, les verrous au niveau de la table sont toujours. utilisé.
Oracle utilise des verrous au niveau des lignes et la granularité du verrouillage des ressources est beaucoup plus petite. 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 repose pas sur des index. La prise en charge de la concurrence par Oracle est donc bien meilleure.
8. La persistance des données enregistrées
MySQL perdra des données lorsque la base de données est mise à jour ou redémarrée. Oracle écrit la ligne d'opération SQL soumise dans le fichier journal en ligne et la conserve sur le disque, qui peut être restaurée à tout moment
9. La différence dans le niveau d'isolement des transactions
MySQL est le niveau d'isolement des lectures validées, tandis qu'Oracle est le niveau d'isolement des lectures répétables. 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é de. 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 atteint la cohérence de lecture en construisant des blocs de données multi-versions dans l'espace table d'annulation pour cette session. Lorsque chaque session est interrogée, si le bloc de données correspondant change, Oracle construira l'ancienne version de la requête dans l'espace table d'annulation pour cette session. Blocs de données
MySQL ne dispose pas d'un mécanisme similaire à Oracle pour construire des blocs de données multiversions 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. Lorsque la session met à jour les données, un verrou exclusif doit être ajouté afin que les autres sessions ne puissent pas accéder aux données.
10. Quelques différences opérationnelles
①Clé primaire
Mysql utilise généralement le type d'incrémentation automatique, il vous suffit de spécifier la clé primaire de la table comme auto_increment. Lors de l'insertion d'un enregistrement, vous n'avez pas besoin. pour spécifier la valeur de la clé primaire de l'enregistrement. Mysql Elle grandira automatiquement ;
Oracle n'a pas de type de croissance automatique. Lors de l'insertion d'un enregistrement, la valeur suivante du numéro de séquence est payée. le terrain ; mais le framework ORM n’a besoin que d’une stratégie native de génération de clé primaire.
②Gestion des guillemets simples
Vous pouvez utiliser des guillemets doubles pour envelopper une chaîne dans MYSQL, mais vous ne pouvez utiliser que des guillemets simples pour envelopper une chaîne dans ORACLE. Avant d'insérer ou de modifier une chaîne, vous devez remplacer les guillemets simples : remplacez toutes les occurrences d'un guillemet simple par deux guillemets simples.
③Traitement des instructions SQL de changement de page
MYSQL est relativement simple à traiter les instructions SQL de changement de page. Utilisez LIMIT pour démarrer la position et enregistrer le numéro ; le traitement des instructions SQL de changement de page est plus fastidieux.
④ Gestion des caractères nuls
Les champs non vides de MYSQL peuvent également avoir un contenu vide. ORACLE définit des champs non vides et n'autorise pas le contenu vide.
⑤Comparaison floue des chaînes
Dans MYSQL, les noms de champs comme '%String%' sont utilisés ; dans ORACLE, les noms de champs comme '%String%' peuvent également être utilisés, mais cette méthode ne peut pas utiliser d'index et n'est pas rapide.
Apprentissage recommandé : 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!