文章摘要
这篇文章介绍了在MySQL中如何通过以下三种方式管理表:
1. **创建结果表(Result Table)**:使用`CREATE TABLE`语句从另一个表中选择数据,并使用`DEFINITION ONLY`关键字,结果表不会占用磁盘空间,数据直接在内存中存储。
2. **创建物化查询表(MQT)**:通过`CREATE TABLE`语句从另一个表中选择数据,并配置`DATAINITIALLY`、`DEFERRED`、`REFRESH`等关键字,MQT是一个延迟复制的查询表,类型显示为Query,但它可以像正常表一样使用。
3. **复制表结构(Copy Table Structure)**:使用`CREATE TABLE`语句将一个表的结构复制到另一个表中,便于后续操作。
文章还提到,物化查询表在某些情况下可以优化性能,但需要注意其延迟复制特性。此外,还推荐了进一步阅读关于`@Session.tx_read_only`的详解文章。
1、创建结果表
1、创建结果表
create table new_table_nameas
( select * from table_name ) definitiononly;
2、创建物化查询表(MQT)
create table new_table_nameas
( select * from table_name )
datainitially deferred refresh deferred;
refresh table new_table_name;
注意:物化表类似一个查询,没有真正形成表,类型显示为Query。但它完全可以当表来用。
3、复制表结构create table new_table_name like table_name;
您可能感兴趣的文章:DB为何大量出现select @@session.tx_read_only 详解
© 版权声明
文章版权归作者所有,未经允许请勿转载。