当前位置: 首页 > news >正文

阿里云服务器如何用IP做网站企业网网页

阿里云服务器如何用IP做网站,企业网网页,专业网站建设联系电话,wordpress后台卡目录 限制维度 列数量限制 表的最大行大小 单个列的存储要求 存储引擎的附加限制 功能键部分 行容量限制 MySQL表的内部实现 InnoDB表的最大行大小 超出InnoDB最大行大小的处理 不同存储格式的影响 限制示例 行大小限制示例 InnoDB下 MyISAM下 InnoDB变长情况示…目录 限制维度 列数量限制 表的最大行大小 单个列的存储要求 存储引擎的附加限制 功能键部分 行容量限制 MySQL表的内部实现 InnoDB表的最大行大小 超出InnoDB最大行大小的处理 不同存储格式的影响 限制示例 行大小限制示例 InnoDB下 MyISAM下 InnoDB变长情况示例 MyISAM变长情况示例 行大小限制示例 MySQL是一种常用的关系型数据库管理系统广泛用于Web应用程序的开发和数据存储。在使用MySQL的过程中了解表格列数和行大小的限制是至关重要的因为它们直接影响到数据库的设计和性能。本文将深入探讨MySQL中列数和单个行大小的限制。 限制维度 列数量限制 MySQL对每个表设置了硬限制即每个表最多有4096列但对于给定的表实际最大列数可能会更少。确切的列限制取决于多个因素 表的最大行大小 表的最大行大小限制了列数可能还包括列的大小因为所有列的总长度不能超过这个大小。有关更多信息请参阅行大小限制。 单个列的存储要求 单个列的存储要求会限制适应给定最大行大小的列数。不同数据类型的存储要求取决于存储引擎、存储格式和字符集等因素。 存储引擎的附加限制 存储引擎可能会施加额外的限制进一步限制表的列数。例如InnoDB对每个表有一个1017列的限制。 功能键部分 功能键部分“CREATE INDEX Statement”被实现为隐藏的虚拟生成的存储列因此表索引中的每个功能键部分都计入表的总列限制。 行容量限制 给定表的行容量大小由多个因素决定 MySQL表的内部实现 MySQL表的内部实现对行的最大大小设定了一个限制即使存储引擎能够支持更大的行。BLOB和TEXT列仅对行大小限制贡献了9到12字节因为它们的内容存储在行的其余部分之外。 InnoDB表的最大行大小 对于InnoDB表其最大行大小适用于存储在数据库页面内的本地数据对于4KB、8KB、16KB和32KB的innodb_page_size设置最大行大小略小于页面的一半。例如默认的16KB InnoDB页面大小的最大行大小略小于8KB。对于64KB页面最大行大小略小于16KB。 超出InnoDB最大行大小的处理 如果包含变长列的行超过了InnoDB最大行大小InnoDB会选择将变长列存储在页面外直到行适应InnoDB行大小限制。存储在本地的存储在页面外的可变长度列的数据量因行格式而异。 不同存储格式的影响 不同的存储格式使用不同数量的页面头部和尾部数据这会影响可用于行的存储量 InnoDB行格式MyISAM存储格式 限制示例 行大小限制示例 MySQL的最大行大小限制为65,535字节以下是对InnoDB和MyISAM示例的演示。尽管存储引擎可能支持更大的行但这个限制是强制执行的与存储引擎无关。 InnoDB下 mysql CREATE TABLE t (a VARCHAR(10000), b VARCHAR(10000),c VARCHAR(10000), d VARCHAR(10000), e VARCHAR(10000),f VARCHAR(10000), g VARCHAR(6000)) ENGINEInnoDB CHARACTER SET latin1; ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs在InnoDB表中将列更改为TEXT成功进行的原因是这样的变更避免了MySQL的65,535字节行大小限制并且InnoDB对可变长度列的页外存储也规避了InnoDB行大小限制。 mysql CREATE TABLE t (a VARCHAR(10000), b VARCHAR(10000),c VARCHAR(10000), d VARCHAR(10000), e VARCHAR(10000),f VARCHAR(10000), g TEXT(6000)) ENGINEInnoDB CHARACTER SET latin1; Query OK, 0 rows affected (0.02 sec)MyISAM下 mysql CREATE TABLE t (a VARCHAR(10000), b VARCHAR(10000),c VARCHAR(10000), d VARCHAR(10000), e VARCHAR(10000),f VARCHAR(10000), g VARCHAR(6000)) ENGINEMyISAM CHARACTER SET latin1; ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs在以下的MyISAM示例中将列更改为TEXT可以避免65,535字节的行大小限制并且允许操作成功进行因为BLOB和TEXT列仅对行大小贡献了9到12字节。 mysql CREATE TABLE t (a VARCHAR(10000), b VARCHAR(10000),c VARCHAR(10000), d VARCHAR(10000), e VARCHAR(10000),f VARCHAR(10000), g TEXT(6000)) ENGINEMyISAM CHARACTER SET latin1; Query OK, 0 rows affected (0.02 sec)InnoDB变长情况示例 可变长度列的存储包括长度字节这些字节计入行大小。例如一个VARCHAR(255) CHARACTER SET utf8mb3列占用两个字节来存储值的长度因此每个值最多可以占用767字节。 以下是创建表t1的语句成功的原因是这些列需要32,765 2字节和32,766 2字节总大小在65,535字节的最大行大小范围内 mysql CREATE TABLE t1(c1 VARCHAR(32765) NOT NULL, c2 VARCHAR(32766) NOT NULL)ENGINE InnoDB CHARACTER SET latin1; Query OK, 0 rows affected (0.02 sec)创建表t2的语句失败尽管列的长度在65,535字节的最大长度范围内但仍需要额外的两个字节来记录长度导致行大小超过了65,535字节 mysql CREATE TABLE t2(c1 VARCHAR(65535) NOT NULL)ENGINE InnoDB CHARACTER SET latin1; ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs减小列的长度至65,533或更低可以使创建表的操作成功。例如 mysql CREATE TABLE t2(c1 VARCHAR(65533) NOT NULL)ENGINE InnoDB CHARACTER SET latin1; Query OK, 0 rows affected (0.01 sec)MyISAM变长情况示例 对于MyISAM表NULL列需要额外的空间来记录它们的值是否为NULL。每个NULL列需要额外的一位四舍五入到最近的字节。 创建表t3的语句失败因为MyISAM除了需要为可变长度列的长度字节分配空间外还需要为NULL列分配空间导致行大小超过了65,535字节 mysql CREATE TABLE t3(c1 VARCHAR(32765) NULL, c2 VARCHAR(32766) NULL)ENGINE MyISAM CHARACTER SET latin1; ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs行大小限制示例 InnoDB限制行大小对于存储在数据库页面内的本地数据略小于4KB、8KB、16KB和32KB的innodb_page_size设置的一半并且略小于64KB页面的16KB。 以下是创建表t4的语句由于定义的列超过了16KB InnoDB页面的行大小限制因此操作失败 mysql CREATE TABLE t4 (c1 CHAR(255),c2 CHAR(255),c3 CHAR(255),c4 CHAR(255),c5 CHAR(255),c6 CHAR(255),c7 CHAR(255),c8 CHAR(255),c9 CHAR(255),c10 CHAR(255),c11 CHAR(255),c12 CHAR(255),c13 CHAR(255),c14 CHAR(255),c15 CHAR(255),c16 CHAR(255),c17 CHAR(255),c18 CHAR(255),c19 CHAR(255),c20 CHAR(255),c21 CHAR(255),c22 CHAR(255),c23 CHAR(255),c24 CHAR(255),c25 CHAR(255),c26 CHAR(255),c27 CHAR(255),c28 CHAR(255),c29 CHAR(255),c30 CHAR(255),c31 CHAR(255),c32 CHAR(255),c33 CHAR(255)) ENGINEInnoDB ROW_FORMATDYNAMIC DEFAULT CHARSET latin1; ERROR 1118 (42000): Row size too large ( 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
http://www.w-s-a.com/news/139893/

相关文章:

  • 南京做网站dmooo地方网站需要什么手续
  • 网站开发合同有效期omeka wordpress对比
  • 杭州设计网站的公司广州网站改版领军企业
  • 网站备案系统苏州网站设计网站开发公司
  • 怎么样做微网站著名企业vi设计
  • 三分钟做网站网页设计心得体会100字
  • 网站建设支付宝seo建站是什么
  • 常州做网站的 武进学雷锋_做美德少年网站
  • 怎样建网站赚钱贵州seo和网络推广
  • 创建网站的工具站内seo优化
  • 网站特效 站长查询网网站
  • 百度移动端网站网站建设设计思想
  • 青岛建设官方网站南宁制作企业网站
  • 校园网站建设管理工作制度大网站开发费用
  • 做logo赚钱的网站分类网站 模板
  • 网站建设完成报告织梦网站怎么做备份
  • 邯郸市城乡建设管理局网站vimwiki wordpress
  • 如何修改wordpress站名如何制作公司网站
  • 宁波网站建设与推广方案网站有了备案号之后能做什么
  • 汕头手机端建站模板pinterest app下载
  • 网站主机免费宁波网站建设优化诊断
  • 吧网站做软件的软件下载简单的ui界面制作
  • 陕西网站制作公司网页制作与设计代码
  • 做网站行情郑州微信网站开发
  • 河间网站建设制作null wordpress theme
  • h5网站制作网站开发网站建设文翻译工作
  • 网站建设 税种秦皇岛哪有网站优化公司
  • 专业开发网站设计找人做网页需要多少钱
  • 手机购物网站 建站网站建设网站制作网站设计
  • 基于iview的网站开发模板小程序制作需要什么语言