[유튜브 클론코딩] 3.1 Connecting to MongoDB
2021. 3. 1. 16:40ㆍProjects/유튜브 클론코딩
728x90
반응형
3.1 Connecting to MongoDB
Mongoose를 이용해서 MongoDB에 연결하기 - db.js
import mongoose from "mongoose";
mongoose.connect("mongodb://localhost:27017/mytube",
{
useNewUrlParser: true,
useFindAndModify:false
});
↑ db.js
db.js에 다음과 같이 작성한다. 의미는 몰라도 된다.
import mongoose from "mongoose";
mongoose.connect("mongodb://localhost:27017/mytube",
{
useNewUrlParser: true,
useFindAndModify:false
});
const db = mongoose.connection;
const handleOpen = () => console.log("✅ Connected to DB");
const handleError = () => console.log("❌ Error on DB Connection: ${error}");
db.once("open", handleOpen);
db.on("error",handleError);
↑ db.js
이렇게 작성하면,
데이터베이스에 연결되었다면 ✅ Connected to DB 라는 메시지가 콘솔에 뜬다.
지금 이게 데이터베이스가 왜 연결이 되고 있는거냐면 예전에 videoController.js에서 가짜로 작성했던 db.js가 import되어있기 때문인데, 그 부분을 일단 지워준다.
// import {videos} from "../db" //이 부분 삭제!
import routes from '../routes';
↑ videoController.js
그러면 실행해도 데이터베이스가 연결이 안된다.
이 데이터베이스 import 부분은 init.js로 갈것이다.
import "./db";
import app from "./app";
const PORT = 4000;
const handleListening = () => console.log(`✅Listening on: http://localhost:${PORT}`);
app.listen(PORT, handleListening);
↑ init.js
이렇게 되면 데이터베이스가 잘 연결이 된 것이다.
dotenv 설치하기
dotenv 설치 : npm install dotenv
dotenv란 사용자의 정보를 숨기고 싶을 때 사용한다.
오픈소스(깃허브)에 프로젝트를 공개했을 경우, 민감한 정보들을 다른 사람으로부터 숨겨야(보안성)할 경우가 생긴다.
그럴 때 dotenv 패키지를 사용하여 환경변수 파일을 외부에 만들고, 접근 관리할 수 있다.
*dotenv 사용은 다음 시간에
728x90
반응형
'Projects > 유튜브 클론코딩' 카테고리의 다른 글
[유튜브 클론코딩] 3.3 Video Model (0) | 2021.03.01 |
---|---|
[유튜브 클론코딩] 3.2 Configuring Dot Env (0) | 2021.03.01 |
[유튜브 클론코딩] 3.0 MongoDB and Mongoose (0) | 2021.03.01 |
[유튜브 클론코딩] 2.25 More Controllers (0) | 2021.02.24 |
[유튜브 클론코딩] 2.24 Log In and User Profile Controller (0) | 2021.02.24 |