mongodb_共通コマンド

9623 ワード

MongoDB
NoSQLとは、非リレーショナル・データベースのことです.NoSQLは、Not Only SQLの略とも呼ばれ、従来のリレーショナル・データベースとは異なるデータベース管理システムの総称です.現代のコンピューティングシステムでは、毎日ネットワーク上で膨大なデータ量が発生しています.これらのデータの大部分はリレーショナル・データベース管理システム(RDBMS)によって処理される
  • リレーショナル・データベース
  • ACIDルール
  • に従う.
  • 高度組織化構造化データ
  • 構造化クエリ言語(SQL)(SQL)
  • データおよびリレーションは、個別のテーブルに格納されます.
  • データ操作言語、データ定義言語
  • 厳格な整合性
  • 基礎トランザクション
  • 非リレーショナル・ライン・データベース
  • はSQL
  • だけでなく
  • 宣言されていないクエリ言語
  • 予め定義されていないモード
  • キー-値ペアストレージ、カラムストレージ、ドキュメントストレージ、グラフィックデータベース
  • 最終的な一貫性は、ACID属性
  • ではない.
  • 非構造化および予知不可能なデータ
  • CAP定理
  • 高性能、高可用性、および伸縮性1つのデータベースに複数のセット(データテーブル)があり、1つのセットに複数のキー値ペア(フィールドおよび値)がある
  • がある.

    MongoDBインストール
  • windowはmongodyの公式サイトをダウンロードして、システムによって
  • を選択します
  • インストール、アホデフォルトインストール、最後にinstall MongodDB Compass(データベース可視化管理ツール)
  • をキャンセル
  • 環境変数構成は、データベースインストールパスbinのディレクトリを=>環境変数=>ユーザ変数=>pathの
  • に追加する.
  • $mongo--versionバージョン番号表示インストール成功
  • パス構成、$mongod--dbpath="C:Program FilesMongoDBServer4.2datadb"--logpath="C:Program FilesMongoDBServer4.2logmongod.log"--install--serviceName"MongoDB"--dbpathはデータベースの格納パスを表し、--logpathは日誌の格納パスを表し、--install--serviceNameサービス名
  • MongoDB概念解析
    SQL用語/概念
    MongoDB用語/概念
    説明/説明
    database
    database
    データベース#データベース#
    table
    collection
    データベース・テーブル/コレクション
    row
    document
    データレコード行/ドキュメント
    column
    field
    データフィールド/ドメイン
    index
    index
    索引
    table joins
    テーブル接続、MongoDBはサポートされていません
    primary key
    primary key
    メインキー、MongoDBが自動的に_idフィールドをプライマリキーに設定
    MongoDB共通コマンド
  • $mongo、デフォルトでmongodbに接続され、ユーザーパスワードが設定されていない場合
  • use database_name、データベースが存在しない場合はデータベースを作成し、そうでない場合は指定したデータベースに切り替えます.
  • > use runoob
    > switched to db runoob
    
  • show dbsはすべてのデータベースを表示し、データのないデータベースは表示されません.db現在使用されているデータベースを表示する
  • > show dbs
    admin   0.000GB
    config  0.000GB
    local   0.000GB
    test    0.000GB
    > db
    test
    >
    
  • db.dropDatabase()現在のデータベース
  • を削除
    > show dbs
    admin   0.000GB
    config  0.000GB
    local   0.000GB
    test    0.000GB
    > db.dropDatabase()
    { "dropped" : "test", "ok" : 1 }
    > show dbs
    admin   0.000GB
    config  0.000GB
    local   0.000GB
    >
    
  • db.crateCollection(name,options)、コレクションの作成(データテーブル)、コレクションの作成名、options、オプションパラメータ、メモリサイズおよびインデックスに関するオプション
  • を指定します.
    switched to db test
    > db.createCollection('runoob')
    { "ok" : 1 }
    > show collections //   show tables  
    runoob
    >
    //        mycol,         6142800 KB,         10000  。
    // capped:   ,   true,    size  ,          ,       ,           
    // autoIndexId:   ,true   _id      
    // size:   ,            ,     (KB)。
    // max:   ,                。
    > db.createCollection('mycol', {capped: true, autoIndexId: true, size: 6142800, max: 10000})
    {
       // autoIndexId     ,          
      "note" : "the autoIndexId option is deprecated and will be removed in a future release",
      "ok" : 1
    }
    >
    //  MongoDB ,        ,MongoDB       ,     
    > db.mycol2.insert({'name': 'jack'})
    WriteResult({ "nInserted" : 1 })
    > show collections
    mycol
    mycol2
    runoob
    >
    
  • db.COLLECTION_NAME.drop(),削除セット(データテーブル)
  • > show collections
    mycol
    mycol2
    runoob
    > db.mycol2.drop()
    true
    > show collections
    mycol
    runoob
    >
    
  • [INSERT], db.COLLECTION_NAME.insert(document)、ドキュメント
  • を挿入
    //               ,          ,          ,   id(    )  
    //   : db.COLLECTION_NAME.insert(document)
    > db.col.insert({title: 'MongoDB', 
        description: 'MongoDB     Nosql    ',
        url: 'https://www.mongodb.com/',
        tags: ['mongodb', 'database', 'NoSQL'],
        likes: 100
    })
    WriteResult({ "nInserted" : 1 })
    
  • [DELETE], db.COLLECTION_NAME.remove(document)、ドキュメント
  • を削除
    //   
    db.collection.remove({
      , //    
      {
        justOne: ,  //      true 1,        ,        (   false),            
        writeConcern: , //        .
      }
    })
    > db.col.remove({'name': 'jack'}) //   col     title jack   
    WriteResult({ "nRemoved" : 2 }) //          
    > db.col.remove({title: 'MongoDB'}, {justOne: true}) //        
    WriteResult({ "nRemoved" : 1 })
    >db.col.remove({}) //            
    >
    
  • [UPDATE], db.COLLECTION_NAME.update()は、文書
  • を更新する
    // update()             。      :
    db.collection.update(    
    	,  //     ,  sql  where     
    	, // update            ( $,$inc...) ,   sql set    
    	{       
    		upsert: , //      query     ,    objNew,true   ,false   
    		multi: ,  //   false,            ,true          
    		writeConcern:  //        
    	}
    )
    //        
    > db.col.insert({title: 'MongoDB',name:'jack',age:18,count:10,list: [1,2,3,4,5]})
    WriteResult({ "nInserted" : 1 })
    //     ,      
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "MongoDB", "name" : "jack", "age" : 18, "count" : 10, "list" : [ 1, 2, 3, 4, 5 ] }
    >
    // $set,  title="MongoDB"     ,         age name
    > db.col.update({'title':'MongoDB'},{$set:{age: 24, name: 'joy'}})
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "MongoDB", "name" : "joy", "age" : 24, "count" : 10, "list" : [ 1, 2, 3, 4, 5 ] }
    >
    
    // $inc,  title="MongoDB"     ,         count = 10 + 44,    number      
    // "Cannot increment with non-numeric argument: {count: \"lk\"}",           
    //    count     ,       ,  44
    > db.col.update({title: 'MongoDB'}, {$inc:{count: 44}})
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "MongoDB", "name" : "joy", "age" : 24, "count" : 54, "list" : [ 1, 2, 3, 4, 5 ] }
    >
    
    // $unset,  title="MongoDB"     ,   age  
    > db.col.update({title: 'MongoDB'},{$unset:{age:''}}) //   age     ,       
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "MongoDB", "name" : "joy", "count" : 54, "list" : [ 1, 2, 3, 4, 5 ] }
    >
    
    // $push,     Array (list)              
    > db.col.update({title:'MongoDB'},{$push:{list:{"age":18}}}) // list       ,   ,   ...        
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "MongoDB", "name" : "joy", "count" : 54, "list" : [ 1, 2, 3, 4, 5, { "age" : 18 } ] }
    >
    
    // $pop,            
    > db.col.update({title:'MongoDB'},{$pop:{list:-1}}) // list    1( array.length 1   )   -1( array[0]  )
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "MongoDB", "name" : "joy", "count" : 54, "list" : [ 2, 3, 4, 5, 8 ] }
    >
    
    // $pull,      Array       
    > db.col.update({title:'MongoDB'},{$pull:{list:3}}) //   list value 3   ,        value 3,      
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "MongoDB", "name" : "joy", "count" : 54, "list" : [ 2, 4, 5, 8 ] }
    >   
    //         https://www.runoob.com/mongodb/nosql.html
    // save()                 。      :
    db.collection.save(    
    	,
    	{      
    		writeConcern:  
    	}  
    )
    
    // save  ,      id 5e91992217a8e7f3df85f040     
    > db.col.save({ "_id" : ObjectId("5e91992217a8e7f3df85f040"), title: 'testMongo', name: 'lucy', sex: ' '})
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.col.find()
    { "_id" : ObjectId("5e91992217a8e7f3df85f040"), "title" : "testMongo", "name" : "lucy", "sex" : " " }
    > 
    
    
  • [SELECT],db.COLLECTION_NAME.find()、クエリードキュメント
  • //   
    db.collection.find(query, projection)
    query	    ,    ,      ,          
    projection	    ,             ,                 。find()      _id  ,          _id  
    > db.col.find({count:11},{count: 1}) // 0          ,       ,1       ,        
    { "_id" : ObjectId("5e91a3f817a8e7f3df85f041"), "count" : 11 }
    { "_id" : ObjectId("5e91a3fa17a8e7f3df85f042"), "count" : 11 }
    { "_id" : ObjectId("5e91a3fc17a8e7f3df85f043"), "count" : 11 }
    >   
    
  • exit‖ctrl+c、mongodb
  • を終了
    詳細については、MongoDB中国語ネットワークを参照してください.