数据库初始化分两类:业务库脚本和中间件初始化脚本。
仓库根目录 db/ 下是当前业务表结构和初始数据:
| 文件 | 数据库 |
|---|---|
mall4cloud_auth.sql |
账号与登录 |
mall4cloud_rbac.sql |
菜单、角色、按钮权限 |
mall4cloud_platform.sql |
平台端用户与配置 |
mall4cloud_multishop.sql |
店铺、商家用户、热搜、轮播 |
mall4cloud_product.sql |
商品、SKU、库存 |
mall4cloud_order.sql |
订单、订单项、收货地址 |
mall4cloud_biz.sql |
附件和附件分组 |
mall4cloud_user.sql、mall4cloud_user_area_data.sql |
用户与地区数据 |
mall4cloud_leaf.sql |
分布式 ID |
mall4cloud_payment.sql |
支付信息 |
如果不用 Docker Compose 自动初始化,请手动创建库并执行这些 SQL。
使用 中间件 Docker Compose 时,mysql/initdb 会导入 Nacos、Seata、Canal 等配置。这里包含网关路由、各服务数据源、Redis、RocketMQ、OSS、Seata 地址。
启动前请先把示例 IP 替换为你的环境 IP,否则服务可能注册到了错误地址。
当前初始化数据里可见:
| 端 | 用户名 | 密码 | 说明 |
|---|---|---|---|
| 平台端 | admin |
123456 |
根 README 对应平台端仓库说明;账号记录在 mall4cloud_auth.sql、mall4cloud_platform.sql |
| 商家端 | admin |
123456 |
根 README 对应商家端仓库说明;账号记录在 mall4cloud_auth.sql、mall4cloud_multishop.sql |
如果登录失败,先确认导入的 auth、platform、multishop、rbac 库来自同一套脚本,不要混用其他版本数据。
- MySQL 中存在
mall4cloud_auth、mall4cloud_rbac、mall4cloud_product、mall4cloud_order等库。 mall4cloud_auth.auth_account中有平台端和商家端账号。mall4cloud_rbac.menu和mall4cloud_rbac.menu_permission中有菜单和按钮权限数据。- Nacos 中有
application.yml和mall4cloud-gateway.yml。
问题:为什么只导入 db/mall4cloud_product.sql 不能完成后台登录?
答案:登录至少还依赖 mall4cloud_auth、mall4cloud_rbac,平台端或商家端还依赖对应的 mall4cloud_platform 或 mall4cloud_multishop。
为什么:账号在 auth 库,菜单和权限在 rbac 库,登录后用户信息来自平台端或商家端业务库。