日志 - 数据库设计中后台管理用户和app前台用户是否应设计在一张表里
本文介绍了日志 - 数据库设计中后台管理用户和app前台用户是否应设计在一张表里的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
o2o项目中,有以下几种用户类型,前端app用户,后台商户用户,管理员web管理端用户。
首先,分为3个表肯定是不合理。
是否应把app端和web管理端分开建表,譬如,table_admin_users,table_app_users(table_app_users里包含商户user和用户user),
如何分开,那么操作日志,势必要分开,否则必须要规定web用户和app用户不能重复,要不然log表的user用户就不能做到唯一性。
如果不分开,用2张日志表,那么看起来十分的别扭和违反数据库的设计规范。
请教高玩遇到这种情况一般如何设计?
解决方案
这两种场景都是可以的
只有一个user表,使用role,perm表区分用户权限和角色,这个大部分网站都是这样,
这样只需要制作一套登录逻辑,一个cookie、session的用户认证,然后用权限就可以控制用户的行为-
分开设计,后台,前台用户区分成多个表,对于需要记录日志的,无需分开,比如结构为:
id from_table 来源表 from_id 来源ID event created_at
但是log表非常大,建议使用 MySQL - 分区表
以增加操作效率
腾讯等公司,都是用的一个账号体系,就是QQ
这篇关于日志 - 数据库设计中后台管理用户和app前台用户是否应设计在一张表里的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文