æç« ç®å½
- ââä¸ãå¯ä¸ç»éåçââ
- ââ1. å¯ä¸ç»éåç设计ââ
- ââ2. å¯ä¸ç»éæµç¨ââ
- ââ3. ç»å½è½¨è¿¹è¡¨ââ
ä¸ãå¯ä¸ç»éåç
1. å¯ä¸ç»éåç设计
ç¨æ·ç¬¬ä¸æ¬¡ç»éä¹åï¼ä¿åå½åç¨æ·ç»å½ç设å¤+åè¯ï¼tokenï¼ï¼å½ç¬¬äºæ¬¡ç»éæ¶ï¼å å¤æåä¸è®¾å¤çç¨æ·æ¯å¦å·²ç»ç»å½ï¼å¦æå·²ç»ç»éè¿ï¼å°±å°ç¬¬ä¸æ¬¡ç»éçåè¯ç½®ä¸ºå¤±æï¼ç¬¬äºæ¬¡ç»éåè¯ä¸ºææã
å端æ¯ä¸ªä¸æ®µæ¶é´è°ç¨å端æ¥å£ï¼æ ¡éªç»éåè¯æ¯å¦ææï¼æ ææ¶ï¼å¼ºå¶è·³è½¬ç»å½é¡µé¢ï¼è¿è¡éæ°ç»éå³å¯ã
2. å¯ä¸ç»éæµç¨
- 1.æ¥è¯¢ç¨æ·user_idæ¥è¯¢æ¥å¿è¡¨æ¶ï¼ç¨æ·è½¨è¿¹å¯¹è±¡ä¸ºç©ºã
- 2.å°ç»å½ç¨æ·è½¨è¿¹æ°æ®é»è¾ç¶æ置为0
- 3.å°ç¨æ·ç»å½ä¿¡æ¯æå ¥ç¨æ·è½¨è¿¹è¡¨ä¸
- 1.æ¥è¯¢ç¨æ·user_idæ¥è¯¢æ¥å¿è¡¨æ¶ï¼ç¨æ·è½¨è¿¹å¯¹è±¡ä¸ä¸ºç©ºã
- 2.ææ¤æ¶ç»å½çtoken设置å°è½¨è¿¹å¯¹è±¡ä¸ã
- 3.å°ç¬¬ä¸æ¬¡ç»å½æ°æ®é»è¾å é¤ç¶æ置为1
- 4.å°ç¨æ·è½¨è¿¹æ°æ®è¿è¡æ´æ°æä½ï¼è¿è¡å½æ°æ®é»è¾å é¤ã
- 5.å°ç»å½ç¨æ·è½¨è¿¹æ°æ®é»è¾ç¶æ置为0ã
- 6.å°ææ°ç¨æ·ç»å½ä¿¡æ¯æå ¥ç¨æ·è½¨è¿¹è¡¨ä¸ã
- 7.å½ææ°ç¨æ·ç»å½ä¿¡æ¯æå ¥æå ¥æåæ¶ï¼å¹¶ä¸ç»å½tokenä¸ä¸ºç©ºæ¶ï¼å°redisä¸ï¼ç¬¬ä¸æ¬¡ç»å½tokençkeyå é¤ã
3. ç»å½è½¨è¿¹è¡¨
CREATE TABLE `user_login_log` (
`id` int NOT NULL AUTO_INCREMENT COMMENT 'æµæ°´å·ID',
`user_id` int DEFAULT NULL COMMENT 'ç¨æ·ID',
`login_ip` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 'ç»å½IP',
`login_time` datetime DEFAULT NULL COMMENT 'ç»å½æ¶é´',
`login_token` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 'ç»å½token',
`channel` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 'æ¸ é',
`equipment` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 'æ¥æº',
`is_delete` int DEFAULT NULL COMMENT 'æ¯å¦å é¤',
`message_id` varchar(255) DEFAULT NULL COMMENT 'æ¶æ¯ID',
PRIMARY KEY (`id`),
UNIQUE KEY `unique_message_id` (`message_id`) USING BTREE COMMENT 'æ¶æ¯ID'
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8mb3 COMMENT='ç»å½æ¥å¿è¡¨';