sql >> Databáze >  >> RDS >> Mysql

Ukládání IPv6 adres v MySQL

Co třeba:

BINARY(16)

To by mělo být dostatečně účinné.

V současné době neexistuje žádná funkce pro převod textových adres IPv6 z/do binárních na serveru MySQL, jak je uvedeno v této zprávě o chybě. Buď to musíte udělat ve své aplikaci, nebo případně vytvořit UDF (User-Defined Function) na serveru MySQL, abyste to udělali.

AKTUALIZACE:

MySQL 5.6.3 má podporu pro adresy IPv6, viz následující:"INET6_ATON(expr) ".

."

Datový typ je VARBINARY(16) místo BINARY(16) jak jsem navrhoval dříve. Jediným důvodem je to, že funkce MySQL fungují pro adresy IPv6 i IPv4. BINARY(16) je v pořádku pro ukládání pouze adres IPv6 a šetří jeden bajt. VARBINARY(16) by měl být použit při práci s adresami IPv6 i IPv4.

Implementace pro starší verze MySQL a MariaDB, viz následující:"ROZŠÍŘENÍ MYSQL 5 O FUNKCE IPV6 ".

."

  1. Jak používat nativní heslo s MySQL 5.7

  2. Jak mohu manipulovat s relevanci fulltextového vyhledávání MySQL, aby bylo jedno pole „hodnotnější“ než jiné?

  3. SQLite v Androidu:očekávané cizí klíče a <tabulkové omezení>

  4. FATAL:ověření hesla selhalo pro uživatele postgres (postgresql 11 s pgAdmin 4)