MongoDBデータベースの設置配置、基本操作例の詳細


この例では、MongoDBデータベースのインストール構成、基本操作について説明します。皆さんに参考にしてあげます。具体的には以下の通りです。
1、概要
NO SQL:NoSQL(NoSQL=Not Only SQL)は、「SQLだけではない」という意味で、従来とは異なる関係データベース管理システム(RDBMS)の総称です。NoSQLは、大規模データの記憶に用いられ、これらのタイプのデータ記憶は、固定モードを必要とせず、無駄な操作なしに横方向に拡張することができる。
RDBMS
NOSQL
-高度組織化構造データ
-構造化クエリ言語(SQL)
-データと関係は別々のテーブルに格納されます。
-データ操作言語、データ定義言語
-厳密な一致
-基礎事務
-SQLだけでなく
-ステートメントクエリ言語がありません。
-定義済みのパターンがありません。
→キー→値対記憶、列記憶、ドキュメント記憶
-最終的な一致、ACID属性ではなく
-非構造化と予知できないデータ
-CAP定理
-高性能、高利用性、伸縮性
MongoDBはC++言語で作成され、分散ファイルに基づいて格納されるオープンソースデータベースシステムです。MongoDBはデータを一つのドキュメントに格納し、データ構造はキーペア(key=>value)からなる。MongoDBドキュメントはJSONオブジェクトと似ており、ドキュメントに埋め込まれているオブジェクトや配列を簡単に調べることができます。フィールド値は、他のドキュメント、配列、およびドキュメントの配列を含むことができます。MongoDBは、ローカルまたはネットワークを介してデータミラーを作成することができ、より強い拡張性がある。負荷が増加する場合(より多くの記憶空間とより強い処理能力が必要である)、コンピュータネットワーク内の他のノードに分布することができる(すなわち、スライスと呼ばれる)。
2、設置配置
    1、公式サイトからwindowsのインストールパッケージをダウンロードするhttps://www.mongodb.com/download-center#community
    2、インストールパッケージをクリックし、指示に従ってインストールし、customのカスタムインストール位置を選択します。注:3.6バージョンをインストールする時、ソフトウェアのエラーがあって、インストールが完了できませんでした。確認したら、最後のステップをインストールする時のcompssの枠をチェックしないでください。インストールが完了できます。comppassが必要なら、インストール後に再度インストールプログラムをクリックして、comppassを再インストールします。
    3、構成mongodb:あなたが欲しいところに三つのファイルを新規作成する:dataフォルダ(データベースデータを保存するために使う)、logs\mongodb.logファイル(データベースログを保存するために使う)、etc\mongodb.comファイル(関連配置のために使う)。mongodb.co nfファイルを開き、関連配置情報を入力します。

#     

dbpath=D:\MongoDB\data

#        

logpath=D:\MongoDB\logs\mongodb.log

#          ,       mongodb              ,            

logappend=true

#      ,    

journal=true

#                  ,           false

quiet=true

#       27017

port=27017

4、モンゴルのインストールサービス:モンゴルのインストールディレクトリの下のbinフォルダでコマンドラインを開き、入力:

mongod --config "D:\MongoDB\etc\mongodb.conf" --install --serverName "MongoDB"

--configの後に先ほど保存したプロファイルの住所、--serverNameの後に作成したサービスの名前
実行後はWindows 10で検索サービスが見られます。

または、MongoDB/binディレクトリでコマンドラインを実行します。  mongod--dbpath./data,モンゴルサービスを開始します。
5、コマンドラインを開きます。環境変数を配置し、環境変数をMongoDBのbinフォルダに追加します。このように任意の位置にコマンドラインウィンドウを新規作成して、monoを入力すると、monoのshellコマンドがオンできます。
3、基本操作
1、データベースを作成/切り替える:use DatabaseName、新しいデータベースは表示されません。記録を挿入してから表示されます。
データベースを削除:

db.dropDatabase()
2、集合を作成します。

db.createCollection('mall')
集合mallを削除:

db.mall.drop()
3、ユーザーを作成します。データベースmallにユーザを作成します。

db.createUser({"user":"root",pwd:"mallroot",roles:[{role:'dbOwner',db:'mall'}]})

4、データベースにJSONファイルを導入する。モンゴルを脱退し、cmdで実行します。

mongoimport -d mall -c user --file F:\resource\mall-users

mall-usersファイルをmallデータベースのuserセットにインポートします。
5、集合mallにレコードを挿入する:

db.mall.insert({"name":"  6","price":"2699"})
json形式のように、キーで正しい形式(key=>value)で挿入したいデータを書き込むだけでいいです。
6、データを削除する:

db.mall.remove({mID:1005})
mIDが1005のデータを削除します。挿入時に{mID:"1005"]は文字列タイプで、{mID:1005}はnumberタイプです。
7、データを変更する:

db.mall.update({name:"  6"},{$set:{price:"2399"}})
udateの最初のパラメータはデータを修正する条件で、2番目のパラメータは$setを利用して修正キーを設定します。
8、集合中のデータを確認する:

db.mall.find()
後に加えます。pretty()はデータをフォーマット的に見ることができます。
条件クエリー:

db.mall.find({price:{$lt:2000}})
  priceが2000以下の項目を検索します。
9、配列操作
配列の下付きを表します。例えば、cartList配列の条件を満たす要素だけを更新します。

user.update({conditions},{
  $set:{"cartList.$.productNum":productNum}
 })

$addToSet:配列にデータがない場合は、配列にデータを追加します。配列に同じ配列がある場合は、追加しません。

user.update({conditions},{
  $addToSet:{cartList:cartItem}
 })

$pop:配列データを削除し、1から削除します。-1は後尾から削除します。

user.update({conditions},{
  $pop:{cartList:1}
 })

$pull:指定されたデータを削除します。例えば指定されたuserIdのcartList配列に指定されたproductIdの要素を削除します。      

user.update({userId:userId},{
  $pull:{
   cartList:{productId:productId}
  }
 }

$push:配列に要素を挿入し、$each遍歴配列、$sortを配列に並べ替えて、$sliceを削減して、$positionにデータを挿入する位置を指定します。

db.test.update( { _id: 5 },
 { $push: { quizzes: { $each: [ { wk: 5, score: 2 },
                { wk: 6, score: 1 },
                { wk: 7, score: 3 } ], //      
            $sort: { score: -1 },     // score  
            $slice: 3,           //          
            $position:2          //          
           }
      }
 }
 );

ここで述べたように、みんなのMongoDBデータベースプログラムの設計に役に立ちます。