服务器上数据库的创建

破案了!🎯 真正的死因终于找到了:

Caused by: com.mysql.cj.exceptions.CJException: Unknown database 'newbee_mall_db'

这说明你的 Java 程序成功连上了 Docker 里的 MySQL,但是 MySQL 里面根本没有 newbee_mall_db 这个数据库! 这是一个空库。

🛠️ 解决方法(只需 3 步):

第一步:进入 Docker 容器并登录数据库
复制代码
docker exec -it mysql-server bash
mysql -u root -p123456
第二步:创建数据库

mysql> 提示符下执行以下 SQL 语句建库:

复制代码
CREATE DATABASE IF NOT EXISTS newbee_mall_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

(注:如果你的配置文件里写的不是 newbee_mall_db,请换成你配置文件中实际写的名字)

第三步:导入初始化数据(非常关键!)

光建一个空库是不行的,商城还需要表结构和初始数据。新蜂商城项目源码中通常自带了一个 .sql 文件(一般在项目的 sql/ 目录下,或者叫 newbee_mall_schema.sql)。

你需要把这个 SQL 文件上传到服务器上,然后在这个 mysql> 界面下导入:

复制代码
use newbee_mall_db;
source /你上传的SQL文件的绝对路径/newbee_mall_schema.sql;

如果嫌麻烦,你也可以先退出 MySQL(输入 exit),回到宿主机命令行直接用一条命令导入:

复制代码
# 假设你把 sql 文件放在了 /etc/nginx/java/ 目录下
docker cp /etc/nginx/java/newbee_mall_schema.sql mysql-server:/tmp/newbee_mall_schema.sql
docker exec -it mysql-server mysql -u root -p123456 newbee_mall_db < /tmp/newbee_mall_schema.sql

完成这三步后,不需要重启 Java 项目,直接刷新浏览器页面,你的新蜂商城就能正常显示了!快去试试吧!

相关推荐
一嘴一个橘子3 分钟前
MySqL 的 B+树、 叶子节点、非叶子节点
mysql
夜雪一千1 小时前
MySQL查询条件的顺序是否影响查询效率
数据库·mysql
凤山老林2 小时前
MySQL“读已提交“并非万能药:深度解析RC隔离级别的盲区与适用边界
数据库·mysql
garuda herb2 小时前
生成专题页Blog--建立并返回 MySQL 数据库连接
python·mysql
奶糖 肥晨2 小时前
DBeaver 安装与 MySQL 连接配置教程
数据库·mysql
万亿少女的梦1683 小时前
基于Spring Boot、Java与MySQL的网络订餐系统设计与实现
java·spring boot·mysql·系统设计·网络订餐
Database_Cool_5 小时前
阿里云 RDS MySQL 降本增效实战:从规格选型到成本优化,月成本降低64%全攻略
mysql·阿里云·云计算
Cloud云卷云舒15 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
用户713335851562418 小时前
MySQL - 事务、redo/undo 日志与 MVCC
mysql
用户713335851562419 小时前
MySQL - InnoDB 的 Buffer Pool
mysql