对mysql进行分表

1.

有某个自段进行md5散列,然后生成ord SCII码

$num = ord(md5($user)) //是一个数字

 参考 $num/3 ,$num/4;如果我们不是严格意义上的分表,可以参考分布式,多台mysql服务器,

$count  = mysql 服务器的个数。  $num/$count 找需要连接的服务器,这样就减少了单个服务中sql的数量,但是数据量是没有发生变化的。也是起到优化的作用。但是对硬件开销大。

 

2.对上面的分母的扩大,事先建立N张表,然后映射。如果想要扩展表的数据,可以是分子和分母同时扩大相同的倍数,这样即使原来 $num/$count ,  $num*N /$count * N ;可以无限扩展表的个数,不影响原来的业务.

posted @ 2016-09-12 20:57  爱骑行的哈士奇  阅读(215)  评论(0)    收藏  举报