호랑이 개발일기
[ MongoDB 초기셋팅 ] 초간단 ;; MongoDB 셋팅하기 본문
이번에 Node.js 공부하면서 몽고디비가 필요하였다.
그러면서 몽고디비를 셋팅하려고하는데 ····.
잡다한 글은 일상에 하고, 바로 본론부터 해보자.
몽고 디비 페이지를 접속해주세요.
나중에 변경 가능하니 잘 채워 넣어 봅시다.
무료 티어 및 서버 위치 한국과 물리적으로 가장 가까운 곳을 골라줍니다.
Database Access 메뉴에서 DB 접속용 아이디/비번을 생성합니다.
아이디 비번을 제작 후 어디다 메모 필수!!
▲ 주의점은 역할을 atlas admin으로 설정합시다.
그래야 그 아이디로 nodejs에서 DB 접속가능
Network Access 메뉴에서 IP를 추가합니다.
다른곳에서 코딩을할 경우 Allow access from anywhere을 누르시거나 0.0.0.0/0 을 추가합니다.
Database / collection 만들기를 진행합니다.
Cluster는 하나의 호스팅 공간,
거기 안에 데이터베이스를 만들어야 데이터를 저장할 수 있습니다.
▲ 데이터베이스 이름을 맘대로 설정해주면 됩니다.
저는 이렇게 했는데 이러면 mongonodeapp이라는 이름의 데이터베이스가 하나 생성됩니다.
여기서 잠깐!
Mongo DB 사용이유는?
- 처음 다룰 때 어려운 셋팅작업이 필요하지 않음 (스키마 생성 등 필요없음)
- SQL 안배워도 됨
- 복잡한 자료형 몰라도 됨
- 평생 무료 호스팅해주는 곳이 있음
.
.
.
DB 접속하는 URL 찾아오기
1. 메인화면 셋팅이 끝나면 CONNECT라는 작은 흰색 버튼 누르기
2. 가운데 Connect Your Application 버튼 누르기
3. (1) Choose your driver version 에서 Node.js 선택되어있는지 잘 확인하기
3. (2) 밑에 접속 URL(Connection String) 긴게 뜨면 복사해서 일단 메모장 같은 곳에 저장해놓기
Server.js || index.js 에서 DB접속하려면
1. 터미널 켜서 npm install mongodb@3.6.4 를 입력해서 라이브러리를 설치합니다.
MongoDB 접속을 쉽게 도와주는 라이브러리
2. server.js 상단 쯤에 다음 코드를 추가합니다. 필자는 server.js 입니다.
const express = require('express')
app.use(express.urlencoded({ extended: true }));
const app = express()
const MongoClient = require('mongodb').MongoClient
MongoClient.connect('님 접속 URL', function(에러, client){
if (에러) return console.log(에러)
app.listen(8080, function() {
console.log('listening on 8080')
})
})
부가 설명
- URL
mongodb+srv://디비계정아이디:디비계정패스워드@cluster0-qaxa3.mongodb.net/데이터베이스이름?retryWrites=true&w=majority
에러?
1. 접속 URL 양끝에 따옴표 잘있는지 확인하시고
2. URL 안에 아이디 비번란에 Atlas 계정이 아니라 Database Access 메뉴에서 만든 DB 계정 넣었는지 다시 확인
3. URL 내에 비번 입력시 특수문자를 넣어야하시면 (참고) 하기 귀찮으면 계정만들 때 특수문자를 넣지말기
4. Network Access 메뉴에서 허용한 IP에서 접속하고 있습니까?
5. app. listen 코드를 저기로 옮긴게 맞는가?
6. 나머지는 오타
그외 ····.
'SQL' 카테고리의 다른 글
[ MySQL ] nullpointerexception 나 같은 사람 없길 빌며..🙏 (0) | 2023.08.29 |
---|---|
[ SQLD ] 합격후기 & 공부방법 ( feat. 빡대가리식 ) (3) | 2023.04.14 |
[ MYSQL ] 샘플 테이블 + 쿼리 연습 문제 (0) | 2023.02.17 |
[ MYSQL ] 기본 문법 (0) | 2023.02.17 |
[MySQL] 서버 재실행 & 실행 & 다시 실행 & 종료 (0) | 2022.12.22 |