[mongoDB] 명령어
몽고디비 시작 및 접속(Linux)
- 서비스 시작
$ sudo service mongod start
- 서비스 중지
$ sudo service mongod stop
- 서비스 상태확인
$ sudo service mongod status
몽고디비 시작 및 접속(Windows)
- 서비스 시작
C:\"Program Files"\MongoDB\Server\3.6\bin\mongod
몽고디비는 기본적으로
C:\data\db
경로를 바라보며 시작한다. 해당 경로가 없을 경우 정상적으로 서비스가 시작되지 않고 오류가 발생하므로 미리 해당 폴더를 만들어 두도록 한다. - 디비서버 접속
C:\"Program Files"\MongoDB\Server\3.6\bin\mongo
mongo shell
- 원격 디비서버 접속
mongo shell 버젼과 원격 몽고디비의 버젼이 다를 경우 접속이 안 될 수 있음$ mongo --username alice --password abc123 --host mongodb0.tutorials.com --port 28015
- 특정 DB로 접속
$ mongo ds239911.mlab.com:39911/anony -u <dbuser> -p <dbpassword>
데이터베이스 관리
- 데이터베이스 생성
> use talkplace switched to db talkplace
- 현재 데이터베이스 확인
> db talkplace
- 데이터베이스 목록 확인
> show dbs admin 0.000GB config 0.000GB local 0.000GB talkplace 0.000GB test 0.000GB
- 데이터베이스 삭제
> use talkplace switched to db talkplace > db.dropDatabase() { "dropped" : "talkplace", "ok" : 1 } > show dbs admin 0.000GB config 0.000GB local 0.000GB test 0.000GB >
콜렉션 관리
- 콜렉션 생성
기본 옵션으로 생성> db.createCollection("posts") { "ok" : 1 }
- 콜렉션 목록 확인
> show collections book posts
- 콜렉션에 다큐먼트 추가
> db.posts.insert({"key" : "BJwttIGe7", "title" : "오늘은 왜케 잠잠하지.. 허허", "writer" : "송혜교", "conten t" : "그러니 왠지 더욱 불안..\n", "date" : 1528093055313 }) WriteResult({ "nInserted" : 1 })
posts 콜렉션이 이미 생성되지 않은 경우에는 자동으로 생성된 후 다큐먼트가 추가된다. 아래와 같이 배열로 여러 건을 한꺼번에 추가할 수도 있다
> db.posts.insert([ ... {"key" : "rJf4T8zlm", "title" : "이제 대략 정리가 된거 같다아", "writer" : "휴우", "content" : "정신 하나 도 없었엉~~", "date" : 1528093993879 }, ... {"key" : "SyTvQvflX", "title" : "이제 나왔다", "writer" : "카카", "content" : "서버에서 돈다 이젠", "date " : 1528095589017 } ... ]) BulkWriteResult({ "writeErrors" : [ ], "writeConcernErrors" : [ ], "nInserted" : 2, "nUpserted" : 0, "nMatched" : 0, "nModified" : 0, "nRemoved" : 0, "upserted" : [ ] }) >
- 콜렉션 삭제
> show collections book posts > db.book.drop() true > show collections posts >
다큐먼트 관리
- 전체 다큐먼트 목록 확인
> db.posts.find() { "_id" : ObjectId("5b15e27b8169daf6fd8c7366"), "key" : "BJwttIGe7", "title" : "오늘은 왜케 잠잠하지.. 허허", "writer" : "송혜교", "content" : "그러니 왠지 더욱 불안..\n", "date" : 1528093055313 } { "_id" : ObjectId("5b15e27b8169daf6fd8c7367"), "key" : "rJf4T8zlm", "title" : "이제 대략 정리가 된거 같다아" , "writer" : "휴우", "content" : "정신 하나도 없었엉~~", "date" : 1528093993879 } { "_id" : ObjectId("5b15e27b8169daf6fd8c7368"), "key" : "SyTvQvflX", "title" : "이제 나왔다", "writer" : "카 카", "content" : "서버에서 돈다 이젠", "date" : 1528095589017 } { "_id" : ObjectId("5b15e27b8169daf6fd8c7369"), "key" : "SJblZ_Me7", "title" : "안녕", "writer" : "이것도", " content" : "입력할때 좀 버벅 거리는 현상이 조금 있는거 같은디", "date" : 1528099049206 } >
- 특정 속성의 값이 어떤 값이 아닌 다큐먼트 조회
db.posts.find({uuid : {"$ne" : "xxxxxx"}}).pretty()
- 다큐먼트 삭제
db.posts.remove({key : "BJwttIGe7"})
- 다큐먼트 수정
db.posts.update({uuid: "xxxx1"}, {"$set" : {uuid: "zzzz2"}}, {multi: true})
Comments