일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- IntelliJ
- spring
- grafana
- docker network
- java
- jenkins 설치
- Docker
- jenkins install
- Spring Boot
- 리눅스
- REACT
- MySQL
- error
- jenkins github
- CI/CD
- JavaScript
- Jenkins Pipeline
- 리액트
- subnetmask
- MongoDB
- jenkins jdk
- Jenkins
- jenkins maven
- jpa
- jenkins github 연동
- grpc
- nginx
- gradle
- vue.js
- Linux
- Today
- Total
목록DB(데이타베이스) (38)
뭐든 즐기면서 ;)

MongoDB Atlas에서 백업된 데이터를 다운로드 받으면 이와 같은 구조로 되어 있는데, 이 데이터를 그대로 복원시키는 방법이다. 명령어를 통해 DB 실행 DB 실행 명령어가 있는 위치로 이동한다.> cd C:\Program Files\MongoDB\Server\6.0\bin mongod 명령어를 이용하여 DB를 실행한다. 실행할 때, db data path를 지정하여 실행한다.> mongod --dbpath "C:\Users\pk\Downloads\atlas_backup"위 경로에는 아래와 같은, atlas에서 내려받은 백업 파일이 있어야 한다. DB가 시작되었으면, MongoDB compass에서 DB refresh를 해보자.위, 가져온 데이터들 확인이 가능하다.
// 일반 쿼리var doc = db.workspace.findOne({workspace_name : '90SET'});var jsonString = JSON.stringify(doc);var size = jsonString.length;print("Document size in bytes: ", size);// aggregation 사용var doc = db.workspace.aggregate( {$match: {workspace_name : '90SET'} } ,{$project: {_id: 0, projects: 1}} ,{$unwind: '$projects'} ,{$match: {"projects.project_name": 'SET011_M006'}} ..
배열 필드에 값을 push할 때, 단일이냐 복수냐에 따라서 주의해야 할 점이 한 가지 있다. 복수 ($each)를 함께 써야 함. db.client_category.updateOne( {조회조건} ,{$push: { 'categories.$[ctg1].array_field': {$each: [ {ctg_id: new ObjectId(), ctg_name: '입술', ctg_depth: []} ,{ctg_id: new ObjectId(), ctg_name: '발', ctg_depth: []} ,{ctg_id: new ObjectId(), ctg_name: '나', ctg_depth: []} ,{ctg_id: new ObjectId(), ctg_name: '기타', ctg_depth: []} ]} } } ,..
preserveNullAndEmptyArrays 옵션 사용 (해당 방법은 이 요청 한 번일 때 일시 적용이며, 영구적으로 $unset을 이용하여 삭제하길 원한다면 MongoDB 설정을 바꿔야 한다고 함.) field를 없애는 것 db.collection.update( { /* 업데이트 대상 문서를 선택하는 쿼리 조건 */ }, { $unset: { fieldName: "" } }, { writeConcern: { preserveNullAndEmptyArrays: true } } ) #mongodb field delete # mongodb update
MongoDB Tool 다운로드백업> mongodump --out [백업 파일 out 경로] --host 127.0.0.1 --port 27017 --db [DB명]> mongodump --out /home/sam/db_backup --host 127.0.0.1 --port 27017 --db statistic위와 같이 백업하면 /home/sam/db_backup 하위에 DB명과 일치하는 백업된 폴더가 존재함.# gzip 옵션> mongodump --gzip --out [백업 파일 out 경로].gz (나머지 위와 동일)# collection 단위> mongodump --out [백업 파일 out 경로] --host 127.0.0.1 --port 27017 --db [DB명] --collection [c..
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Update; ... public void updateByFilters() { Query query = new Query(); query.addCriteria(Criteria.where("workspace_id").is(new ObjectId("6494279c538ef1332cb2b2bf"))); U..
show create table [테이블명]\G
This is Query to find array field in collection. (workspace.projects.jobs의 모든 배열, 모든 필드를 가져온다.) db.workspace.find( { "projects.project_id": ObjectId('64949750000000000071b9d8') } ,{_id: 0, "projects.jobs.$": 1} ) ; workspace.projects.jobs의 모든 배열, 특정 필드를 가져오는 방법은 아래와 같다. db.workspace.find( { "projects.project_id": ObjectId('64949750000000000071b9d8') } ,{_id: 0, "projects.jobs.job_id": 1, "projec..