鍍金池/ 問答/Java  數(shù)據(jù)庫/ 請問MySQL按月份進行分表,引擎是InnoDB

請問MySQL按月份進行分表,引擎是InnoDB

我對數(shù)據(jù)庫分表是一片空白,各位幫忙給個建議。

回答
編輯回答
汐顏

兩種分法
1.水平分表
就是一個數(shù)據(jù)量很大的表,可以按照hash或者一定的規(guī)則,把這些數(shù)據(jù)分散到不同的表里面
2.垂直分表
就是把字段數(shù)很多的表 分成多個表然后關聯(lián)起來

2017年8月9日 07:24
編輯回答
蟲児飛

樓上正解罷根據(jù)需求選擇垂直或者水平,如日志表適合以日期為分表規(guī)則(大部分,小部分日志表可能不是。)。而如果是某些常用數(shù)據(jù),則可以依據(jù)字段分割。
分表規(guī)則的話,我個人是在程序上實現(xiàn)的,因為我那個是依據(jù)日期規(guī)則分表的,所以通過程序生成以及查找表名獲取數(shù)據(jù)。如果是字段切割開分表則可以寫對應的視圖在數(shù)據(jù)庫,調用直接懟視圖進行調用就好。

2017年10月30日 17:09
編輯回答
雨蝶

直接分區(qū)就行了,分表是類似讀寫分離的那種的,你可以直接用類似

Create table user( id tinyint(3) not null primary key, name char(30) not null comment ‘姓名’)
partition by range(id)( partition id01 values less than (10), partition id02 values less than (20), partition id03 values less than maxvalue); 
2018年8月23日 06:31