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

网站建设都需要提供什么资料百度实时热点排行榜

网站建设都需要提供什么资料,百度实时热点排行榜,自己免费做网站(二),网页版qq在线我们知道 Compact 行格式在 CHAR(M) 类型的列中存储数据的时候还挺麻烦,分变长字符集和定长字符集的情况,而在 Redundant 行格式中十分干脆,不管该列使用的字符集是啥,只要是使用 CHAR(M) 类型,占用的真实数据空间就是…

我们知道 Compact 行格式在 CHAR(M) 类型的列中存储数据的时候还挺麻烦,分变长字符集和定长字符集的情况,而在 Redundant 行格式中十分干脆,不管该列使用的字符集是啥,只要是使用 CHAR(M) 类型,占用的真实数据空间就是该字符集表示一个字符最多需要的字节数和 M 的乘积。比方说使用 utf8 字符集的 CHAR(10) 类型的列占用的真实数据空间始终为 30 个字节,使用 gbk 字符集的 CHAR(10) 类型的列占用的真实数据空间始终为 20 个字节。由此可以看出来,使用 Redundant 行格式的 CHAR(M) 类型的列是不会产生碎片的。

4.3.4 行溢出数据

4.3.4.1 VARCHAR(M)最多能存储的数据

我们知道对于 VARCHAR(M) 类型的列最多可以占用 65535 个字节。其中的 M 代表该类型最多存储的字符数量,如果我们使用 ascii 字符集的话,一个字符就代表一个字节,我们看看 VARCHAR(65535) 是否可用:

从报错信息里可以看出, MySQL 对一条记录占用的最大存储空间是有限制的,除了 BLOB 或者 TEXT 类型的列之外,其他所有的列(不包括隐藏列和记录头信息)占用的字节长度加起来不能超过 65535 个字节。所以 MySQL 服务器建议我们把存储类型改为 TEXT 或者 BLOB 的类型。这个 65535 个字节除了列本身的数据之外,还包括一些其他的数据( storage overhead ),比如说我们为了存储一个 VARCHAR(M) 类型的列,其实需要占用3部分存储空间:

真实数据

真实数据占用字节的长度

NULL 值标识,如果该列有 NOT NULL 属性则可以没有这部分存储空间

如果 VARCHAR 类型的列有 NOT NULL 属性,那最多只能存储 65533 个字节的数据,因为真实数据的长度可能占用2个字节,不需要 NULL 值标识:

4.3.4.2 记录中的数据太多产生的溢出

我们以 ascii 字符集下的 varchar_size_demo 表为例,插入一条记录:

其中的 REPEAT('a', 65532) 是一个函数调用,它表示生成一个把字符 'a' 重复 65532 次的字符串。前边说过, MySQL 中磁盘和内存交互的基本单位是 页 ,也就是说 MySQL 是以 页 为基本单位来管理存储空间的,我们的记录都会被分配到某个 页 中存储。而一个页的大小一般是 16KB ,也就是 16384 字节,而一个 VARCHAR(M) 类型的列就最多可以存储 65532 个字节,这样就可能造成一个页存放不了一条记录的尴尬情况。

在 Compact 和 Reduntant 行格式中,对于占用存储空间非常大的列,在 记录的真实数据 处只会存储该列的一部分数据,把剩余的数据分散存储在几个其他的页中,然后 记录的真实数据 处用20个字节存储指向这些页的地址(当然这20个字节中还包括这些分散在其他页面中的数据的占用的字节数),从而可以找到剩余数据所在的页,如图所示:

从图中可以看出来,对于 Compact 和 Reduntant 行格式来说,如果某一列中的数据非常多的话,在本记录的真实数据处只会存储该列的前 768 个字节的数据和一个指向其他页的地址,然后把剩下的数据存放到其他页中,这个过程也叫做 行溢出 ,存储超出 768 字节的那些页面也被称为 溢出页 。

4.4 总结

1. 页是 MySQL 中磁盘和内存交互的基本单位,也是 MySQL 是管理存储空间的基本单位。

2. 指定和修改行格式的语法如下:

CREATE TABLE 表名 (列的信息) ROW_FORMAT=行格式名称
ALTER TABLE 表名 ROW_FORMAT=行格式名称

3. InnoDB 目前定义了4种行格式

COMPACT行格式

具体组成如图:

Redundant行格式

具体组成如图:

Dynamic和Compressed行格式

这两种行格式类似于 COMPACT行格式 ,只不过在处理行溢出数据时有点儿分歧,它们不会在记录的真实数据处存储字符串的前768个字节,而是把所有的字节都存储到其他页面中,只在记录的真实数据处存储其他页面的地址。

另外, Compressed 行格式会采用压缩算法对页面进行压缩。

4. 一个页一般是 16KB ,当记录中的数据太多,当前页放不下的时候,会把多余的数据存储到其他页中,这种现象称为 行溢出 。

http://www.fp688.cn/news/144743.html

相关文章:

  • 网页与网站的区别与联系网站制作流程和方法
  • 织梦网站调节网站今日新闻最新头条10条摘抄
  • 朝阳建设网站百度公司排名多少
  • 好的平面设计作品网站百度app广告
  • 现在由哪些网站可以做外链查询网官网
  • 珠海门户网站建设哪家好关键词异地排名查询
  • 建设书法网站的主题是最好的推广平台排名
  • 做国外服务器网站吗seo怎么才能做好
  • 公司网站地图怎么做公司软文
  • 私人网站设计公司公司运营培训班学费大概多少
  • 建立网站的意义惠州seo网站排名
  • 上海做网站 公司有哪些重庆百度推广优化
  • 传奇免费网站建设运营推广怎么做
  • 服务平台网站设计百度推广没有一点效果
  • 当牛做吗网站源代码分享社区营销推广活动方案
  • 海外直购网站建设方案书范文seo排名赚钱
  • 做海外贸易网站互联网营销具体做什么
  • 网站建设价格槽闸阀深圳媒体网络推广有哪些
  • 武汉网站开发公司哪家好百度指数专业版价格
  • 工信部域名备案查询官网百度推广和优化哪个好
  • 免费的网站推广怎么做效果好?青岛网站推广企业
  • 淘宝seo是指谷歌seo培训
  • 北京专业网站优化成都最好的seo外包
  • 淘宝的网站建设的目标灰色行业怎么推广引流
  • 手机网站制作方案百度品牌
  • 扬州网络推广哪家好爱站网站seo查询工具
  • 武昌做网站多少钱设计模板网站
  • 网站开发排行榜枫树seo网
  • 广州购网站建设seo优化排名
  • 网站建设方案确认表广告加盟