71 lines
1.9 KiB
Markdown
71 lines
1.9 KiB
Markdown
# 菜单重复问题解决方案
|
||
|
||
## 🔍 问题说明
|
||
|
||
如果浏览器中出现大量重复的菜单,可能是因为:
|
||
1. SQL脚本多次执行导致重复插入
|
||
2. 数据库中存在重复的菜单记录
|
||
|
||
## 📋 解决步骤
|
||
|
||
### 第一步:检查重复菜单
|
||
|
||
执行检查脚本,查看数据库中的重复菜单情况:
|
||
|
||
```bash
|
||
mysql -u root -p ry_news < sql/check_duplicate_menus.sql
|
||
```
|
||
|
||
或在MySQL客户端中执行:
|
||
```sql
|
||
source sql/check_duplicate_menus.sql
|
||
```
|
||
|
||
### 第二步:清理重复菜单
|
||
|
||
确认有重复菜单后,执行清理脚本:
|
||
|
||
```bash
|
||
mysql -u root -p ry_news < sql/cleanup_duplicate_menus.sql
|
||
```
|
||
|
||
或在MySQL客户端中执行:
|
||
```sql
|
||
source sql/cleanup_duplicate_menus.sql
|
||
```
|
||
|
||
### 第三步:验证清理结果
|
||
|
||
执行检查脚本再次验证,确认没有重复菜单:
|
||
|
||
```sql
|
||
source sql/check_duplicate_menus.sql
|
||
```
|
||
|
||
## ⚠️ 注意事项
|
||
|
||
1. **备份数据库**:在执行清理脚本前,请先备份数据库
|
||
2. **检查结果**:清理脚本会保留menu_id最小的菜单,删除其他重复项
|
||
3. **重新登录**:清理后,需要重新登录系统才能看到更新后的菜单
|
||
|
||
## 📁 SQL文件说明
|
||
|
||
- `check_duplicate_menus.sql` - 检查重复菜单的查询脚本(只读,不会修改数据)
|
||
- `cleanup_duplicate_menus.sql` - 清理重复菜单的执行脚本(会删除重复数据)
|
||
- `psychological_system_complete.sql` - 主SQL文件(包含所有表结构和初始数据)
|
||
|
||
## 🔧 如果问题仍然存在
|
||
|
||
如果清理后仍然出现重复菜单,请检查:
|
||
|
||
1. **前端缓存**:清除浏览器缓存并强制刷新(Ctrl+F5)
|
||
2. **Redis缓存**:清理Redis中的菜单缓存
|
||
3. **菜单配置**:检查是否有其他SQL脚本重复执行了菜单配置
|
||
|
||
## 📞 需要帮助?
|
||
|
||
如果问题仍未解决,请提供:
|
||
- 执行检查脚本的输出结果
|
||
- 浏览器控制台的错误信息
|
||
- 清理脚本的执行结果
|