mysql row_format
时间: 2023-08-18 10:09:07 浏览: 96
MySQL中的row_format是指表的行格式,它决定了表的行在磁盘上的存储方式。MySQL提供了多种行格式,包括Compact、Redundant和Dynamic等。不同的行格式适用于不同的场景,例如Compact适用于小型表,Dynamic适用于大型表,可以提高存储效率。在创建表的时候可以指定行格式,也可以在已创建的表上进行更改。但是需要注意的是,不同的行格式在存储效率和查询性能上有所不同,需要根据具体的业务需求进行选择。
相关问题
mysql ROW_FORMAT是什么意思
`ROW_FORMAT`是MySQL中的一个参数,用于指定表的行格式。MySQL支持多种行格式,包括`DEFAULT`、`DYNAMIC`、`FIXED`、`COMPRESSED`和`REDUNDANT`等。
以下是各个行格式的简要介绍:
- `DEFAULT`: 根据存储引擎的默认设置选择行格式。
- `DYNAMIC`: 可变长度行格式,适用于包含大量变长列的表。动态行格式可以根据数据大小自动调整行的大小,因此可以节省存储空间。
- `FIXED`: 固定长度行格式,适用于只包含固定长度列的表。每个行都会占用相同的存储空间。
- `COMPRESSED`: 压缩行格式,可以在存储数据时对数据进行压缩,从而可以更有效地使用存储空间。
- `REDUNDANT`: 冗余行格式,可以在存储数据时添加额外的信息,从而可以提高数据查询的性能。
当创建一个新表时,可以使用`ROW_FORMAT`参数来指定行格式,例如:
```
CREATE TABLE mytable (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
) ROW_FORMAT=DYNAMIC;
```
这将创建一个名为`mytable`的表,并将其行格式设置为`DYNAMIC`。
mysql修改表的ROW_FORMAT属性怎么写
要修改MySQL表的ROW_FORMAT属性,可以使用ALTER TABLE语句来实现。以下是一些示例:
1. 修改为COMPACT行格式:
```
ALTER TABLE table_name ENGINE=InnoDB ROW_FORMAT=COMPACT;
```
2. 修改为DYNAMIC行格式:
```
ALTER TABLE table_name ENGINE=InnoDB ROW_FORMAT=DYNAMIC;
```
3. 修改为REDUNDANT行格式:
```
ALTER TABLE table_name ENGINE=InnoDB ROW_FORMAT=REDUNDANT;
```
4. 修改为COMPRESSED行格式:
```
ALTER TABLE table_name ENGINE=InnoDB ROW_FORMAT=COMPRESSED;
```
需要注意的是,修改ROW_FORMAT属性可能会影响表的存储空间和查询性能,建议在修改前评估其影响。另外,不同的MySQL版本对ROW_FORMAT属性的支持可能存在差异,建议在使用前先了解具体的版本支持情况。
阅读全文