mysql ipv6 字段_MySQL中ipv6地址用什么类型存储?
ipv6逐渐普及了,我们的服务要支持用户通过ipv6和iPv4地址请求,存储用户来源IP势在必行。
pgsql中有ip地址类型,mysql没有。
mysql提供的方案是用二进制存储用函数做转换为人可读字符串
不过这些对于编程来说增加了复杂度,而且还无法与Ipv4地址存储通用 ,因此简单实现的方法就是varchar了。varchar(64)就足够了。
具体分析
ipv4地址32位,有2^32个。我们常见的形式是这样的
255.255.255.255 (十进制表示)只有数字和.符号,最长字符串长度为15
ipv6地址128位,有2^128个。我们常见的形式是这样的
2001:0db8:0000:0000:0000:ff00:0042:8329
IPv6地址通常写成八组,每组四个十六进制数字,每组由冒号(:)分隔。
那最多39个字符。
但是看posix的中定义的IPv6地址字符串形式最大长度为46字节,其中包含结尾的null,所以最大长度为45。varchar(45)足矣,不过varchar是变长字符串,我们稍微给长一点也没问题。
#define INET6_ADDRSTRLEN 46
mysql ipv6 字段_MySQL中ipv6地址用什么类型存储?相关推荐
- mysql 排除字段_mysql中select某表时排除个别字段,shell实现
在使用mysql的日常生活中,偶尔会有一些奇奇怪怪的需求,例如实现类似:select * EXCEPT password,address from users; 要想从users信息表中查询用户信息, ...
- c 读取mysql 时间字段_MySQL中的时间字段的几种数据类型比较
1.序言 最近在项目开发时,对于MySQL数据库中的有关时间的字段该选用何种类型,引发了一些争论.所以做了一些简单的研究,看了一些blog,和官方文档.最后做出一个自己的总结. 2.类型比较 IN ...
- mysql blob 字段_MySQL中TEXT与BLOB字段类型的区别
在MySQL中有两个字段类型容易让人感觉混淆,那就是TEXT与BLOB,特别是自己写博客程序的博主不知道改为自己的博客正文字段选择TEXT还是BLOB类型. 下面给出几点区别: 一.主要差别 TEXT ...
- c 读取mysql 时间字段_Mysql 中的日期时间字符串查询 c_G17
一.将数据库中的Date格式的数据,或者指定日期的字符串格式化为想要的样式 DATE_FORMAT (date, format)能根据格式串format 格式化日期或日期和时间值date,返回结果字符 ...
- mysql 中序号要怎么写_如何在mysql的字段ID中插入自动编号?
如何在mysql的字段ID中插入自动编号?我已经有idmember作为主键 这是我尝试过的代码,请更正它 UPDATE member SET id = Row_number()over ORDER B ...
- mysql索引三个字段查询两个字段_mysql中关于关联索引的问题——对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引?...
情况描述:在MySQL的user表中,对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引? 根据查询字段的位置不同来决定,如查询a, a,b a,b, ...
- mysql 关联索引_mysql中关于关联索引的问题——对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引?...
情况描述:在MySQL的user表中,对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引? 根据查询字段的位置不同来决定,如查询a, a,b a,b, ...
- mysql索引三个字段查询两个字段_mysql中关于关联索引的问题——对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引?......
情况描述:在MySQL的user表中,对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引? 根据查询字段的位置不同来决定,如查询a, a,b a,b, ...
- mysql所以字段_MySQL|mysql-索引
原标题:MySQL|mysql-索引 1.索引是什么 1.1索引简介 索引是表的目录,是数据库中专门用于帮助用户快速查询数据的一种数据结构.类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存 ...
最新文章
- 算法工程师的落地能力具体指的是什么?
- 你现在还在使用刷脸支付吗?不,刷手支付已来!!!不侵犯隐私、秒速支付...
- 成为DBA的艰辛之路————需要掌握一笔不小的知识
- 鸟哥的Linux私房菜(基础篇)-第二章、 Linux 如何学习(二.5. 重点回顾)
- 统计自然语言处理笔记
- Spring TX源码分析
- JavaSE(二十一)——栈和队列、栈和堆
- 【LoadRunner】安装LoadRunner时提示缺少vc2005_sp1_with_atl_fix_redist解决方案
- Coursera自动驾驶课程第18讲:The Planning Problem
- 【响应式编程的思维艺术】 (1)Rxjs专题学习计划
- Java学习笔记2.2.1 常量与变量 - 变量
- Redmi K50电竞版将全球首发超宽频马达:安卓阵营最大 售价不便宜
- MySQL 执行原生sql
- eclipse 背景颜色
- VS2017 CUDA编程学习10:纹理内存
- 背包问题九讲 2.0 beta1.1
- 打砖块游戏-第12届蓝桥杯Scratch省赛1真题第5题
- 沈阳农业大学计算机专业排名,2019沈阳农业大学专业排名
- linux用户的主要配置文件,Linux用户和组的主要配置文件及其相关命令
- 【Luogu1879】玉米田
热门文章
- 零基础该如何学好3D建模,学些什么,达到什么标准才能入行?
- 该怎么选择便宜和贵的SSL证书
- 数据安全传输平台项目笔记
- DNS服务详解(解析+搭建)
- Oracle 12C 基础知识与使用入门(修订版)
- 俄罗斯方块(Tetris)
- Vue中error ‘XXXXX‘ is not defined no-undef解决办法
- 2019年十大让人欲罢不能的消费潮流 | 财见年终观察
- 前端实现导入PPT在线编辑
- vue init webpack缺少标识符_Vue脚手架热更新技术探秘