流星がデプロイされたアプリからデータをリセットする簡単な方法はありますか?
たとえば、という名前のアプリをデプロイした場合test.meteor.com
、そのアプリによって収集されたデータを簡単にリセットするにはどうすればよいでしょうか。
私は地元で経営meteor reset
していますが、本番環境で何をすべきかわかりません。
流星がデプロイされたアプリからデータをリセットする簡単な方法はありますか?
たとえば、という名前のアプリをデプロイした場合test.meteor.com
、そのアプリによって収集されたデータを簡単にリセットするにはどうすればよいでしょうか。
私は地元で経営meteor reset
していますが、本番環境で何をすべきかわかりません。
回答:
アプリを持っている場合は、プロジェクトディレクトリでこれを行うことができます
meteor deploy test.meteor.com --delete
meteor deploy test.meteor.com
1つ目はアプリを削除するため、すべて空白になります。2つ目は、その新しいインスタンスをデプロイし直します。
1つの方法は、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
本番環境には使用しません。もしそうなら、あなたは間違いなく本番データベースを単に削除したくないでしょう。私はこの戦略を実行して、データを危険にさらすことなく、モデルで新しいことを安全に試します。私見では、この応答は、本番データを処理するためのはるかに安全な方法であるため、反対票を投じるに値するほど悪くはありませんでした。@dcsanのコメントで説明されているように、特定のコレクションをいつでも削除できます
単にあなたはあなたの流星DBにアクセスすることができます
プロダクション-db-d2.meteor.io:27017 / XYZ_meteor_com
ここで、XYZ =サブドメイン
認証にはmeteorauth(ユーザー名とパスワード)を使用します
rockmongo、robomogo、mongouiなどのツールからアクセスできます。
コマンドラインからアクセスするには
まず、ユーザー名、流星のパスワードを入力して認証します
$流星ログイン
次に
$ meteor mongo XYZ.meteor.com