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`
|
|||
|
|
- 包含所有功能
|
|||
|
|
- 包含运送清单权限
|
|||
|
|
- 更全面的配置
|
|||
|
|
|
|||
|
|
**建议先执行精简版,测试成功后再执行完整版。**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**祝您顺利!** 🎉
|
|||
|
|
|