[全量] 初始化项目代码、配置、文档及Agent协同harness
This commit is contained in:
98
chat_web_backend/数据库问题排查.md
Normal file
98
chat_web_backend/数据库问题排查.md
Normal file
@@ -0,0 +1,98 @@
|
||||
# 数据库连接问题排查和解决
|
||||
|
||||
## 错误信息
|
||||
```
|
||||
java.sql.SQLException: Access denied for user 'root'@'172.20.0.1' (using password: YES)
|
||||
```
|
||||
|
||||
## 问题原因
|
||||
1. 数据库 `chat_gpt_yj` 不存在
|
||||
2. MySQL root 密码不正确
|
||||
3. 用户权限问题
|
||||
|
||||
## 解决步骤
|
||||
|
||||
### 方法1:使用初始化脚本(推荐)
|
||||
|
||||
```bash
|
||||
cd /home/gc/gangyan/chat_web_backend
|
||||
./init_database.sh
|
||||
```
|
||||
|
||||
脚本会自动:
|
||||
- 测试MySQL连接
|
||||
- 创建数据库 `chat_gpt_yj`
|
||||
- 导入所有SQL初始化脚本
|
||||
|
||||
### 方法2:手动操作
|
||||
|
||||
#### 步骤1:安装MySQL客户端(如果没有)
|
||||
```bash
|
||||
sudo apt install mysql-client-core-8.0
|
||||
```
|
||||
|
||||
#### 步骤2:连接MySQL并创建数据库
|
||||
```bash
|
||||
# 连接MySQL(根据实际情况修改密码)
|
||||
mysql -uroot -p
|
||||
|
||||
# 在MySQL中执行:
|
||||
CREATE DATABASE IF NOT EXISTS `chat_gpt_yj` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
USE chat_gpt_yj;
|
||||
|
||||
# 然后导入SQL文件(按顺序)
|
||||
SOURCE /home/gc/gangyan/chat_web_backend/doc/sql/sys.sql;
|
||||
SOURCE /home/gc/gangyan/chat_web_backend/doc/sql/chat_gpt.sql;
|
||||
SOURCE /home/gc/gangyan/chat_web_backend/doc/sql/knowledge_base.sql;
|
||||
SOURCE /home/gc/gangyan/chat_web_backend/doc/sql/gpt_folder.sql;
|
||||
SOURCE /home/gc/gangyan/chat_web_backend/doc/sql/writter_docs.sql;
|
||||
SOURCE /home/gc/gangyan/chat_web_backend/doc/sql/quartz.sql;
|
||||
```
|
||||
|
||||
#### 步骤3:检查数据库配置
|
||||
|
||||
编辑 `src/main/resources/application-yj.yml`,确认:
|
||||
```yaml
|
||||
spring:
|
||||
datasource:
|
||||
url: jdbc:mysql://localhost:3306/chat_gpt_yj?...
|
||||
username: root
|
||||
password: 1234567890 # 确认密码正确
|
||||
```
|
||||
|
||||
### 方法3:如果密码不对,重置MySQL密码
|
||||
|
||||
```bash
|
||||
# 停止MySQL
|
||||
sudo systemctl stop mysql
|
||||
|
||||
# 以安全模式启动MySQL(跳过权限检查)
|
||||
sudo mysqld_safe --skip-grant-tables &
|
||||
|
||||
# 连接MySQL
|
||||
mysql -uroot
|
||||
|
||||
# 在MySQL中执行:
|
||||
USE mysql;
|
||||
UPDATE user SET authentication_string=PASSWORD('1234567890') WHERE User='root';
|
||||
FLUSH PRIVILEGES;
|
||||
EXIT;
|
||||
|
||||
# 重启MySQL
|
||||
sudo systemctl restart mysql
|
||||
```
|
||||
|
||||
## 验证数据库
|
||||
|
||||
```bash
|
||||
mysql -uroot -p1234567890 -e "SHOW DATABASES;" | grep chat_gpt_yj
|
||||
```
|
||||
|
||||
如果看到 `chat_gpt_yj`,说明数据库创建成功。
|
||||
|
||||
## 重新启动应用
|
||||
|
||||
```bash
|
||||
cd /home/gc/gangyan/chat_web_backend
|
||||
java -jar target/chat_web_yj.jar --spring.profiles.active=yj
|
||||
```
|
||||
Reference in New Issue
Block a user