
IT/DB 2021. 6. 9.
Flask mongoengine Objects() 와 Objects.get() 차이점
문제 정의는 flask mongoengine 에서 하고 있지만, mongoengine 이라는 것이 Django ORM 특성을 가져온 것으로 알고 있어 비스무리 한 곳을 찾아보았다. 원하는 답은 찾은 듯 하여 여기에 남겨두다. 머 쉽게는 리스트를 리턴해야 하는데 Objects.get()을 쓰면 제일 첫번째 놈 object 만 리턴한다는 것! https://code4human.tistory.com/81 [Django] Django의 ORM : get() 과 filter() 비교 Django ORM을 작성하면서 SQL문을 확인하곤 한다. 오류를 발견하면서 헷갈리는 get() 과 filter()을 간단히 정리한다. fetchone # ORM User.objects.get(id=1) #Return : Object..

IT/DB 2021. 5. 9.
MongoDB 관리자 계정 추가 권한 설정 방법 - db 쓰고 읽기
무엇이 이렇게 어렵다냐~~ 그냥 admin 권한을 주고 쓰도록만 해주자. 나중에 권한별로 사용자 관리를 다시 하더라도. 검색을 하다보니, 대부분 사용자 관리를 위한 admin을 설정하는 방법이 나와 있어서 실제 동작을 수행할 때 권한 오류가 나서 당황, 관리자 아이디, 패스워드 추가하기 그냥 쉽게 admin에 db, collection 을 읽고 쓸수 있는 권한을 줄 수 있도록만 설정해 보자. 관련글은 아래글 참고 https://bjcomm.co.kr/188?category=572933 [MongoDB] 관리자 계정 추가/삭제하기 처음 MongoDB를 설치하게되면 기본 계정은 존재하지 않고 생성해야 합니다. 또한 한 계정으로 여러 데이터베이스의 권한을 가질 수 없으며 1사용자 1데이터베이스 원칙이 기존 M..

IT/DB 2021. 4. 30.
MongoDB 백업하기 - mongodump
무슨 긴말이 필요할까? 그냥 성공한 명령어 저장 mongodump --out ~/저장디렉토리명 --host 127.0.0.1 --port 27017 -u 사용자명 -p 패스워드 --db 백업원하는DB명 --authenticationDatabase admin 딱 성공하면 아래처럼..저장디렉토리명 아래에 DB 이름으로 백업되어 있음을 볼 수 있다. 생각보다 파일 사이즈가 크네. 머 아무튼 성공 이제 복원해보러 가야지. 2021.03.18 - [IT/DB] - MongoDB 복원하기 - mongorestore MongoDB 복원하기 - mongorestore 백업 했으니 복원도 테스트 해봐야지 말이 필요없다. 성공한 내용은 아래와 같다. mongorestore --host 127.0.0.1 --port 270..

IT/DB 2021. 2. 19.
MongoDB Compass 로 데이터 내보내기
MongoDB Compass 로 데이터 내보내기 해보기 GUI 툴에도 이런 기능이 있다니 쉽게 CSV로 내보낼 수 있어서 좋네 일단 collection 메뉴에서 Export Collection을 선택한다. 모든걸 내보내도 되고, 원하는 데이터만 필터링 해서 내보내도 된다. 아래 그림에서 원하는 조건을 입력하면 원하는 데이터만 뽑아 낼 수 있다. 그럼 이제 뽑아낼 필드를 선택할 수 있다. 필드를 선택해서 Select output 을 선택하면, CSV 나 JSON 형태로 데이터를 내보낼 수 있다. 끝. 너무 편리하다. BJ.

IT/DB 2021. 2. 19.
MongoDB find remove 예제 몇개 - mongo shell
MongoDB find remove 예제 몇개 mongo shell에서 console 로 하나하나 쳐서 하려니 불편하긴 하지만 연습은 해 놔야지. 일단 DB를 수정하기 위해서는 아래 단계로 admin 권한을 획득하고 > use admin switched to db admin > db.auth('admin','패스워드') 1 > show databases admin 0.000GB config 0.000GB local 0.000GB twarelabDB 0.014GB > use 원하는DB명 switched to db twarelabDB > db.result.find({'box':{$regex:"pa_backup"}}) 부분 문자열로 Documents 가 있는지 확인해 보고, 필요하면 찾기에 사용한 검색식을 이..

IT/DB 2021. 2. 16.
Mongodb 한번에 여러 documents 필드값 바꾸기
몽고DB...sql query도 아니고...이것도 어렵네..에효 무튼 정답은 아래를 참고 일단 원하는 collection 에 원하는 document를 찾아 $set 이라는 키워드로 특정 필드값을 업데이트 하는 예제 아래는 전체를 찾아 workline 이라는 필드를 object id xxxxx 를 갖는 reference field 혹은 embedded document 값으로 변경하는 실제 명령 예제 > db.order_item.update({}, { $set: {"workline":ObjectId("602b5cc41c50452150fc5ad0")}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.order_item.updat..
