首页 > 求一个Mysql分表的方案

求一个Mysql分表的方案

有一个游戏库,有用户表、充值表,后台是有查询分页的,加入现在用户表数量已经超过了3kw条,充值超过了500w条,求大虾们给个分表的方案。

mysql用户表(users)
id            主键
user_id       用户账号
user_pwd      用户密码
reg_time      注册时间
last-time     最后登陆时间
........      其他字段
mysql充值表(payment)
id            主键
order_id      订单号
user_id       对应充值的玩家ID
pay_time      充值时间
........      其他字段

mysql已经提供了分区功能。
http://www.mysql.com/products/enterprise/partitioning.html

根据你查表时所 where 的字段特点来分就是了,比如数值连续的int字段就可以按范围来分,具体要参考文档。(请看清版本哦)
http://dev.mysql.com/doc/refman/5.5/en/partitioning.html


信息有限,主要还是具体看你的具体场景,就你说的信息结合一般的情况:
对用户表,可以考虑把只读的放一张,这样user表做到只有insert,没有update。像密码这样会update的字段就都做一个一对一的附表。充值表如果你结构复杂也可以这样,如果简单的话也无所谓了,几百万应该还可以。节省程序员的时间也很重要。

【热门文章】
【热门文章】