ホームページ >データベース >mysql チュートリアル >MySQL に IPv6 アドレスを保存する最良の方法は何ですか?
MySQL への IPv6 アドレスの保存: DECIMAL(39,0) と VARBINARY(16)
IPv6 の保存という課題に直面したときMySQL でアドレスを使用する場合、開発者は多くの場合、DECIMAL(39,0) と 2*BIGINT の 2 つのオプションを検討します。どちらにも利点がありますが、以前の両方の方法に比べて利点がある新しいソリューションが登場しました。
DECIMAL(39,0) vs. 2*BIGINT
DECIMAL(39,0) の利点:
DECIMAL(39,0) の欠点:
VARBINARY(16)
MySQL の最近のバージョンでは、VARBINARY(16) が IPv6 アドレスを保存するための推奨方法となっています。 DECIMAL(39,0) と 2*BIGINT の両方に比べて、いくつかの利点があります。
変換関数
IPv6 アドレスの 2 進表現と 10 進表現の間で変換するには、次の PHP 関数を使用できます。
結論
MySQL に IPv6 アドレスを保存するには、スペース効率、高速なインデックス作成、およびオーバーフローの問題がないため、VARBINARY(16) が推奨されるソリューションとなっています。 DECIMAL(39,0) と 2*BIGINT はかつては一般的なメソッドでしたが、現在では VARBINARY(16) がパフォーマンスと機能の最適なバランスを提供します。
以上がMySQL に IPv6 アドレスを保存する最良の方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。