티스토리 뷰
IP 주소를 데이터베이스에 저장시 그대로 저장 하는것 보다는 효율적이라고 하여 변경 하여 저장.
암호화 같은 것이 아닌, varchar 가 아닌 unsigned int 나 number 형식을 이용 하여 효율을 높이는 형태.
-- MySQL : IP -> 숫자
SQL> SELECT INET_ATON('192.168.0.111') AS IP_NUM;
결과 : 3232235631
-- MySQL : 숫자 -> IP
SQL> SELECT INET_NTOA(3232235631) AS IP_STR;
결과 : 192.168.0.111
-- Oracle : IP -> 숫자
SQL> SELECT REGEXP_SUBSTR(IP_ADDR, '[^.]+', 1, 1) * 256 * 256 * 256
+ REGEXP_SUBSTR(IP_ADDR, '[^.]+', 1, 2) * 256 * 256
+ REGEXP_SUBSTR(IP_ADDR, '[^.]+', 1, 3) * 256
+ REGEXP_SUBSTR(IP_ADDR, '[^.]+', 1, 4) AS IP_NUM
FROM (SELECT '192.168.0.111' AS IP_ADDR FROM DUAL);
결과 : 3232235631
-- Oracle : 숫자 -> IP
SQL> SELECT FLOOR(IP_NUM/256/256/256)
|| '.' || FLOOR(MOD(IP_NUM, 256*256*256)/256/256)
|| '.' || FLOOR(MOD(IP_NUM, 256*256)/256)
|| '.' || MOD(IP_NUM, 256) AS IP_STR
FROM (SELECT 3232235631 AS IP_NUM FROM DUAL);
결과 : 192.168.0.111
- Total
- Today
- Yesterday
- JavaScript
- Linux
- Flutter
- MySQL
- Spring
- HTTP
- devel
- gpkiapi
- Java
- 맛집
- json parse
- food
- place
- Review
- Compile
- devtools
- Android
- Mobile
- dart
- SSL
- development
- Security
- 엘리스센터
- springboot
- kotlin
- TIP
- web
- Fun
- samba
- ssh
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |