本节内容:
mysql分表
Mysql分表大概有三种方法,我推荐使用merge引擎。
mysql分表的步骤,如下:
首先,创建表:
复制代码 代码示例:
mysql> CREATE TABLE t1 (
-> a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> message CHAR(20)) ENGINE=MyISAM;
mysql> CREATE TABLE t2 (
-> a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> message CHAR(20)) ENGINE=MyISAM;
mysql> INSERT INTO t1 (message) VALUES ('Testing'),('table'),('t1');
mysql> INSERT INTO t2 (message) VALUES ('Testing'),('table'),('t2');
mysql> CREATE TABLE total (
-> a INT NOT NULL AUTO_INCREMENT,
-> message CHAR(20), INDEX(a))
-> ENGINE=MERGE UNION=(t1,t2) INSERT_METHOD=LAST;
其中t1、t2是分表。
total是t1,t2两个表所有的数据
查询时:
select * from toal
表面上看和普通表一样,不过此查询在进行Mysql分表查询。
插入时:
insert into total(message)values('message');
会默认插入LAST表,也就是t2表。
缺点:
这种分表方法必须定期维护,定期新建表。
哪位有更好的方法,欢迎分享下。