读一读


my.ini

  1. 调整max_connections,提高最大链接

  2. 调整thread_cache_size,缓存链接,以备下一个链接

  3. innodb_lock_wait_timeout ,事务等待行锁的时间,对于快速处理的sql语录,可以设置超时小点,对于后台批处理操作,可以将这个调大,避免发生大的回滚操作。


innodb_buff_pool_size 存储表数据和索引数据的最大缓存大小

innodb_log_buffer_size  重做缓存日志的大小(产生大量更新数据的事务时,加大这个)


配置文件 my.ini

key_buffer_size,索引缓存,内存的1/4,

read_buffer_size,select的缓存大小


alter table 表名 add partition(
  partition 分区名 values less than (值)
)

alter table 表名 drop partition 分区名;

对应的分区数据就会删除


create table ...();
partition by hash(字段) partitions 区数;

如果不写区数,会放到一个区里

partition by linear key(字段...) partitions 区数;

list是一种离散的,不同于rang的连续的。

create table ..();
partition by list(字段)(
    partition p0 values in (3,6,9),
    ........
)

5.5后支持对非int进行分区,

partition by list columns(字段)(...)

Range分区:按照范围来分区

create table ...();
partition by range(字段)(
  partition p0 values less than (6),
  .........
)

//注意分区的字段不是主键的话,表的其他字段不允许出现主键


show variables like '%partition%';