MySQL Community Edition est un système de gestion de bases de données relationnelles (SGBDR) open source, multiplate-forme, largement utilisé et très rapide. Il comporte à la fois des implémentations client et serveur, qui consistent en un démon serveur (mysqld) et de nombreux programmes clients et bibliothèques.
Caractéristiques en un coup d'oeil
Initialement créé par Sun Microsystems (maintenant géré par Oracle), MySQL est plus que la base de données open source la plus populaire du monde car il propose des connecteurs, réplication, partitionnement, workbench, moniteur d’entreprise, tableau de bord et conseillers, analyseur de requêtes. , moniteur de réplication et fonctionnalités de sauvegarde d'entreprise. Il fonctionne sur les systèmes d'exploitation Linux, Solaris, BSD, Mac OS X et Windows.
En outre, le serveur de base de données MySQL offre également des fonctions de sauvegarde complètes, incrémentielles et partielles, la restauration complète et partielle, la récupération ponctuelle, l’authentification externe, la conformité aux audits basés sur des règles, le pool de threads, le gestionnaire de cluster, mise à l'échelle automatique, ainsi que des fonctionnalités de géoréplication de cluster.
Prend en charge une large gamme de moteurs de stockage
Parmi les moteurs de stockage supportés par MySQL, on peut citer MyISAM, InnoDB et NDB. Une sauvegarde à chaud pour InnoDB1 est également fournie. L'édition communautaire est offerte gratuitement et activement entretenue et soutenue par une communauté de passionnés et de développeurs open source de tous les coins du monde.
Prend en charge toutes les distributions GNU / Linux
MySQL a été conçu pour fonctionner sur les systèmes d'exploitation basés sur le noyau Linux, ce qui signifie qu'il peut être facilement installé sur n'importe quelle distribution GNU / Linux avec un minimum d'effort. Il est disponible au téléchargement en tant que paquets binaires pré-construits pour Ubuntu, Debian, SUSE Linux Enterprise Server, Oracle Linux, Red Hat Enterprise Linux et tout autre système d'exploitation Linux, prenant en charge les architectures de jeux d'instructions 32 bits et 64 bits. p>
Configurable via phpMyAdmin
MySQL est un programme serveur, ce qui signifie qu’il est exécuté en arrière-plan, en tant que démon. Vous pouvez interagir avec elle via la ligne de commande, mais la meilleure façon de gérer les bases de données consiste à utiliser une interface graphique. Le meilleur serveur frontal MySQL disponible aujourd’hui est sans aucun doute phpMyAdmin, qui fournit aux utilisateurs une interface Web accessible depuis pratiquement n'importe où.
Nouveautés dans cette version:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Côté client, l'option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 8.0.11 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Côté client, l'option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Côté client, l'option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.19 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Côté client, l'option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.18 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Côté client, l'option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.17 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Du côté du client, l’option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.16 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Du côté du client, l’option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.15 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Du côté du client, l’option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.14 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Du côté du client, l’option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.13 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Du côté du client, l’option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.11 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Du côté du client, l’option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.7.10 GA:
- Notes de sécurité:
- Auparavant, MySQL ne supportait que le protocole TLSv1 pour les connexions chiffrées. Le support TLS a été étendu pour permettre un niveau plus élevé de sécurité de connexion chiffrée ...
- Lorsqu'elle est compilée à l'aide de la version fournie de yaSSL, MySQL prend en charge les protocoles TLSv1 et TLSv1.1.
- Compilé avec OpenSSL 1.0.1 ou supérieur, MySQL prend en charge les protocoles TLSv1, TLSv1.1 et TLSv1.2.
- Par défaut, MySQL tente d'utiliser la version de protocole TLS la plus élevée disponible, en fonction de la bibliothèque SSL utilisée pour compiler le serveur et le client et de la taille de clé utilisée.
- Comme TLSv1.2 nécessite OpenSSL, la prise en charge de ce protocole est disponible sous forme de distributions binaires uniquement pour MySQL Commercial Server et non pour MySQL Community Server (qui est compilé avec yaSSL). Pour activer la prise en charge de TLSv1.2 si vous générez à partir de la source, vous devez définir l'option WITH_SSL CMake pour utiliser OpenSSL lors de la configuration de MySQL.
- La nouvelle variable système tls_version permet de spécifier les protocoles TLS autorisés par le serveur au démarrage. Du côté du client, l’option --tls-version permet de spécifier les protocoles TLS autorisés par les programmes clients par invocation client.
- La fonction API mysql_options () C a une nouvelle option MYSQL_OPT_TLS_VERSION qui permet aux protocoles TLS autorisés par un programme client d'être spécifiés depuis la bibliothèque client.
- Fonctionnalité ajoutée ou modifiée:
- InnoDB: la variable système innodb_support_xa, qui permet la prise en charge de la validation en deux phases dans les transactions XA, est obsolète. Le support InnoDB pour la validation en deux phases dans les transactions XA est toujours activé à partir de MySQL 5.7.10. La désactivation de innodb_support_xa n'est plus autorisée car elle rend la réplication peu sûre et empêche les gains de performances associés à la validation des groupes de journaux binaires.
Nouveautés dans la version 5.6.26 GA / 5.7.5 Milestone 16:
- Cette version ajoute le support pour Debian 8 et Ubuntu 15.04.
Nouveautés dans la version 5.6.25 GA / 5.7.5 Milestone 16:
- Notes de sécurité:
- La bibliothèque OpenSSL liée au serveur commercial MySQL a été mise à jour de la version 1.0.1j à la version 1.0.1k. Les problèmes résolus dans la nouvelle version sont décrits à l’adresse http://www.openssl.org/news/vulnerabilities.html.
- Cette modification n’affecte pas la version MySQL de la communauté MySQL produite par Oracle, qui utilise à la place la bibliothèque yaSSL. (Bogue n ° 20375530)
- Fonctionnalité ajoutée ou modifiée:
- La prise en charge des protocoles SSL 2.0 et SSL 3.0 a été désactivée car ils fournissent un chiffrement faible. (Bogue n ° 19820550)
- yaSSL a été mis à niveau vers la version 2.3.7. (Bogue n ° 19695101, bogue n ° 20201864)
- La plage de dates valide des certificats SSL dans mysql-test / std_data a été étendue à l'année 2029. (Bogue n ° 18366947)
- Bugs corrigés:
- InnoDB: une opération d'exportation de tablespace définit l'état de purge sur PURGE_STATE_STOP mais le thread de purge n'a pas vérifié l'état de purge tant que l'opération de purge en cours n'était pas terminée. Dans le cas d'une liste d'historique volumineuse, l'opération d'exportation de tablespace a été retardée, en attente de la fin de l'opération de purge en cours. L'état de purge est maintenant vérifié avec chaque lot de purge. (Bogue n ° 20266847, bogue n ° 75298)
- InnoDB: une opération ALTER TABLE ... ADD INDEX a déclenché une assertion due à un code d'assertion qui n'autorisait pas le statut d'index en ligne ONLINE_INDEX_ABORTED_DROPPED. Le code d'assertion a été assoupli. (Bogue n ° 20198726)
- InnoDB: Une erreur s’est produite lorsque la fonction push_warning_printf a été appelée lors de la récupération du serveur. Cette fonction était auparavant utilisée pour imprimer un message d'avertissement au client. En outre, current_thd était NULL lorsque le serveur a été redémarré. (Bogue n ° 20144839)
- InnoDB: une opération ALTER TABLE qui a modifié le nom d'une colonne de clé étrangère a entraîné une défaillance lors du rechargement de la contrainte de clé étrangère. Le nom de la colonne précédente est resté dans le cache du dictionnaire de données au lieu d'être expulsé. (Bogue n ° 20031243)
- InnoDB: Les messages d'erreur relatifs à une limitation de la taille des données BLOB ou TEXT insérées dans une seule transaction ont été révisés. (Bogue n ° 19975322)
- InnoDB: les opérations DML sur une table avec des index de recherche en texte intégral ont déclenché une assertion non valide. (Bogue n ° 19905246)
- Références: Ce bogue est une régression du bogue n ° 19314480.
- InnoDB: une opération de suppression de plusieurs tables a provoqué l'arrêt du serveur. (Bogue n ° 19815702)
- InnoDB: une opération FLUSH TABLES a déclenché une assertion. (Bogue n ° 19803418)
- InnoDB: Avec la mise en mémoire tampon des modifications activée, une séquence d’opérations mise en mémoire tampon qui n’aurait pas dû être mise en mémoire tampon a entraîné une erreur de purge d’enregistrement impossible à purger. (Bogue n ° 19528825, bogue n ° 73767)
- InnoDB: Sur les plates-formes autres que Windows, les fonctions os-file_pread et os_file_pwrite renvoient -1 lorsqu'une erreur survient. Cette valeur a été imprimée dans un message d'erreur comme le nombre d'octets lus ou écrits. Au lieu d'imprimer la valeur -1 dans le message d'erreur, un message d'erreur distinct indiquant un échec d'appel système est maintenant imprimé. Merci à David Bennett pour le patch. (Bogue n ° 19315210, bogue n ° 73365)
- InnoDB: Un arrêt lent (innodb_fast_shutdown = 0) après une reprise après incident a déclenché une assertion. Un arrêt lent n'a pas attendu la fin des opérations de restauration en arrière-plan avant de poursuivre. (Bogue n ° 16862810)
- InnoDB: La valeur de la colonne entière a été traitée de manière incorrecte pour les commandes incrc et dimin de memcached. (Bogue n ° 69415, bogue n ° 20083106, bogue n ° 74874, bogue n ° 20044123).
- Partitionnement: une instruction ALTER TABLE ... TRUNCATE PARTITION ayant échoué ou une instruction TRUNCATE TABLE ayant échoué sur une table partitionnée laissait parfois des métadonnées incohérentes dans le cache de la table; Les instructions SQL ultérieures réutilisant ces métadonnées ont échoué et pourraient dans certains cas entraîner une défaillance du serveur. (Bogue n ° 74292, bogue n ° 19786861)
- Réplication: Si un thread client sur un esclave exécutait FLUER TABLES WITH READ LOCK pendant que le maître exécutait un DML, l'exécution de SHOW SLAVE STATUS dans le même client était bloquée, provoquant un blocage. Le correctif garantit que le verrou de lecture n'est conservé que pendant la période de mise à jour du journal de relais et que le blocage est évité. (Bogue n ° 19843808)
- Réplication: lorsqu'une transaction XA était active, l'exécution d'une annulation interne, par exemple à l'aide de l'instruction BINLOG, entraînait une assertion. Le correctif garantit qu'un retour en arrière ne se produit que pour un esclave lorsqu'une transaction couvre plusieurs fichiers journaux binaires. La restauration ne se produit pas maintenant si la description du format est issue de l'instruction BINLOG en cours d'exécution sur le client MySQL. (Bogue n ° 74597, bogue n ° 19928622)
- Réplication: En utilisation normale, un esclave ne peut pas avoir plus de GTID que le maître. Mais dans certaines situations, comme après une panne matérielle ou un effacement incorrect de gtid_purged, le journal binaire du maître peut être tronqué. Ce correctif garantit que dans une telle situation, le maître détecte maintenant que l'esclave a des transactions avec les GTID qui ne sont pas sur le maître. Une erreur est maintenant générée sur l'esclave et le thread d'E / S est arrêté avec une erreur. Le thread de vidage du maître est également arrêté. Cela empêche les incohérences de données lors de la réplication. (Bogue n ° 72635, bogue n ° 18789758)
- Réplication: lorsque vous utilisez SHOW SLAVE STATUS pour surveiller les performances de la réplication, Seconds_Behind_Master affiche parfois un décalage inattendu derrière le maître. Cela a été causé par Previous_gtids_log_events écrit dans le journal de relais de l'esclave avec un horodatage derrière le maître, puis utilisé pour calculer Seconds_Behind_Master. Ce correctif garantit que les événements générés sur l'esclave qui sont ajoutés au journal du relais et ne sont pas utilisés lors du calcul de Seconds_Behind_Master. (Bogue n ° 72376, bogue n ° 18622657)
- Sous Ubuntu 14.10, les opérations d’installation de MySQL peuvent ne pas recharger AppArmor. (Bogue n ° 20092641)
- EXPLAIN dans une transaction XA pourrait déclencher une assertion. (Bogue n ° 19941492)
- Les fichiers journaux binaires créés en diffusant le journal binaire à partir d’un serveur distant avec mysqlbinlog recevaient un mode d’accès plus permissif que les fichiers originaux. (Bogue n ° 19649868)
- Si le plug-in audit_log a rencontré une erreur de disque, le serveur se ferme.
- Maintenant, si le système de fichiers dans lequel le journal d'audit est en cours d'écriture se remplit, une erreur "disque plein" est écrite dans le journal des erreurs. La journalisation de l'audit se poursuit jusqu'à ce que le tampon du journal d'audit soit plein. Si l'espace disque disponible n'est pas disponible au moment où la mémoire tampon se remplit, les sessions clientes sont bloquées et l'arrêt du serveur au moment de la suspension des sessions client entraîne une corruption du journal d'audit. Pour éviter cela si les sessions client sont suspendues, assurez-vous que de l'espace libre est disponible sur le système de fichiers de journalisation d'audit avant d'arrêter le serveur. (Bogue n ° 19411485)
- En cas d’impossibilité de créer une table temporaire en raison de l’absence de descripteurs de fichiers, le serveur a quitté plutôt que de renvoyer une erreur. (Bogue n ° 18948649)
- Pour certaines requêtes qui contenaient une table dérivée (sous-requête dans la clause FROM), le délai d'exécution de la matérialisation entraînait un plan d'exécution sous-optimal en raison d'une estimation moins précise du nombre de lignes. (Bogue n ° 18607971)
- Pour les instructions UPDATE et DELETE, le serveur peut quitter après avoir tenté d'accéder à une structure de données non initialisée. (Bogue n ° 18036143)
- Le démarrage du serveur avec le service de démarrage ou mysqld_safe peut entraîner l’échec de l’utilisation du répertoire correct du plug-in. (Bogue n ° 17619241)
- TABLES FLUSH sur une table FEDERATED a échoué si la table était inactive plus longtemps que le temps wait_timeout plus le temps TCP keepalive. (Bogue n ° 17599258)
- La sélection de toutes les colonnes dans INFORMATION_SCHEMA.TABLES n'a pas rouvert les tables si elles se trouvaient dans le cache de la table, mais la sélection d'un sous-ensemble de ces colonnes dans les mêmes conditions a rouvert les tables. (Bogue n ° 16869534)
- Si my_write () a rencontré une condition de saturation du disque, il peut retourner une valeur d'erreur incorrecte. (Bogue n ° 16078792, bogue n ° 19984788)
- InnoDB recherches booléennes en texte intégral manipulées incorrectement + combinées avec des parenthèses; par exemple, + mot1 + (& gt; mot2
Commentaires non trouvées