MySQL 目前缺乏儲存 IPv6 位址的特定函數。此問題解決了此任務的建議方法。
建議資料型別
儲存 IPv6 位址的建議資料型別是 BINARY(16)。此資料類型有效地表示二進位格式的 128 位元 IPv6 位址。
插入 IPv6 位址的函數
不幸的是,MySQL 沒有提供內建函數將文字 IPv6 位址轉換為二進位位址。因此,您需要在應用程式中實現此轉換或在 MySQL 中建立使用者定義函數 (UDF) 來處理此任務。
MySQL 5.6.3 及更高版本
MySQL 5.6.3 引入了對 IPv6 位址的支援。用於儲存 IPv6 位址的資料類型現在為 VARBINARY(16),並且可以使用 INET6_ATON(expr) 函數將文字 IPv6 位址轉換為二進位。
MySQL 5.6.3 之前的版本和MariaDB
對於舊版的MySQL 和MariaDB,您可以使用「擴充MYSQL」中所述的實作5 具有IPV6 功能」以新增IPv6 支援。此解決方案提供了用於在文字和二進位IPv6 位址之間進行轉換的UDF。
以上是如何在 MySQL 中最好地儲存 IPv6 位址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!