Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Que tipo devo armazenar endereços IP para MySQL?


Presumo que você esteja interessado apenas em endereços IPv4, não em IPv6.

Eu usaria um INT UNSIGNED para a coluna e, em seguida, use INET_ATON e INET_NTOA para converter entre a representação textual e o valor int.
mysql> SELECT INET_ATON('192.168.10.50');
+----------------------------+
| INET_ATON('192.168.10.50') |
+----------------------------+
|                 3232238130 |
+----------------------------+
1 row in set (0.00 sec)

mysql> SELECT INET_NTOA(3232238130);
+-----------------------+
| INET_NTOA(3232238130) |
+-----------------------+
| 192.168.10.50         |
+-----------------------+
1 row in set (0.00 sec)