유성 배포 앱에서 데이터를 재설정하는 간단한 방법이 있습니까?
예를 들어 이름이 지정된 앱을 배포 한 경우 test.meteor.com
해당 앱에서 수집 한 데이터를 어떻게 쉽게 재설정 할 수 있습니까?
로컬에서를 실행 meteor reset
하지만 프로덕션에서 무엇을해야할지 잘 모르겠습니다.
유성 배포 앱에서 데이터를 재설정하는 간단한 방법이 있습니까?
예를 들어 이름이 지정된 앱을 배포 한 경우 test.meteor.com
해당 앱에서 수집 한 데이터를 어떻게 쉽게 재설정 할 수 있습니까?
로컬에서를 실행 meteor reset
하지만 프로덕션에서 무엇을해야할지 잘 모르겠습니다.
답변:
앱이 있다면 프로젝트 디렉토리에서 할 수 있습니다.
meteor deploy test.meteor.com --delete
meteor deploy test.meteor.com
첫 번째는 앱을 삭제하므로 모두 비어 있습니다. 두 번째는 새로운 인스턴스를 다시 배포합니다.
한 가지 방법은 mongo 인스턴스에 직접 로그인하고 관련 데이터를 삭제하여 컬렉션 당 다음과 같이하는 것입니다.
$ meteor mongo APP.meteor.com
> db.users.drop()
> db.xxx.drop()
전체 DB를 삭제할 수는 있지만 환경을 혼란스럽게 만들고 --delete
어쨌든 앱에 다시 배포해야합니다.
> db.dropDatabase()
이것이 조금 오래되었다는 것을 알고 있지만 방금 컬렉션 이름을 변경했습니다. 그래서 당신의 /lib/collections.js
파일에서
someCollection = new Mongo.Collection("originalcollection");
된다
someCollection = new Mongo.Collection("newcollectionname");
이것은 물론 앱이 데이터베이스에 대한 데이터를 생성한다고 가정합니다.
originalcollection
.
myapp.meteor.com
프로덕션에 사용하지 않습니다 . 그리고 그렇게했다면 확실히 프로덕션 데이터베이스를 삭제하고 싶지 않을 것입니다. 저는이 전략을 사용하여 데이터를 손상시키지 않고 모델로 새로운 것을 안전하게 시도합니다. IMHO이 응답은 생산 데이터를 처리하는 훨씬 안전한 방법이기 때문에 반대표를받을 가치가있을 정도로 나쁘지 않았습니다. 그런 다음 @dcsan의 의견에 설명 된대로 항상 특정 컬렉션을 삭제할 수 있습니다.