当一个网站有很多用户的时候,我们的服务器已经吃不消了,
数据库的增删改查会变的非常痛苦,基本死掉了
其实这时候早就需要重新设计数据库了
不能再用以前的那个mysql数据库的结构
我们需要分库(把一个数据库分成多个数据库),分表(把一张表按照一定规律分成N张结构相同的表)
bbs_user 表规则怎么处理?
bbs_user_1
bbs_user_msc
bbs_user_2011
bbs_user_20111029
最少存在一张基准表
是向里面设置一组分表规则,把一个用户的相关信息放进去,得到这组分表存则,然后,再把里面的表结构缓存起来
缓存表字段
1,查看当前连接资源下面是否有这张表
1,调用当前连接资源下的查看表的方法,把所有表存起来,放入一个缓存数组文件中,判断当前表是存存在于数组当中
2,得到连接资源的库名
$sql=’select `TABLE_NAME` from `INFORMATION_SCHEMA`.`TABLES` where `TABLE_SCHEMA`=”.库.” and `TABLE_NAME`=”.$tabName.”’;
用一条专门查询表是否存在的语句来查询
2,如果不存在则创建
创建完成之后 再存存字段信息
3,如果存在,则缓存字段信息
分表规则
1,md5 取前几位
2,id取余,得余数
3,时间 写一组时间存则