最佳答案
账号肯定是唯一索引,千万级查询对于MySQL来说,小意思,可以根据你分表的HASH算法获取用户所在表,也可以多表联合,你还可以在登陆之前做账号正确校验,拒绝一些非法规则账号,找出用户信息在做密码校验,参考laravel的登录,话说千万级用户主表还没到需要分表的步骤吧,把一些扩展字段垂直分表,用户表只存储精简的信息!
讨论数量:
如果是ID分段的,就比较不好找了,因为登录提交的是用户名。用户表分表时如果指定为 MyISAM
类型,可以创建一个合并表类型为 MRG_MyISAM
,此表包含全部数据,查询此表即可知道其id
。
建议用户表分表时,对用户名进行 hash 取值分表,这样在登录时就可以知道查哪张表了。
账号肯定是唯一索引,千万级查询对于MySQL来说,小意思,可以根据你分表的HASH算法获取用户所在表,也可以多表联合,你还可以在登陆之前做账号正确校验,拒绝一些非法规则账号,找出用户信息在做密码校验,参考laravel的登录,话说千万级用户主表还没到需要分表的步骤吧,把一些扩展字段垂直分表,用户表只存储精简的信息!
推荐文章: