设为首页
加为收藏
联系我们
  • 电子商务
  • 软件网络
  • 看天下
  • 营销财经
  • 关闭导航
  • 网络编程
  • 数据库类
  • 关闭导航
  • 网络编程
  • 社交礼仪
  • 数据库类
  • 人文地理
  • 关闭导航
  • 编程工具
  • 电子书籍
  • 关闭导航
  • 生活休闲
  • 演讲讲座
  • 视频教程
  • 经典影视
  • 关闭导航
  • 您的位置: 首页 > 入门教程 > 数据库类 > MySQL

    InnoDB和MyISAM数据存储特性研究

    时间: 2008-09-02  信息来源: IT专家网  作者: 编辑整理  点击数:

    内容提示:InnoDB和MyISAM是MySQL最重要的两种数据存储引擎,两者都可用来存储表和索引,InnoDB的索引和表存储在同一个文件中,MyISAM的索引和表存储在不同文件,但即使多个索引,也共存于一个文件.
     
         3. 实验过程
      --实验用表:mytable3, InnoDB类型。
      表有三个列,52万行数据,后两个列用随机函数产生,重复行很少。都创建了索引。此时该表数据占用空间256MB,索引占用空间240MB,InnoDB表空间914MB。

    mysql> desc mytable3;
      +-------+-----------+------+-----+---------+-------+
      | Field | Type | Null | Key | Default | Extra |
      +-------+-----------+------+-----+---------+-------+
      | id | int(11) | YES | | NULL | |
      | name | char(100) | YES | MUL | NULL | |
      | name2 | char(120) | YES | MUL | NULL | |
      +-------+-----------+------+-----+---------+-------+
      3 rows in set (0.00 sec)
      mysql> select count(*) from mytable3;
      +----------+
      | count(*) |
      +----------+
      | 524288 |
      +----------+
      1 row in set (0.57 sec)
      mysql> select table_name, table_schema, data_length, index_length from information_schema.tables where table_name = 'mytable3';
      +------------+--------------+-------------+--------------+
      | table_name | table_schema | data_length | index_length |
      +------------+--------------+-------------+--------------+
      | mytable3 | testbk | 269271040 | 252706816 |
      +------------+--------------+-------------+--------------+
      1 row in set (0.00 sec)
      [mysql@testlocal data]$ ls -ltr
      total 947188
      drwxr-xr-x 2 mysql mysql 4096 Aug 19 09:53 test
      drwx--x--x 2 mysql mysql 4096 Aug 19 09:53 mysql
      -rw-rw---- 1 mysql mysql 125 Aug 19 10:43 mysql-bin.000001
      -rw-rw---- 1 mysql mysql 125 Aug 19 10:43 mysql-bin.000002
      -rw-rw---- 1 mysql mysql 1086 Aug 19 17:18 mysql-bin.000003
      -rw-rw---- 1 mysql mysql 693 Aug 19 20:51 mysql-bin.000004
      -rw-rw---- 1 mysql mysql 125 Aug 19 20:54 mysql-bin.000005
      -rw-rw---- 1 mysql mysql 125 Aug 19 20:58 mysql-bin.000006
      -rw-rw---- 1 mysql mysql 6 Aug 19 20:59 testlocal.sohu.com.pid
      srwxrwxrwx 1 mysql mysql 0 Aug 19 20:59 mysql.sock
      -rw-rw---- 1 mysql mysql 133 Aug 19 20:59 mysql-bin.index
      -rw-r----- 1 mysql mysql 12432 Aug 21 11:20 testlocal.sohu.com.err
      drwx------ 2 mysql mysql 4096 Aug 21 11:22 testbk
      -rw-rw---- 1 mysql mysql 5010 Aug 21 11:22 mysql-bin.000007
      -rw-r----- 1 mysql mysql 5242880 Aug 21 11:22 ib_logfile1
      -rw-r----- 1 mysql mysql 5242880 Aug 21 11:22 ib_logfile0
      -rw-r----- 1 mysql mysql 958398464 Aug 21 11:22 ibdata1


     --将该表改变类型为MyISAM
      发现InnoDB表空间未回缩,但MyISAM占用磁盘容量减少为仅约8MB。此时该表数据占用空间222MB,索引占用空间8MB,InnoDB表空间914MB。 

    mysql> alter table mytable3 engine myisam;
      Query OK, 524288 rows affected (8.51 sec)
      Records: 524288 Duplicates: 0 Warnings: 0
      mysql> select table_name, table_schema, data_length, index_length from information_schema.tables where table_name = 'mytable3';
      +------------+--------------+-------------+--------------+
      | table_name | table_schema | data_length | index_length |
      +------------+--------------+-------------+--------------+
      | mytable3 | testbk | 233308160 | 8528896 |
      +------------+--------------+-------------+--------------+
      1 row in set (0.00 sec)
      [mysql@testlocal testbk]$ ls -ltr
      total 236456
      -rw-rw-r-- 1 mysql mysql 3307 Aug 19 12:30 bak_testbk
      -rw-rw---- 1 mysql mysql 8556 Aug 19 19:35 mytable.frm
      -rw-rw---- 1 mysql mysql 8556 Aug 19 20:43 mytable2.frm
      -rw-rw---- 1 mysql mysql 8618 Aug 21 11:32 mytable3.frm
      -rw-rw---- 1 mysql mysql 233308160 Aug 21 11:32 mytable3.MYD
      -rw-rw---- 1 mysql mysql 8528896 Aug 21 11:32 mytable3.MYI

     
    Tags: InnoDB,MyISAM 责任编辑:aboutstudy
     
      关于我们 友情链接 网站地图 广告服务 联系我们 管理登陆  
      鄂ICP备07014143号  
      Powered by EmpireCMS 5.0  
      Template designed by 直来直往.
      联系信息: QQ 365931563 Email:jiangtian001@sina.com  
      ©CopyRight 2007-2008, SKDE.CN, Inc. All Rights Reserved