最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

MyISAM-性能与特性的折中(1)_MySQL

来源:懂视网 责编:小采 时间:2020-11-09 17:36:04
文档

MyISAM-性能与特性的折中(1)_MySQL

MyISAM-性能与特性的折中(1)_MySQL:MyISAM是MySQL默认的存储引擎。MyISAM在性能和特性上提供了一个很好的折中的解决办法。特性有,全文索引,压缩,GIS函数。MyISAM并不支持事物和行锁。 存储 MyISAM把表存储在两个文件中。一个数据文件,一个索引文件。扩展名为.MYD和.MYI。MyIS
推荐度:
导读MyISAM-性能与特性的折中(1)_MySQL:MyISAM是MySQL默认的存储引擎。MyISAM在性能和特性上提供了一个很好的折中的解决办法。特性有,全文索引,压缩,GIS函数。MyISAM并不支持事物和行锁。 存储 MyISAM把表存储在两个文件中。一个数据文件,一个索引文件。扩展名为.MYD和.MYI。MyIS

MyISAM是MySQL默认的存储引擎。MyISAM在性能和特性上提供了一个很好的折中的解决办法。特性有,全文索引,压缩,GIS函数。MyISAM并不支持事物和行锁。
  存储

  MyISAM把表存储在两个文件中。一个数据文件,一个索引文件。扩展名为.MYD和.MYI。MyISAM的格式是平台独立的。意思就是你可以把这两个文件拷贝在任意的平台上。

  MyISAM可以包含动态或静态列。MySQL根据表的定义来决定使用哪种格式。MyISAM表的行数限制在于,硬盘空间和操作系统所允许存在的最大文件。

  MyISAM表在MySQL5.0中,默认的是动态长度的行,以及可操作256TB数据,使用6字节的指针指向数据记录。早期的MySQL默认指针为4字节,支持4GB的数据。所有的MySQL版本支持的指针大小上限为8字节。为了改变MyISAM表的指针大小,你必须指定MAX_ROWS,AVG_ROW_LENGTH的值。这两个数据指出了你所需要空间的总数。


  CREATE TABLE mytable (
  a    INTEGER  NOT NULL PRIMARY KEY,
  b    CHAR(18) NOT NULL
  ) MAX_ROWS = 1000000000 AVG_ROW_LENGTH = 32;


  这个例子中,我们告诉MySQL对这个表分配空间至少是32G。看看MySQL到底分配了多少。我们来看看。


  mysql> SHOW TABLE STATUS LIKE 'mytable' G
  *************************** 1. row ***************************
  Name: mytable
  Engine: MyISAM
  Row_format: Fixed
  Rows: 0
  Avg_row_length: 0
  Data_length: 0
  Max_data_length: 98784247807
  Index_length: 1024
  Data_free: 0
  Auto_increment: NULL
  Create_time: 2002-02-24 17:36:57
  Update_time: 2002-02-24 17:36:57
  Check_time: NULL
  Create_options: max_rows=1000000000 avg_row_length=32
  Comment:
  1 row in set (0.05 sec)


  我们看到了Create_options的值,是我们所设置的。也看到了Max_data_length的值接近了91GB。你可以通过ALTER TABLE 语句来修改指针的大小。但是这样的操作会使整个表和它的索引重写。会花费大量的时间。

文档

MyISAM-性能与特性的折中(1)_MySQL

MyISAM-性能与特性的折中(1)_MySQL:MyISAM是MySQL默认的存储引擎。MyISAM在性能和特性上提供了一个很好的折中的解决办法。特性有,全文索引,压缩,GIS函数。MyISAM并不支持事物和行锁。 存储 MyISAM把表存储在两个文件中。一个数据文件,一个索引文件。扩展名为.MYD和.MYI。MyIS
推荐度:
标签: 存储 mysql 特性
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top