| 您的当前位置:首页 --> MYSQL教程 --> MySQL Antelope和Barracuda的区别分析 |
| MYSQL教程 MySQL Antelope和Barracuda的区别分析 |
| 浏览次数:1306 关键词 ( ) |
| 查看使用该CPU的产品 查看CPU天梯 | |||||||||
| CPU型号:MySQL Antelope和Barracuda的区别分析 | |||||||||
| 主频:Ghz | |||||||||
| 睿频:Ghz | |||||||||
| 核心数:个 | |||||||||
| 不支持超核心 | |||||||||
| 制作工艺: | |||||||||
| 插槽类型: | |||||||||
| 功耗:0W | |||||||||
| L3缓存:0MB | |||||||||
| 支持最大内存: 0GB | |||||||||
| CPU详细参数 | |||||||||
|
Antelope是innodb-base的文件格式,Barracude是innodb-plugin后引入的文件格式,同时Barracude也支持Antelope文件格式。两者区别在于:
备注: 这里有一点需要注意,如果要使用压缩,一定需要先使用innodb_file_format =Barracuda格式,不然没作用。 下面我们看一下区别: 复制代码 代码如下: (testing)root@localhost [(none)]> use wubx; Database changed (testing)root@localhost [wubx]> CREATE TABLE t1 -> (c1 INT PRIMARY KEY) -> ROW_FORMAT=COMPRESSED -> KEY_BLOCK_SIZE=8; Query OK, 0 rows affected, 4 warnings (0.01 sec) 报出来4个warnings查看一下报错: 复制代码 代码如下: (testing)root@localhost [wubx]> show warnings; +———+——+———————————————————————–+ | Level | Code | Message | +———+——+———————————————————————–+ | Warning | 1478 | InnoDB: KEY_BLOCK_SIZE requires innodb_file_format > Antelope. | | Warning | 1478 | InnoDB: ignoring KEY_BLOCK_SIZE=8. | | Warning | 1478 | InnoDB: ROW_FORMAT=COMPRESSED requires innodb_file_format > Antelope. | | Warning | 1478 | InnoDB: assuming ROW_FORMAT=COMPACT. | +———+——+———————————————————————–+ 4 rows in set (0.00 sec) 从以上报错可以看出来不支持压缩。但看一下表结构如下: 复制代码 代码如下: (testing)root@localhost [wubx]> show create table t1; +——-+———————————————————————————————————————————————–+ | Table | Create Table | +——-+———————————————————————————————————————————————–+ | t1 | CREATE TABLE t1 ( c1 int(11) NOT NULL, PRIMARY KEY (c1) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8 | +——-+———————————————————————————————————————————————–+ 1 row in set (0.00 sec) 这个是比较坑的地方,所以在使用压缩需要注意。 复制代码 代码如下: (testing)root@localhost [wubx]>create table t2 ( c1 int(11) NOT NULL, primary key(c1)); (testing)root@localhost [wubx]> insert into t2 select * from t1; Query OK, 5417760 rows affected (37.12 sec) Records: 5417760 Duplicates: 0 Warnings: 0 创建支持压缩的表: 复制代码 代码如下: (testing)root@localhost [wubx]>SET GLOBAL innodb_file_per_table=1 (testing)root@localhost [wubx]>SET GLOBAL innodb_file_format=Barracuda; (testing)root@localhost [wubx]>CREATE TABLE t3 (c1 INT PRIMARY KEY) ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8; (testing)root@localhost [wubx]> insert into t3 select * from t1; Query OK, 5417760 rows affected (1 min 10.98 sec) Records: 5417760 Duplicates: 0 Warnings: 0 看一下表的物理大小如下: 复制代码 代码如下: -rw-rw—- 1 mysql mysql 8.4K Jul 5 16:58 t1.frm -rw-rw—- 1 mysql mysql 136M Jul 5 19:40 t1.ibd -rw-rw—- 1 mysql mysql 8.4K Jul 5 19:43 t2.frm -rw-rw—- 1 mysql mysql 136M Jul 5 19:44 t2.ibd -rw-rw—- 1 mysql mysql 8.4K Jul 5 19:46 t3.frm -rw-rw—- 1 mysql mysql 96M Jul 5 19:47 t3.ibd 可见t1, t2都没进行压缩, t3是支持压缩的。 |
| 下一个产品 SQL计算timestamp的差值的方法 上一个产品 21条MySQL优化建议(经验总结) |