So speichern Sie IPv6-Adressen in MySQL
Frage:
MySQL fehlt derzeit eine native Funktion zum Speichern von IPv6-Adressen. Was ist der empfohlene Datentyp und Ansatz zum Speichern von IPv6-Adressen in MySQL?
Antwort:
Datentyp:BINARY(16)
Dieser Datentyp eignet sich effizient zum Speichern von Binärdaten und eignet sich daher für IPv6-Adressen, bei denen es sich um 128-Bit-Binäradressen handelt Werte.
Funktionen:
MySQL 5.6.3 :
- INET6_ATON(expr): Konvertiert einen Text IPv6-Adresse in eine binäre Darstellung.
- INET6_NTOA(expr): Konvertiert eine binäre IPv6-Adresse in eine Textdarstellung.
Für ältere MySQL/MariaDB-Versionen:
- Sie können Ihre eigenen Funktionen erstellen, um zwischen ihnen zu konvertieren Text- und Binärdarstellungen von IPv6-Adressen. Eine benutzerdefinierte Implementierung finden Sie im Artikel „ERWEITERN VON MYSQL 5 MIT IPV6-FUNKTIONEN“.
Tipps:
- Wenn Sie nur mit IPv6 arbeiten Adressen können Sie mit BINARY(16) im Vergleich zu VARBINARY(16) ein Byte Speicherplatz sparen. VARBINARY(16) ist jedoch vielseitiger und sowohl mit IPv6- als auch IPv4-Adressen kompatibel.
- Erwägen Sie die Verwendung einer Bibliothek oder eines Moduls eines Drittanbieters in Ihrer Anwendung, um die Manipulation von IP-Adressen zu handhaben.
Das obige ist der detaillierte Inhalt vonWie speichert man IPv6-Adressen effizient in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!