codestates / codestates/SIMSIMAE-server

[Error] 데이터베이스 선택 안되서 발생한 오류( No database selected)

Đang mở
#11 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
completed error
Ngôn ngữ chính
JavaScript
Star
1
Fork
0
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

### 어떤 에러인가요?
- 실행 환경 : EC2 가상 서버 - 터미널
- DB와 연결되서 쿼리문은 실행되는데 쿼리문에 맞는 데이터를 가져오지 못함
![image](https://user-images.githubusercontent.com/77980674/121559722-ce770380-ca51-11eb-97e3-b08404c13d9b.png)

### 에러 메시지
```
Executing (default): SELECT `id`, `url`, `cotegory_id` FROM `Url` AS `Url` WHERE `Url`.`id` = 1;
DatabaseError [SequelizeDatabaseError]: No database selected
at Query.formatError (/home/ubuntu/SIMSIMAE-server/node_modules/sequelize/lib/dialects/mysql/query.js:265:16)
```

### 에러 핸들링 방법
- 데이터 베이스 설정이 안된 것 같아 models/index.js 파일에서 config를 콘솔로 찍어봄
- `pm2 log`로 출력 결과 확인
- database가 undefined으로 되어있어 .env파일 변수명과 값이 config.js 파일과 일치하는지 비교

```
const config = require(__dirname + '/../config/config.js')[env];
console.log(config);

//출력 결과
config {
username: 'admin',
password: 'songyuijo28',
database: undefined,
host: 'simsimae-database.cxlafetwv62w.ap-northeast-2.rds.amazonaws.com',
port: '23306',
dialect: 'mysql'
}
```
### 에러 핸들링을 위해 참고한 레퍼런스

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Bắt đầu bằng cách so sánh tên và giá trị các biến trong .env với config/config.js, sau đó kiểm tra đầu ra cấu hình từ models/index.js. Sử dụng pm2 log để xác minh liệu giá trị cơ sở dữ liệu có vẫn là undefined trong khi truy vấn Sequelize chạy hay không. Hoàn tất khi cấu hình bao gồm cơ sở dữ liệu và truy vấn được báo cáo lấy được dữ liệu của nó mà không gặp lỗi.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
javascript, mysql
Lĩnh vực
backend, databases
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.