python | MongoDBの一般的に使用されるコマンド

MongoDBはNoSQLのデータベースシステムは、より一般的なデータベースの一つです。また、リレーショナルデータベースに最も近い、データベースは、リレーショナルデータベースのテーブルに類似複数組(集合)を含んでいてもよい;各セットが列を特定したレコードのセットに格納することができ、カラムを自由に定義することができ、リレーショナル・データベース・テーブル内の各レコードに類似した、非常に柔軟。以下はと一緒に、基本的な管理コマンドにMongoDBに精通。

A、MongoDBのデータベースは、一般的に使用されるコマンド

1、ヘルプビューは、コマンドプロンプト
ヘルプ
)(db.helpを、
db.yourColl.help();

図2は、スイッチングは/データベース作成
raykaeso使用し、コレクション(テーブル)を作成するときに、現在のデータベースが自動的に作成され

3、すべてのデータベースクエリは、
DBSを示し;

4、データベースの現在の使用削除
db.dropDatabaseを();

指定されたホスト上のクローンデータベースから5、
db.cloneDatabase(「127.0.0.1」)、指定されたマシン上のデータベースのデータは、現在のデータベースにクローニング

図6に示すように、指定されたデータベースのデータベースに指定されたデータから複写機
db.copyDatabase(「MYDB」、「TEMP 」、「127.0.0.1」); MYDB複写機データベースTEMP内のデータによると

図7に示すように、現在のデータベースの修復
)(db.repairDatabaseします。

図8は、データベース現在使用中の表示
db.getName()/ DBと、

図9は、現在の状態のdb示す
)(db.statsします。

10、現在のDBのバージョン
db.version()。

図11は、dbの接続されたサーバマシンの現在のアドレスを表示
db.getMongoを();

12、クエリエラーメッセージおよびクリア前
db.getPrevError();
db.resetError()。

二、MongoDBのコレクションは、コレクションを集めました

1、凝集のセットを作成する(表)
db.createCollection( "collName"、{サイズ:20は、キャップされた:. 5、最大:100}); //成功表示を{ "OK":1}を作成
//がセットかどうかを判断します一定容量db.collName.isCappedは()です。

2、(表)凝集し得るために、指定された名前のセット
db.getCollection(「アカウント」)。

現在のdBの集約セットの全て取得する3、
db.getCollectionNamesを();

図4は、全てのDBクラスタ化インデックスの現在のステータスを示し
db.printCollectionStatsを();

図5に示すように、集電のクエリデータ量
db.yourColl.count()。

図6は、現在のデータセットの空間表示
db.yourColl.dataSizeを();

セットが現在のDB得るために集約7、
db.yourColl.getDBを();

8、凝集の現在の状態を取得する
db.coll.statsを();

図9は、凝集のセットの合計サイズ得
db.coll.totalSizeを();

10、集約ストレージ・スペースのセット
db.coll.storageSize()。

11、凝集リネームのセット
db.coll.renameCollection(「線」);リネーム線コル

12、現在の集約コレクション削除
)(db.coll.drop。

三、MongoDBはユーザ関連

図1に示すように、ユーザが追加される(作成)
db.createUser({ユーザー: 'ユーザ名'、PWD: 'XXXX'、ロール:[{役割: 'READWRITE'、DB 'DBNAME'}]});追加のユーザ提供パスワード読み取り専用かどうか

図2に示すように、データベース認証、セキュリティモード(ログイン)
db.auth( "光線"、 "123456")。

3、現在のすべてのユーザーが表示され
、ユーザーを表示します。

4、削除ユーザ
db.removeUser( "userNameに")。

四、MongoDBの集約コレクションクエリ

1、クエリのすべてのレコード
db.userInfo.find();
と等価:のUserInfoから選択*;
デフォルトのページのショーは20枚のレコードは、適合しない場合には、それが次の繰り返しデータを照会するためにコマンドを使用することができます。注:それを取ることができないコマンドを入力「;」
しかし、あなたはDBQuery.shellBatchSize = 50で、ページあたりのデータのサイズを設定することができます。このページは50件のレコードが表示されます。

図2に示すように、現在の集約されたデータセットが、クエリ除去する列の後に繰り返される
db.userInfo.distinct(「名前」)、
同じデータ名に除外
に対応する:ユーザー情報の中から選択distict名。

3、クエリレコード年齢= 22
db.userInfo.find({ "年齢":22 });
に相当する:年齢=ユーザー情報SELECT * FROM 22。

図4に示すように、クエリの記録条件
のMongoDB条件演算子では、次のとおり
(>)より大きい- $ GT
(<)未満- $ LT(> =)以上- $ GTE
(<=)以下- $ LTE db.userInfo.find ({年齢:{$ GT: 22}}); に相当する:年齢>ユーザー情報SELECT * FROM 22。

db.userInfo.find({年齢:{$ LT:22}});
相当于:ユーザー情報年齢<22 SELECT * FROM。db.userInfo.find({年齢:{$ GTE:25}})。相当于:年齢> = 25のUserInfoから選択*;

db.userInfo.find({年齢:{$ LTE:25}});
相当于:ユーザー情報年齢<= 25 SELECT * FROM。5、及び查询db.userInfo.find({年齢:{$ GTE:23、$ LTE:26}})。相当于:ユーザー情報wher年齢> = 23、年齢<= 26 SELECT * FROM
db.userInfo.find({ 'raykaeso'、年齢:名22});
相当于:ユーザー情報名= 'raykaeso' SELECT * FROMと年齢=「22 ';

6、ファジー検索文字
db.userInfo.find({名:/モンゴ/});
//対応%%
[コード]ユーザー情報からSELECT * WHERE '%% Mongoの'のような名前。

図7に示すように、クエリデータ指定された列
db.userInfo.find({}、{名前: 1、年齢:1});
に対応する:選択名、ユーザー情報から年齢は、
コース名もtrueまたはfalseに使用することができます

8、条件によるデータのクエリは、カラム指定
db.userInfo.find({{$ GT年齢 、{名前:1、年齢:1} 25}})
に対応する:選択名、ユーザー情報から年齢年齢<25。

図9は、ソート
順序を昇順に:db.userInfo.find()ソート({年齢 :1});.
降順:. Db.userInfo.find()ソート({年齢:-1})。

データ5問い合わせる前に10、
db.userInfo.find()リミット(5) 。
と等価です:ユーザ情報の制限5から選択*;

11、クエリデータの後に10
; db.userInfo.find()スキップ(10) 。
と等価です:のUserInfo総ASからSELECT COUNT();
ユーザ情報の制限10、合計から選択します。

5~10の間の12、クエリデータ
Db.userInfo.find()リミット(10)。 (5).SKIP、
ページングのために使用することができ、制限ページサイズは、最初の数ページのpageSizeスキップ
に相当するが:ユーザー情報の制限から選択5、10。

13、又は与查询
db.userInfo.find({$または:[{年齢:22}、{年齢:25}]});
相当于:年齢= 22、年齢= 25ユーザー情報SELECT * FROM。

14、最初のクエリデータ
db.userInfo.findOne();
db.userInfo.find()限界;.(1)
に等しい:ユーザ情報リミット1 SELECT * FROM。

15、番号のレコードのクエリ結果セット
db.userInfo.find({年齢:{$ GTE :25}})カウントが();.
に等しい:ユーザー情報の選択数(*)年齢> = 20。

五、MongoDBのインデックス

索引作成する1
; db.userInfo.ensureIndex({1名})
db.userInfo.ensureIndex({名:1、TS:-1})。

図2は、すべてのインデックスの現在の総計組チェック
db.userInfo.getIndexesを();

図3は、インデックスは合計サイズを参照するレコード
db.userInfo.totalIndexSizeを();

4、現在のコレクションのすべてのインデックス情報読み出し
db.users.reIndexを();

図5は、指定されたインデックスの削除
db.users.dropIndex( "NAME_1を");

図6に示すように、すべてのインデックスのインデックス削除
db.users.dropIndexesを();

六は、MongoDBは、変更、削除データ収集を追加します

1、加え
db.users.save({名:「zhangsan」 、年齢:25、性別:真});
データを追加したデータ列が固定されておらず、データ対象を追加します

2、修改
db.users.update({年齢:25}、{セット$ {名: 'changeName'}}、FALSE、TRUE);
相当于:更新ユーザーセット名= 'changeName'ここで、年齢= 25。
db.users.update({名: 'リージ'}、{$ INC:{年齢:50}}、偽、TRUE);
相当于:更新ユーザ設定年齢=年齢+ 50ここで、NAME = 'リージ'。
db.users.update({名: 'リージ'}、{$ INC:{年齢:50}、$集合:{名: 'HOHO'}}、偽、真);
相当于:更新ユーザー設定年齢=年齢ここで、NAME = 'リシ' + 50、NAME = 'HOHO'。

3、削除
db.users.remove({年齢:132}) 。

4、変更、削除、クエリ
db.users.findAndModify({
クエリ:{年齢:{$ GTE:25}}、
び替え:{年齢:-1}、
更新:{$ SET:{名: 'A2'}、$ incがあります:{年齢:2}}、
除:trueに
})。

A、MongoDBのデータベースは、一般的に使用されるコマンド

1、ヘルプビューは、コマンドプロンプト
ヘルプ
)(db.helpを、
db.yourColl.help();

図2は、スイッチングは/データベース作成
raykaeso使用し、コレクション(テーブル)を作成するときに、現在のデータベースが自動的に作成され

3、すべてのデータベースクエリは、
DBSを示し;

4、データベースの現在の使用削除
db.dropDatabaseを();

指定されたホスト上のクローンデータベースから5、
db.cloneDatabase(「127.0.0.1」)、指定されたマシン上のデータベースのデータは、現在のデータベースにクローニング

図6に示すように、指定されたデータベースのデータベースに指定されたデータから複写機
db.copyDatabase(「MYDB」、「TEMP 」、「127.0.0.1」); MYDB複写機データベースTEMP内のデータによると

図7に示すように、現在のデータベースの修復
)(db.repairDatabaseします。

図8は、データベース現在使用中の表示
db.getName()/ DBと、

図9は、現在の状態のdb示す
)(db.statsします。

10、現在のDBのバージョン
db.version()。

図11は、dbの接続されたサーバマシンの現在のアドレスを表示
db.getMongoを();

12、クエリエラーメッセージおよびクリア前
db.getPrevError();
db.resetError()。

二、MongoDBのコレクションは、コレクションを集めました

1、凝集のセットを作成する(表)
db.createCollection( "collName"、{サイズ:20は、キャップされた:. 5、最大:100}); //成功表示を{ "OK":1}を作成
//がセットかどうかを判断します一定容量db.collName.isCappedは()です。

2、(表)凝集し得るために、指定された名前のセット
db.getCollection(「アカウント」)。

現在のdBの集約セットの全て取得する3、
db.getCollectionNamesを();

図4は、全てのDBクラスタ化インデックスの現在のステータスを示し
db.printCollectionStatsを();

図5に示すように、集電のクエリデータ量
db.yourColl.count()。

図6は、現在のデータセットの空間表示
db.yourColl.dataSizeを();

セットが現在のDB得るために集約7、
db.yourColl.getDBを();

8、凝集の現在の状態を取得する
db.coll.statsを();

図9は、凝集のセットの合計サイズ得
db.coll.totalSizeを();

10、集約ストレージ・スペースのセット
db.coll.storageSize()。

11、凝集リネームのセット
db.coll.renameCollection(「線」);リネーム線コル

12、現在の集約コレクション削除
)(db.coll.drop。

三、MongoDBはユーザ関連

図1に示すように、ユーザが追加される(作成)
db.createUser({ユーザー: 'ユーザ名'、PWD: 'XXXX'、ロール:[{役割: 'READWRITE'、DB 'DBNAME'}]});追加のユーザ提供パスワード読み取り専用かどうか

図2に示すように、データベース認証、セキュリティモード(ログイン)
db.auth( "光線"、 "123456")。

3、現在のすべてのユーザーが表示され
、ユーザーを表示します。

4、削除ユーザ
db.removeUser( "userNameに")。

四、MongoDBの集約コレクションクエリ

1、クエリのすべてのレコード
db.userInfo.find();
と等価:のUserInfoから選択*;
デフォルトのページのショーは20枚のレコードは、適合しない場合には、それが次の繰り返しデータを照会するためにコマンドを使用することができます。注:それを取ることができないコマンドを入力「;」
しかし、あなたはDBQuery.shellBatchSize = 50で、ページあたりのデータのサイズを設定することができます。このページは50件のレコードが表示されます。

図2に示すように、現在の集約されたデータセットが、クエリ除去する列の後に繰り返される
db.userInfo.distinct(「名前」)、
同じデータ名に除外
に対応する:ユーザー情報の中から選択distict名。

3、クエリレコード年齢= 22
db.userInfo.find({ "年齢":22 });
に相当する:年齢=ユーザー情報SELECT * FROM 22。

図4に示すように、クエリの記録条件
のMongoDB条件演算子では、次のとおり
(>)より大きい- $ GT
(<)未満- $ LT(> =)以上- $ GTE
(<=)以下- $ LTE db.userInfo.find ({年齢:{$ GT: 22}}); に相当する:年齢>ユーザー情報SELECT * FROM 22。

db.userInfo.find({年齢:{$ LT:22}});
相当于:ユーザー情報年齢<22 SELECT * FROM。db.userInfo.find({年齢:{$ GTE:25}})。相当于:年齢> = 25のUserInfoから選択*;

db.userInfo.find({年齢:{$ LTE:25}});
相当于:ユーザー情報年齢<= 25 SELECT * FROM。5、及び查询db.userInfo.find({年齢:{$ GTE:23、$ LTE:26}})。相当于:ユーザー情報wher年齢> = 23、年齢<= 26 SELECT * FROM
db.userInfo.find({ 'raykaeso'、年齢:名22});
相当于:ユーザー情報名= 'raykaeso' SELECT * FROMと年齢=「22 ';

6、ファジー検索文字
db.userInfo.find({名:/モンゴ/});
//対応%%
[コード]ユーザー情報からSELECT * WHERE '%% Mongoの'のような名前。

図7に示すように、クエリデータ指定された列
db.userInfo.find({}、{名前: 1、年齢:1});
に対応する:選択名、ユーザー情報から年齢は、
コース名もtrueまたはfalseに使用することができます

8、条件によるデータのクエリは、カラム指定
db.userInfo.find({{$ GT年齢 、{名前:1、年齢:1} 25}})
に対応する:選択名、ユーザー情報から年齢年齢<25。

図9は、ソート
順序を昇順に:db.userInfo.find()ソート({年齢 :1});.
降順:. Db.userInfo.find()ソート({年齢:-1})。

データ5問い合わせる前に10、
db.userInfo.find()リミット(5) 。
と等価です:ユーザ情報の制限5から選択*;

11、クエリデータの後に10
; db.userInfo.find()スキップ(10) 。
と等価です:のUserInfo総ASからSELECT COUNT();
ユーザ情報の制限10、合計から選択します。

5~10の間の12、クエリデータ
Db.userInfo.find()リミット(10)。 (5).SKIP、
ページングのために使用することができ、制限ページサイズは、最初の数ページのpageSizeスキップ
に相当するが:ユーザー情報の制限から選択5、10。

13、又は与查询
db.userInfo.find({$または:[{年齢:22}、{年齢:25}]});
相当于:年齢= 22、年齢= 25ユーザー情報SELECT * FROM。

14、最初のクエリデータ
db.userInfo.findOne();
db.userInfo.find()限界;.(1)
に等しい:ユーザ情報リミット1 SELECT * FROM。

15、番号のレコードのクエリ結果セット
db.userInfo.find({年齢:{$ GTE :25}})カウントが();.
に等しい:ユーザー情報の選択数(*)年齢> = 20。

五、MongoDBのインデックス

索引作成する1
; db.userInfo.ensureIndex({1名})
db.userInfo.ensureIndex({名:1、TS:-1})。

図2は、すべてのインデックスの現在の総計組チェック
db.userInfo.getIndexesを();

図3は、インデックスは合計サイズを参照するレコード
db.userInfo.totalIndexSizeを();

4、現在のコレクションのすべてのインデックス情報読み出し
db.users.reIndexを();

図5は、指定されたインデックスの削除
db.users.dropIndex( "NAME_1を");

図6に示すように、すべてのインデックスのインデックス削除
db.users.dropIndexesを();

六は、MongoDBは、変更、削除データ収集を追加します

1、加え
db.users.save({名:「zhangsan」 、年齢:25、性別:真});
データを追加したデータ列が固定されておらず、データ対象を追加します

2、修改
db.users.update({年齢:25}、{セット$ {名: 'changeName'}}、FALSE、TRUE);
相当于:更新ユーザーセット名= 'changeName'ここで、年齢= 25。
db.users.update({名: 'リージ'}、{$ INC:{年齢:50}}、偽、TRUE);
相当于:更新ユーザ設定年齢=年齢+ 50ここで、NAME = 'リージ'。
db.users.update({名: 'リージ'}、{$ INC:{年齢:50}、$集合:{名: 'HOHO'}}、偽、真);
相当于:更新ユーザー設定年齢=年齢ここで、NAME = 'リシ' + 50、NAME = 'HOHO'。

3、削除
db.users.remove({年齢:132}) 。

4、変更、削除、クエリ
db.users.findAndModify({
クエリ:{年齢:{$ GTE:25}}、
び替え:{年齢:-1}、
更新:{$ SET:{名: 'A2'}、$ incがあります:{年齢:2}}、
除:trueに
})。

おすすめ

転載: www.cnblogs.com/huangjiangyong/p/12131442.html