iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL列长度限制有哪些
  • 218
分享到

MySQL列长度限制有哪些

2024-04-02 19:04:59 218人浏览 八月长安
摘要

本篇文章给大家分享的是有关Mysql列长度限制有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  超长sql怎么查询  max_packe

本篇文章给大家分享的是有关Mysql列长度限制有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

  超长sql怎么查询

  max_packet_size

  这个东西是用来限制mysql客户端和服务器通信数据包的长度的,比如一个查询为“select*fromuserwhere1”,那么这个长度仅仅几十个字节,所以不会超标。在绝大多情况下,我们很难会超过mysql的默认限制1M(可以想象一下,1M的SQL语句还是很长的)。这里插一句,看到该文之后,我终于清楚我当初用PEARDB的INSERT插入数据失败的原因了,很可能就是数据长度超标。对于MySQL来说,如果查询MySQL字符串的大小超过了这个限制,mysql将不会执行任何查询操作

  如果访问者有可能控制你的sql长度,那么你的程序可能会受到攻击。哪些情况访问者可能控制sql的长度呢,比如不限制关键字长度的搜索。还有可能就是你的程序如果要将用户的登录作为日志启用,总之凡是涉及到超长sql查询的地方,一定得小心检查自己的sql,防止超长而查询失效。不过说实在的,本人认为这个问题倒不是多大,数据库光里管理员也可以自行设置MySQL的max_packet_size的长度,或者在处理可能超长的SQL查询的时候做一个长度判断。

  MySQL列长度限制有哪些

  这个是该篇文章的重点。MySQL对于插入的字符串,如果长度超过了数据表限制的长度,MySQL将会截取前面部分MySQL字符串插入数据库中,而不会将错误报给WEB程序。对于粗心的程序员,这个问题可能会导致程序的漏洞,其实目前的Wordpress有很多限制,通过这个漏洞攻击应该没有任何作用。下面是原作者的几个假设,如果同时满足这几个条件,获取一个站点的用户名是相当容易的事情,幸运的是目前的wordpress并不太可能会同时满足下面的条件:

  该web应用允许用户注册(开放注册的wordpress满足此条件);

  超级管理员的用户名已知的,比如admin,这样方便攻击者寻找目标(可怜wordpress也满足)

  MySQL使用的是默认的配置(估计大多数都满足)

  注册新用户的时候,程序没有对用户名的长度给予限制(我测试过,wordpress也满足)

  用户名被限制在16个字符(这个和上面的没有关系,仅仅是方便举例)

  下面这个是攻击者是怎么攻击的:

  首先攻击者用已知的超级管理员id如admin注册,那么这个时候程序就会用

  (show/hide)plaintext

  SELECT*FROMuserWHEREusername='admin'

  来检查该ID是否已经存在,如果存在,这不允许注册,当然,攻击者尝试注册admin肯定会失败;

  但是如果攻击者用admin X(admin和x之间有11个或以上的空格)来注册呢,按照上面的判断,由于adminx不存在数据库中,所以当然就能注册成功了,事实上wordpress2.6.1之前的版本确实可以这样,由于列长度的限制在16个字符内,所以末尾的x就被截掉了,那么现在数据库中就存在两个一模一样的用户admin了。(旁白:糟糕,那我的程序不是都要去修改。其实没有必要,你只要把ID设置为UNIQUE就可以了,于是乎,下面的问题就和你没有关系了)

  攻击者继续,这个时候攻击者就顺利的注册了admin这个用户名,然后攻击者用admin和自己的密码登录进入账户管理(wordpress即使注册了也无法登陆),由于真正的admin的帐号先于攻击者admin注册,所以在账户信息页面,显示的信息非常有可能就是真正admin的信息,包括密码提示和email等,这个时候攻击者就可以对admin的信息进行任意修改,包括密码和密码找回。

  所以,写web程序的你,是不是该去检查一下自己的程序是否有此类的漏洞呢。

以上就是MySQL列长度限制有哪些,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL列长度限制有哪些

