Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में IPv6 एड्रेस को स्टोर करना

कैसा रहेगा:

BINARY(16)

यह काफी प्रभावी होना चाहिए।

वर्तमान में MySQL सर्वर में टेक्स्ट IPv6 पतों को/से बाइनरी में बदलने के लिए कोई फ़ंक्शन नहीं है, जैसा कि उस बग रिपोर्ट में बताया गया है। ऐसा करने के लिए आपको या तो इसे अपने एप्लिकेशन में करना होगा या संभवतः MySQL सर्वर में एक UDF (यूजर-डिफाइंड फंक्शन) बनाना होगा।

अद्यतन करें:

MySQL 5.6.3 में IPv6 पतों के लिए समर्थन है, निम्नलिखित देखें:"INET6_ATON(expr) ".

डेटा प्रकार VARBINARY(16) . है BINARY(16) . के बजाय जैसा कि मैंने पहले सुझाव दिया था। इसका एकमात्र कारण यह है कि MySQL फ़ंक्शन IPv6 और IPv4 दोनों पतों के लिए कार्य करता है। BINARY(16) केवल IPv6 पतों को संग्रहीत करने के लिए ठीक है और एक बाइट बचाता है। VARBINARY(16) IPv6 और IPv4 दोनों पतों को संभालते समय उपयोग किया जाना चाहिए।

MySQL और MariaDB के पुराने संस्करणों के लिए एक कार्यान्वयन, निम्नलिखित देखें:"आईपीवी6 फंक्शन के साथ MYSQL 5 का विस्तार करना ".



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक सबक्वेरी में बाहरी क्वेरी की तालिकाओं का संदर्भ देना

  2. JSON_ARRAYAGG () - MySQL में एक क्वेरी की पंक्तियों से एक JSON सरणी बनाएं

  3. SQL:परिणाम पंक्ति को कई बार दोहराएं, और पंक्तियों को क्रमांकित करें

  4. ओपनशिफ्ट में डीबी कनेक्शन कैसे खोलें?

  5. सबसे लोकप्रिय श्रेणी खोजने के लिए एसक्यूएल