数据文件:.ibd、参数变化
atomic DDL
redo log:mysql.innodb_ddl_log
SET GLOBAL innodb_print_ddl_logs=1;
支持角色、支持加密通信、授权表
资源管理:group支持
innodb增强
auto_increment=N 的表,修改后需要重启服务
rollback的事物,auto_increment值将不再使用
auto_increment的列修改后,后面insert的数按照新值使用
当索引树损坏,会将标志放入redo log
innodb memorycached支持条件和范围查询
查看索引页select * from INFORMATION_SCHEMA.INNODB_CACHED_INDEXES;
临时共享表空间ibtmp1
支持日志加密
supports NOWAIT and SKIP LOCKED options with SELECT ... FOR SHARE and SELECT ... FOR UPDATE
nowait与skip locked都是行锁级别
ADD PARTITION, DROP PARTITION, COALESCE PARTITION, REORGANIZE PARTITION, and REBUILD PARTITION
innodb引擎使用mysql的数据字典
表和数据字典都被放入.ibd文件中
undo数量可以在运行中被修改
innodb_rollback_segments对于每一个undo table space
(innodb_undo_logs、Innodb_available_undo_logs )
innodb_max_dirty_pages_pct_lwm 10%
innodb_max_dirty_pages_pct 90
innodb_autoinc_lock_mode 2 针对multi-row inserts
ALTER TABLESPACE ... RENAME TO
select * from INFORMATION_SCHEMA.INNODB_TABLESPACES_BRIEF 表空间
SDI数据提取是使用ibd2sdi工具执行的,表中的冗余数据
对于DDL数据采用自动提交
redo优化
redolog用户线程可以并发的写
用户线程可以增加脏页到flush连上
redolog专用线程
--innodb-log-wait-for-flush-spin-hwm (8.11参数)定义多少秒后不再spin将直接写入磁盘,默认400ms
innodb_log_spin_cpu_abs_lwm最小cpu,用户不再spin,写日志,默认80%
innodb_log_spin_cpu_pct_hwm 最大cpu值
undo支持大数据对象,小于100K,LOB
算法ALGORITHM只在数据字典中操作元数据,并没有修改表的源数据,表数据不受影响。
ALTER TABLE tbl_name DROP PRIMARY KEY, ADD PRIMARY KEY (column), ALGORITHM=INPLACE, LOCK=NONE;
internal_tmp_disk_storage_engine 临时表引擎支持对BLOB对象进行存储
temptable_max_ram
临时表
INNODB_SESSION_TEMP_TABLESPACES
JSON的处理提高
支持WITH的使用
ntile函数
create table tt(c varchar(10) character set utf8mb4) as select 0xF0A085A4E699A8 as c;
一张1亿的表,需要增加一个字段,假如我让你去增加这个字段,你应该注意什么,具体怎么操作?
LOCK=
ALGORITHM=[INPLACE|COPY]
官方文档给出了一些使用的例子
浙公网安备 33010602011771号