MySQL 中的 IPv6 地址:数据类型和功能注意事项
MySQL 固有的无法本地存储 IPv6 地址的问题引发了一个问题:为此目的适当的数据类型和函数。作为一种潜在的解决方案,BINARY(16) 已被建议,因为它可以容纳 IPv6 地址的 128 位表示,而无需将其转换为字符串。
但是,目前 MySQL 缺乏转换文本 IPv6 的功能地址到二进制,反之亦然。为了促进这种转换,一种选择是在应用程序中实现它或在 MySQL 中创建用户定义函数 (UDF)。
更新:MySQL 5.6.3 及更高版本
在初始查询之后,MySQL 5.6.3 引入了对 IPv6 地址的支持,从而可以使用 INET6_ATON(expr) 功能。 IPv6 存储的推荐数据类型也已转变为 VARBINARY(16),以包含 IPv6 和 IPv4 地址。
旧 MySQL 版本的替代方案
对于之前的 MySQL 版本到 5.6.3,包括 MariaDB,EXTending MYSQL 5 WITH IPV6 FUNCTIONS 项目提供了一个实现来解决IPv6 功能差距。该扩展提供了在 IPv6 文本和二进制表示之间进行转换的功能。
通过研究这些选项并考虑特定要求,开发人员可以在 MySQL 数据库中有效地存储和管理 IPv6 地址。
以上是如何在MySQL中有效存储和管理IPv6地址?的详细内容。更多信息请关注PHP中文网其他相关文章!