本文链接: https://www.lsjlt.com/news/56790.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL列长度限制有哪些
    本篇文章给大家分享的是有关MySQL列长度限制有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  超长SQL怎么查询  max_packe...
    99+
    2022-10-18
  • MySQL的sql语句长度限制吗
    MySQL的sql语句长度有限制,适用于单个SQL语句的长度以及整个连接中发送的数据包的大小,通常情况下:1、MySQL 5.7版本之前,单个 SQL 语句的长度限制为 64KB;2、MySQL 5.7版本及以后,单个 SQL 语句的长度限...
    99+
    2023-07-25
  • MySQL怎么修改字段长度限制
    要修改MySQL中的字段长度限制,可以使用ALTER TABLE语句。假设要修改表中的字段长度限制,可以按照以下步骤进行操作:1. ...
    99+
    2023-10-23
    MySQL
  • mysql 数据长度最大限制问题
    my.ini文件中没有设置通信缓冲区的最大长度,默认为1M,故而出现以上错误,在mysql安装文件夹下找到my.ini文件(linux是my.cnf文件)。打开后, 在[mysql]下面新增: default-character-set...
    99+
    2014-09-20
    mysql 数据长度最大限制问题
  • MySQL索引长度限制原理解析
    这篇文章主要介绍了MySQL索引长度限制原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 索引 TextField是不支持建立索引的 MySQL对...
    99+
    2022-10-18
  • MySQL ENUM 有哪些限制?
    以下是 MySQL ENUM 的限制 -枚举值不能是表达式我们不能使用表达式作为枚举成员,即使是计算结果为字符串值的表达式。示例例如,我们甚至可以使用 CONCAT 函数这会导致对字符串进行求值。以下查询将不起作用 -mysql> c...
    99+
    2023-10-22
  • 如何修改Mysql中group_concat的长度限制
    在mysql中,有个函数叫“group_concat”,平常使用可能发现不了问题,在处理大数据的时候,会发现内容被截取了,其实MYSQL内部对这个是有设置的,默认不设置的长度是1024,如果我们需要更大,就...
    99+
    2022-10-18
  • mysql如何设置字符串长度限制
    mysql设置字符串长度限制的示例:例如:创建了一张测试表t1里有两个字段id和name,字段类型分别是int 和 varchar(8),varchar(8)的意思:字段name是一个字符串类型,长度是8。可以通过修改命...
    99+
    2022-10-10
  • 解决mysql中group_concat长度限制的方案
    解决mysql中group_concat长度限制的方案 group_concat函数获得group_concat的最大长度两种解决方案 group_concat函数 在mysql中的group_concat函数默认支持的最大...
    99+
    2023-08-17
    mysql 数据库
  • SQLite添加列的限制有哪些
    这篇文章主要为大家展示了“SQLite添加列的限制有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“SQLite添加列的限制有哪些”这篇文章吧。SQLite添...
    99+
    2022-10-19
  • Go 中的数组长度有什么限制?
    Go 是一门强类型的编程语言,它对数组的长度有着明确的限制。在本文中,我们将深入探讨 Go 中数组长度的限制,以及如何在代码中处理超出长度限制的情况。 在 Go 中,数组是一组具有相同类型的元素序列。数组的长度是在定义时确定的,且不能被更改...
    99+
    2023-10-07
    数组 git 日志
  • css长度单位有哪些
    这篇“css长度单位有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“css长度单位有哪...
    99+
    2022-10-19
  • mysql中group_conca函数怎么修改其长度限制
    小编给大家分享一下mysql中group_conca函数怎么修改其长度限制,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!在mysql中,有个函数叫“group_concat”,平常使用可能发现...
    99+
    2022-10-18
  • 使用 MySQL 视图有哪些限制?
    尽管使用视图有多种好处,但使用 MySQL 视图仍存在以下限制 - 无法创建视图视图索引 - 在 MySQL 中,我们无法在视图上创建索引。这是因为当我们针对视图查询数据时,没有使用索引。 MySQL 会使视图无效 - 假设,如果我们删除或...
    99+
    2023-10-22
  • MySQL单表的大小有哪些限制
    本篇内容介绍了“MySQL单表的大小有哪些限制”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  MySQL...
    99+
    2022-10-18
  • MySQL中如何找到列名长度大于5的所有列
    可以使用以下SQL语句来找到列名长度大于5的所有列:sqlSELECT COLUMN_NAMEFROM INFORMATIO...
    99+
    2023-10-20
    MySQL
  • MySQL中如何找到列名长度大于5的所有列?
    使用 HAVING 查找列名长度大于 5 的所有列。这将产生以下输出 -+-------------------+-------------------------+ | TABLE_NAME | COLUMN_NAM...
    99+
    2023-10-22
  • 技术分享 | MySQL 字段长度限制的计算方法
    一、MySQL 限制回顾 之前在《MySQL Text 字段的限制》一文中讲过了关于 MySQL 在 Server 层和 InnoDB 层的限制,但是限制的算法没有详细展开,这里进行补充说明,先回顾一下 MySQL 的两个限制 MySQL...
    99+
    2015-02-24
    技术分享 | MySQL 字段长度限制的计算方法
  • mysql权限有哪些
    小编给大家分享一下mysql权限有哪些,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!               ...
    99+
    2022-10-18
  • MySQL 5.7组复制的要求和限制有哪些
    这期内容当中小编将会给大家带来有关MySQL 5.7组复制的要求和限制有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 限制和要求:1....
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作