315 lines
6.4 KiB
Markdown
315 lines
6.4 KiB
Markdown
# 🗄️ 数据库连接信息和SQL执行指南
|
||
|
||
## 📊 数据库配置信息
|
||
|
||
从后端配置文件 `application-dev.yml` 中提取的数据库信息:
|
||
|
||
```yaml
|
||
数据库类型: MySQL
|
||
主机地址: 129.211.213.226
|
||
端口: 3306
|
||
数据库名: cattletrade
|
||
用户名: root
|
||
密码: Aiotagro@741
|
||
字符集: UTF-8
|
||
时区: GMT+8
|
||
```
|
||
|
||
---
|
||
|
||
## 🚀 快速执行SQL脚本
|
||
|
||
### 方式一:使用MySQL命令行(推荐)
|
||
|
||
```bash
|
||
# Windows CMD 或 PowerShell
|
||
mysql -h 129.211.213.226 -P 3306 -u root -pAiotagro@741 cattletrade < "c:/cattleTransport/权限管理菜单-精简版.sql"
|
||
|
||
# 或者交互式执行
|
||
mysql -h 129.211.213.226 -P 3306 -u root -pAiotagro@741 cattletrade
|
||
```
|
||
|
||
进入MySQL后执行:
|
||
```sql
|
||
source c:/cattleTransport/权限管理菜单-精简版.sql
|
||
```
|
||
|
||
---
|
||
|
||
### 方式二:使用Navicat
|
||
|
||
1. **新建连接**:
|
||
- 连接名:牛只运输系统
|
||
- 主机:`129.211.213.226`
|
||
- 端口:`3306`
|
||
- 用户名:`root`
|
||
- 密码:`Aiotagro@741`
|
||
- 数据库:`cattletrade`
|
||
|
||
2. **测试连接** → 连接成功后,双击打开
|
||
|
||
3. **执行SQL**:
|
||
- 点击"查询" → "新建查询"
|
||
- 打开文件:`c:/cattleTransport/权限管理菜单-精简版.sql`
|
||
- 点击"运行"按钮(或按 `F5`)
|
||
|
||
---
|
||
|
||
### 方式三:使用HeidiSQL
|
||
|
||
1. **新建会话**:
|
||
- 网络类型:MySQL (TCP/IP)
|
||
- 主机名/IP:`129.211.213.226`
|
||
- 用户:`root`
|
||
- 密码:`Aiotagro@741`
|
||
- 端口:`3306`
|
||
- 数据库:`cattletrade`
|
||
|
||
2. **打开**,右侧选择 `cattletrade` 数据库
|
||
|
||
3. **执行SQL**:
|
||
- 点击"文件" → "加载SQL文件"
|
||
- 选择:`c:/cattleTransport/权限管理菜单-精简版.sql`
|
||
- 点击"执行"(或按 `F9`)
|
||
|
||
---
|
||
|
||
### 方式四:使用DBeaver
|
||
|
||
1. **新建连接**:
|
||
- 数据库:MySQL
|
||
- 服务器地址:`129.211.213.226`
|
||
- 端口:`3306`
|
||
- 数据库:`cattletrade`
|
||
- 用户名:`root`
|
||
- 密码:`Aiotagro@741`
|
||
|
||
2. **测试连接** → 完成
|
||
|
||
3. **执行SQL**:
|
||
- 右键数据库 → "SQL编辑器" → "打开SQL脚本"
|
||
- 选择:`c:/cattleTransport/权限管理菜单-精简版.sql`
|
||
- 点击"执行SQL脚本"(或按 `Ctrl+Enter`)
|
||
|
||
---
|
||
|
||
## ✅ 执行后验证
|
||
|
||
### 1. 检查菜单是否创建成功
|
||
|
||
```sql
|
||
-- 查看权限管理相关菜单
|
||
SELECT id, parent_id, name, route_url, authority, sort
|
||
FROM sys_menu
|
||
WHERE name LIKE '%权限%'
|
||
AND is_delete = 0
|
||
ORDER BY parent_id, sort;
|
||
```
|
||
|
||
**预期结果**:应该看到3条记录:
|
||
- 权限管理(父菜单)
|
||
- 菜单权限管理(子菜单)
|
||
- 操作权限管理(子菜单)
|
||
|
||
---
|
||
|
||
### 2. 检查超级管理员账号
|
||
|
||
```sql
|
||
-- 查看超级管理员用户
|
||
SELECT id, mobile, name, role_id, status, user_type
|
||
FROM sys_user
|
||
WHERE mobile = '15900000000';
|
||
```
|
||
|
||
**预期结果**:
|
||
- `role_id` 应该为 `1`
|
||
- `status` 应该为 `1`(启用)
|
||
|
||
---
|
||
|
||
### 3. 检查超级管理员权限
|
||
|
||
```sql
|
||
-- 查看超级管理员拥有的权限数量
|
||
SELECT COUNT(*) as '权限总数'
|
||
FROM sys_role_menu
|
||
WHERE role_id = 1;
|
||
|
||
-- 查看具体权限列表(前20条)
|
||
SELECT
|
||
rm.role_id,
|
||
rm.menu_id,
|
||
m.name as menu_name,
|
||
m.authority,
|
||
m.type
|
||
FROM sys_role_menu rm
|
||
LEFT JOIN sys_menu m ON rm.menu_id = m.id
|
||
WHERE rm.role_id = 1
|
||
LIMIT 20;
|
||
```
|
||
|
||
**预期结果**:
|
||
- 权限总数应该 > 10
|
||
- 应该包含 `permission:menu:view`、`permission:operation:view` 等权限
|
||
|
||
---
|
||
|
||
### 4. 检查菜单按钮权限
|
||
|
||
```sql
|
||
-- 查看菜单权限管理的按钮权限
|
||
SELECT
|
||
m.id,
|
||
m.parent_id,
|
||
m.name,
|
||
m.authority,
|
||
m.type
|
||
FROM sys_menu m
|
||
WHERE m.parent_id IN (
|
||
SELECT id FROM sys_menu WHERE name = '菜单权限管理'
|
||
)
|
||
AND m.is_delete = 0;
|
||
```
|
||
|
||
**预期结果**:应该看到5个按钮权限:
|
||
- 菜单查询 (permission:menu:list)
|
||
- 菜单新增 (permission:menu:add)
|
||
- 菜单编辑 (permission:menu:edit)
|
||
- 菜单删除 (permission:menu:delete)
|
||
- 角色分配 (permission:menu:assign)
|
||
|
||
---
|
||
|
||
## 🔄 SQL执行后的操作
|
||
|
||
### 重要!必须重新登录
|
||
|
||
SQL脚本执行成功后,**必须**按以下步骤操作:
|
||
|
||
1. **退出当前登录**
|
||
- 点击系统右上角用户头像
|
||
- 选择"退出登录"
|
||
|
||
2. **清除浏览器缓存**
|
||
- 按 `Ctrl + Shift + Delete`
|
||
- 或按 `F12` 打开开发者工具
|
||
- 在 Application → Storage → Clear site data
|
||
|
||
3. **重新登录**
|
||
- 账号:`15900000000`
|
||
- 密码:`123456`
|
||
|
||
4. **刷新页面**
|
||
- 按 `F5` 或 `Ctrl + R`
|
||
|
||
5. **验证菜单**
|
||
- 左侧菜单栏应该出现"权限管理"菜单
|
||
- 点击展开,应该有两个子菜单:
|
||
- 菜单权限管理
|
||
- 操作权限管理
|
||
|
||
---
|
||
|
||
## 🐛 故障排查
|
||
|
||
### 问题1:SQL执行报错
|
||
|
||
**错误:Table 'sys_menu' doesn't exist**
|
||
|
||
**解决**:检查数据库表是否存在
|
||
```sql
|
||
SHOW TABLES LIKE 'sys_%';
|
||
```
|
||
|
||
---
|
||
|
||
**错误:Duplicate entry for key 'PRIMARY'**
|
||
|
||
**解决**:菜单已存在,先清理旧数据
|
||
```sql
|
||
-- 删除旧的权限管理菜单
|
||
DELETE FROM sys_role_menu
|
||
WHERE menu_id IN (
|
||
SELECT id FROM sys_menu WHERE name LIKE '%权限%'
|
||
);
|
||
|
||
DELETE FROM sys_menu WHERE name LIKE '%权限%';
|
||
|
||
-- 然后重新执行SQL脚本
|
||
```
|
||
|
||
---
|
||
|
||
### 问题2:登录后菜单不显示
|
||
|
||
**可能原因1:用户角色不正确**
|
||
|
||
```sql
|
||
-- 修正用户角色
|
||
UPDATE sys_user
|
||
SET role_id = 1
|
||
WHERE mobile = '15900000000';
|
||
```
|
||
|
||
**可能原因2:角色权限未分配**
|
||
|
||
```sql
|
||
-- 重新分配所有权限给超级管理员
|
||
DELETE FROM sys_role_menu WHERE role_id = 1;
|
||
INSERT INTO sys_role_menu (role_id, menu_id)
|
||
SELECT 1, id FROM sys_menu WHERE is_delete = 0;
|
||
```
|
||
|
||
**可能原因3:未清除缓存**
|
||
|
||
- 清除浏览器缓存
|
||
- 清除localStorage
|
||
- 重新登录
|
||
|
||
---
|
||
|
||
### 问题3:连接数据库失败
|
||
|
||
**检查网络**:
|
||
```bash
|
||
# 测试能否ping通数据库服务器
|
||
ping 129.211.213.226
|
||
|
||
# 测试端口是否开放
|
||
telnet 129.211.213.226 3306
|
||
```
|
||
|
||
**检查防火墙**:
|
||
- 确认本地防火墙允许访问3306端口
|
||
- 确认云服务器安全组开放了3306端口
|
||
|
||
---
|
||
|
||
## 📞 联系信息
|
||
|
||
- **数据库服务器**:`129.211.213.226:3306`
|
||
- **后端API**:`http://127.0.0.1:16200/api`
|
||
- **前端界面**:`http://localhost:8080`
|
||
|
||
---
|
||
|
||
## 📝 需要执行的SQL文件
|
||
|
||
1. **精简版**(推荐):`c:/cattleTransport/权限管理菜单-精简版.sql`
|
||
- 只创建核心菜单和权限
|
||
- 执行速度快
|
||
- 适合快速测试
|
||
|
||
2. **完整版**:`c:/cattleTransport/权限管理功能初始化SQL.sql`
|
||
- 包含所有功能
|
||
- 包含运送清单权限
|
||
- 更全面的配置
|
||
|
||
**建议先执行精简版,测试成功后再执行完整版。**
|
||
|
||
---
|
||
|
||
**祝您顺利!** 🎉
|
||
|