• mysql 优化分表 存储引擎 何苦


    分表

    --创建key分表
    create table user1(
     uid int auto_increment primary key,
     uname varchar(20) not null
    )engine=myisam default charset=utf8
    partition by key(uid) partitions 3;
    
    --创建hash分表
    create table user2(
     uid int auto_increment primary key,
     uname varchar(20) not null
    )engine=myisam default charset=utf8
    partition by hash(uid) partitions 3;
    
    --创建range分表
    create table user3(
     uid int auto_increment,
     uname varchar(20) not null,
     brithday date not null default '0000-00-00',
     primary key(uid,brithday)
    )engine=myisam default charset=utf8
    partition by range(year(brithday))(
     partition 80hou values less than (1990),
     partition 90hou values less than (2000),
     partition 00hou values less than (2010)
    );
    
    --创建list分表
    create table goods(
     gid int auto_increment,
     gname varchar(20) not null,
     cid int not null,
     primary key(gid,cid)
    )engine=myisam default charset=utf8
    partition by list(cid)(
     partition g1 values in(1),
     partition g2 values in(2,3),
     partition g3 values in(4,5,6)
    );
    
    --增加key/hash模式分区
    --格式: alter table 表名 add partition partitions 数量
    alter table user1 add partition partitions 2;
    alter table user2 add partition partitions 2;
    
    --删除key/hsah模式分区
    --格式: alter table 表名 coalesce parition 数量
    alter table user1 coalesce partition 2;
    alter table user2 coalesce partition 2;
    
    --增加range模式分区
    --格式: alter table 表名 add partition ( partition 分区名 values less than (值))
    alter table user3 add partition(
     partition 10hou values less than (2020)
    )
    --删除range模式分区
    --格式:alter table 表名 drop partition 分区名
    alter table user3 drop partition 10hou;
    
    --增加list模式分区
    --格式:alter table 表名 add partition ( partition 分区名 values in(值))
    alter table goods add partition(
     partition g4 values in (7)
    )
    --删除list模式分区
    --格式:alter table 表名 drop partition 分区名
    alter table goods drop partition g4;
    

    存储引擎

    --查询存储引擎
    show engines;
    
    --查询库中所有表的状态
    --格式:show table status from 库名;
    show create table status from a68;
    
    --查询表创建语句
    --格式:show create table 表名
    show create table tp_user;
    
    
    --创建基于MyISAM引擎的表
    create table user1(
     uid int auto_increment primary key,
     uname varchar(20) not null
    )engine=myisam default charset=utf8;
    
    --创建基于InnoDB引擎的表
    create table user2(
     uid int auto_increment primary key,
     uname varchar(20) not null
    )engine=innodb default charset=utf8;
    
    --查询InnoDB存储变量
    show variables like 'innodb_file%'
    set global innedb_file_per_table=1
    
  • 相关阅读:
    软工实践寒假作业(2/2)
    Java 内存溢出分析
    个人作业——软件工程实践总结&个人技术博客
    个人作业——软件测评
    结对第二次作业——某次疫情统计可视化的实现
    结对第一次作业-疫情统计可视化(原型设计)
    软工实践寒假作业(2/2)
    软工实践寒假作业(1/2)
    个人作业——软件工程实践总结&个人技术博客
    配合springboot的快速运维脚本
  • 原文地址:https://www.cnblogs.com/fuqian/p/16884711.html
Copyright © 2020-2023  润新知