LindormTable prend en charge l'accès via le protocole MySQL, ce qui vous permet de vous connecter à l'aide de n'importe quel client ou pilote compatible MySQL. Avant de développer votre application, examinez les paramètres par défaut et les contraintes décrits dans cette rubrique : comportement SSL/TLS, sélection du protocole d'authentification et commandes du sous-protocole MySQL prises en charge par LindormTable.
Prérequis
Avant de commencer, assurez-vous de disposer des éléments suivants :
Une instance Lindorm exécutant LindormTable version 2.6.0 ou ultérieure. Pour vérifier ou mettre à niveau votre version, consultez les Notes de version de LindormTable ainsi que la procédure de Mise à niveau de la version mineure du moteur d'une instance Lindorm
La fonctionnalité de compatibilité MySQL activée. Pour plus d'informations, reportez-vous à la section Utilisation d'un client MySQL pour se connecter à LindormTable et l'utiliser
La syntaxe SQL prise en charge par LindormTable n'est pas entièrement compatible avec la syntaxe MySQL. Pour plus de détails, consultez la rubrique relative à la Syntaxe SQL de Lindorm.
SSL/TLS
Le chiffrement SSL est activé par défaut pour toutes les connexions MySQL à LindormTable. LindormTable prend uniquement en charge TLS 1.2.
Basculer vers une communication en texte clair
Si votre application et votre instance Lindorm résident dans le même Virtual Private Cloud (VPC), désactivez SSL afin d'améliorer les performances.
Pour MySQL JDBC V8.x, ajoutez le paramètre sslMode=disabled à l'URL de connexion pour activer la communication en texte clair.
Gérer les problèmes de compatibilité des versions TLS
Certains clients MySQL anciens utilisent TLS 1.0 ou 1.1, protocoles non pris en charge par LindormTable. Si vous rencontrez des erreurs de connexion liées à la version du protocole TLS, appliquez l'une des solutions suivantes :
Basculer vers une communication en texte clair. Si l'application et l'instance se trouvent dans le même VPC, désactivez SSL comme indiqué ci-dessus.
Définir la version TLS sur 1.2. Pour MySQL JDBC V5.1.44, configurez le paramètre
enabledTLSProtocolsafin de spécifier la version TLS.Mettre à niveau votre client. Utilisez un client compatible avec MySQL 8.0 ou une version ultérieure.
Protocoles d'authentification
Les protocoles d'authentification disponibles pour un utilisateur dépendent de la version de LindormTable active lors de la création de cet utilisateur, et non de la version actuelle.
| Version de LindormTable lors de la création de l'utilisateur | Protocoles d'authentification pris en charge |
|---|---|
| Antérieure à 2.6.2 | caching_sha2_password uniquement |
| 2.6.2 ou ultérieure | caching_sha2_password et mysql_native_password |
Privilégiez caching_sha2_password lorsque les deux protocoles sont disponibles. Il offre une sécurité renforcée par rapport à mysql_native_password et constitue le protocole par défaut pour les clients MySQL 8.x.
Exemple : Si vous créez un utilisateur alors que LindormTable est en version 2.5.4, puis que vous effectuez une mise à niveau vers la version 2.6.2 avant de créer un second utilisateur, le premier utilisateur ne prendra en charge que caching_sha2_password, tandis que le second prendra en charge les deux protocoles.
Compatibilité du protocole MySQL
LindormTable prend en charge un sous-ensemble du protocole wire MySQL. Les tableaux ci-dessous détaillent les sous-protocoles et les commandes pris en charge.
Phase de connexion
| Sous-protocole | Pris en charge | Notes |
|---|---|---|
| Handshake | Oui | Seul HandshakeV10 est pris en charge. |
| TLS | Oui | Seul TLS 1.2 est pris en charge. SSL est utilisé par défaut. |
old_password |
Non | Utilisé par les clients MySQL 4.x et antérieurs. |
mysql_clear_password |
Oui | Transmet les mots de passe en texte clair. Généralement utilisé avec SSL. |
mysql_native_password |
Oui | Authentification par défaut pour les clients MySQL 5.x. |
caching_sha2_password |
Oui | Authentification par défaut pour les clients MySQL 8.x. Recommandé. |
Phase de commande — protocole texte
| Commande | Pris en charge | Notes |
|---|---|---|
COM_QUERY |
Oui | Envoie et exécute des instructions SQL. |
Phase de commande — commandes utilitaires
| Commande | Pris en charge | Notes |
|---|---|---|
COM_QUIT |
Oui | Déconnecte de LindormTable. |
COM_INIT_DB |
Oui | Change la base de données par défaut pour la connexion actuelle. |
COM_PING |
Oui | Vérifie la connectivité entre le client et le serveur. |
COM_DEBUG |
Non | — |
COM_CHANGE_USER |
Non | — |
COM_RESET_CONNECTION |
Non | — |
COM_SET_OPTION |
Non | — |
Phase de commande — instructions préparées
| Commande | Pris en charge | Notes |
|---|---|---|
COM_STMT_PREPARE |
Oui | Prétraite une requête paramétrée. |
COM_STMT_EXECUTE |
Oui | Lie les paramètres et exécute une instruction préparée. |
COM_STMT_CLOSE |
Oui | Ferme une instruction préparée. |
COM_STMT_FETCH |
Non | — |
COM_STMT_SEND_LONG_DATA |
Non | Envoie des données d'objets volumineux avant COM_STMT_EXECUTE. |
Protocole de réplication
| Protocole | Pris en charge | Notes |
|---|---|---|
| Réplication | Non | La réplication du journal binaire MySQL n'est pas prise en charge. |