티스토리 뷰

 

애플 실리콘 몽고디비 설치

  • Homebrew 설치
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

 

  • 몽고디비 설치
brew tap mongodb/brew
brew install mongodb-community
brew install mongosh
  • 몽고디비 실행
brew services start mongodb-community

 

  • 몽고디비 프롬프트 접속
mongosh
  • 관리자 계정 추가
use admin
db.cerateUser({user:'이름', pwd:'비밀번호',roles:['root']})
  • 몽고디비 중지
brew services stop mongodb-community
  • 몽고디비 설정 파일 수정
vim /opt/homebrew/etc/mongod.conf
  • `mongod.conf` 파일에 보안 설정 추가
...
security:
	authorization: enabled
  • 몽고디비 다시 시작후 몽고디비 서버 접속
brew services start mongodb-community
mongosh admin -u [이름] -p [비밀번호]

 

데이터베이스 및 컬렉션 생성하기


데이터 베이스 생성

`use [데이터베이스명]`으로 데이터베이스를 생성합니다.

use nodejs

 

데이터베이스 목록 확인

`show dbs` 명령어로 데이터베이스 목록을 확인합니다. 데이터베이스를 생성하고 데이터를 삽입하지 않았다면 해당 데이터베이스는 보이지는 않습니다.

show dbs

현재 사용중인 데이터베이스 확인하기

`db` 명령어로 현재 사용중인 데이터베이스를 확인합니다.

db

 

컬렉션 생성

`db.createCollection([콜렉션명])`으로 데이터베이스에 콜렉션을 생성합니다.

db.createCollection('users')
db.createCollection('comments')

 

컬렉션 목록 확인

`show collections` 명령어로 생성한 컬렉션 목록을 확인합니다.

show collections

 

CRUD 작업하기


Create(생성)

`db.컬렉션명.insertOne(다큐먼트)`명령어를 사용해 다큐먼트를 생성할 수 있습니다.

db.users.insertOne({name:'bearn', age: 24, married: false, comment: '안녕하세요', createdAt: new Date()});

Read(조회)

`db.컬렉션명.find{}`메서드를 사용해 다큐먼트를 조회할 수 있습니다.

db.users.find({});

특정 필드만 조회하고 싶으면 `find` 메서드의 두 번째 인수로 조회할 필드를 넣으면 됩니다. 1또는 true를 지정해 원하는 필드를 가져옵니다.

db.users.find({}, {_id: 0, name: 1, married: 1});

`$gt`(초과), `$gte`(이상), `$lt`(미만), `$lte`(이하), `$ne`(같지 않음), `$or`(또는), `$in`(배열 요소 중 하나) 연산자를 사용해 조건을 줄 수 있습니다.

db.users.find({$or: [{age: {$gt}}, {married: false}]}, {_id: 0, name: 1, age: 1})

`sort` 메서드를 사용해 정렬을 수행할 수 있습니다. -1은 내림차순 1은 오름차순입니다.

db.users.find({}, {_id: 0, name: 1, age:1}).sort({age: -1});

`limit` 메서드를 사용해 조회할 다큐먼트 개수를 설정할 수 있습니다.

db.users.find({}, {_id: 0, name: 1, age:1}).sort({age: -1}).limit(1);

`skip` 메서드를 사용하면 다큐먼트 개수를 몇개 건너뛸지 설정합니다.

db.users.find({}, {_id: 0, name: 1, age:1}).sort({age: -1}).limit(1).skip(1);

Update(수정)

`db.컬렉션명.updateOne({수정할 다큐먼트 조건}, {$set:{수정할 내용}})`명령어로 컬렉션을 수정합니다. 여러 건을 수정하려면 `updateMany` 메서드를 사용합니다.

db.users.updateOne({name:'bear'}, {$set: {comment: '반갑습니다'}});

Delete(삭제)

`db.컬렉션명.deleteOne({삭제할 다큐먼트 조건})` 명명러를 이용해 다큐먼트를 삭제합니다. 여러 건을 삭제하려면 `deleteMany` 메서드를 사용합니다.

db.users.deleteOne({name:'bear'});

 

 

참고


 

 

Node.js 교과서 : 네이버 도서

네이버 도서 상세정보를 제공합니다.

search.shopping.naver.com

 

 

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지 강의 | 제로초(조현영) - 인프런

제로초(조현영) | 노드가 무엇인지부터, 자바스크립트 최신 문법, 노드의 API, npm, 모듈 시스템, 데이터베이스, 테스팅 등을 배우고 5가지 실전 예제로 프로젝트를 만들어 나갑니다. 클라우드에 서

www.inflearn.com

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함