create table b(id int) row_format=compact; 1. 3. 查看 修改后的行格式 show create table b; 1. CREATE TABLEb( idint(11) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC 4. 修改表的行格式 alter table b row_format=dynamic; 1....
`in_date` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; 为了保证数据的唯一性,我给那种商品组防重表,建了唯一索引: alter table product_group_unique add unique index ux_category_unit_model(category_id,unit_id,model_hash); 根据分类编号...
`id` int(11) DEFAULT NULL, `aa` varchar(20) DEFAULT NULL, `bb` varchar(20) DEFAULT NULL, `cc` varchar(20) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; --创建过程 DELIMITER $$ CREATE PROCEDURE `sp_test_tb2`(cnt INT ) BEGIN DECLARE i INT DEFAULT 1; TRUNCATE TABLE test_t...
来看极限边界情况,innodb为了记录一下varchar真实存储多少个字节,最多分配2个字节的空间去记录,2个字节16个比特位,全部为1,最大能记录的数字是2^16-1是65535个,innodb最大能记录varchar占用的字节数就是65535个,utf8mb4字符集一个字符是最大是4个字节,65535 / 4 = 16383.75,只要varchar字符数不超过16383个,inn...
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;insert into t3 values(1, 'A');update t3 set a='B' where id=1;update t3 set a='C' where id=1; 插入一条数据后,可以发现当前 t3.ibd 文件中的记录是 (1, 'A'),而 Undo Log此时有一条 insert 的记录。如下: root@stretch:/var/lib/mysql# ...
mysql> use testdb2; CREATE TABLE `test_tb2` ( `id` int(11) DEFAULT NULL, `aa` varchar(20) DEFAULT NULL, `bb` varchar(20) DEFAULT NULL, `cc` varchar(20) DEFAULT NULL, ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;3. 删除目标表的表空间alter table test_tb2 discard tablespace;此时目标库...
`bb`varchar(20)DEFAULTNULL, `cc`varchar(20)DEFAULTNULL, ) ENGINE=InnoDBDEFAULTCHARSET=utf8mb4; 3. 删除目标表的表空间 altertabletest_tb2 discard tablespace; 此时目标库的test_tb2表近剩下数据定义文件,表空间文件已删除 4. 拷贝源库的idb文件 ...
CREATETABLE`t`(`id`int(11)NOTNULL,`c`int(11)DEFAULTNULL,`d`int(11)DEFAULTNULL,PRIMARYKEY(`id`),KEY`c`(`c`))ENGINE=InnoDBDEFAULTCHARSET=utf8mb4COLLATE=utf8mb4_0900_ai_ci; INSERTINTO`t`VALUES('0','0','0'),('5','5','5'),('10','10','10'),('15','15','15'),('...
)ENGINE=InnoDBDEFAULTCHARSET=utf8mb4; insertintot3values(1,'A'); updatet3seta='B'whereid=1; updatet3seta='C'whereid=1; 插入一条数据后,可以发现当前 t3.ibd 文件中的记录是 (1, ‘A’),而 Undo Log此时有一条 insert 的记录。如下: ...
) ENGINE = InnoDB AUTO_INCREMENT =1DEFAULT CHARSET = utf8mb4 COMMENT ='用户表' 该表有三个字段,id 是自增主键,为 id 列创建主键索引,为 name 列创建非唯一二级索引 其实主键索引就是聚集索引的一种,而二级索引是非聚集索引的一种,关于聚集和非聚集索引可以看一下这篇文章 ...