Comment stocker les adresses IPv6 dans MySQL
Question :
MySQL n'a actuellement pas de version native fonction de stockage des adresses IPv6. Quel est le type de données recommandé et l'approche pour stocker les adresses IPv6 dans MySQL ?
Réponse :
Type de données : BINARY(16)
Ce type de données est efficace pour stocker des données binaires, ce qui le rend adapté aux adresses IPv6, qui sont binaires de 128 bits. valeurs.
Fonctions :
MySQL 5.6.3 :
- INET6_ATON(expr) : convertit un texte Adresse IPv6 vers une représentation binaire.
- INET6_NTOA(expr) : Convertit une adresse IPv6 binaire en représentation textuelle.
Pour les anciennes versions de MySQL/MariaDB :
- Vous pouvez créer vos propres fonctions pour convertir entre représentations textuelles et binaires des adresses IPv6. Reportez-vous à l'article « EXTENSION DE MYSQL 5 AVEC LES FONCTIONS IPV6 » pour une implémentation personnalisée.
Conseils :
- Si vous travaillez uniquement avec IPv6 adresses, vous pouvez utiliser BINARY(16) pour économiser un octet de stockage par rapport à VARBINARY(16). Cependant, VARBINARY(16) est plus polyvalent et compatible avec les adresses IPv6 et IPv4.
- Envisagez d'utiliser une bibliothèque ou un module tiers dans votre application pour gérer la manipulation des adresses IP.
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!