MongoDBのユニバーサルデータベースを展開する、強力で柔軟かつ簡単で、MongoDBのは、C ++言語で書かれている、ストレージをベースとしたオープンソースのデータベースの分散ファイルシステムです。
高負荷の場合には、より多くのノードを追加するには、サーバーのパフォーマンスを確保することができます。
MongoDBのは、WEBアプリケーションのためのスケーラブルで高性能データ・ストレージ・ソリューションを提供するように設計されています。
MongoDBのデータは、鍵(キー=>値)ペアの文書データ構造として記憶されます。JSONオブジェクトに類似のMongoDBドキュメント。フィールドの値は、他のドキュメント、アレイおよびドキュメントの配列を含むことができます。
2.MongoDB機能
利用のしやすさ1
MongoDBのは、C ++で書かれ、それは、リレーショナルデータベースではないが、分散ファイル・ストレージに基づくオープンソース・データベース・システムです。高負荷の場合には、より多くのノードを追加するには、サーバーのパフォーマンスを確保することができます。
MongoDBは、文書(ドキュメント指向)指向データベースではなく、リレーショナルデータベースです。
優れた拡張性を得るために主に関係を使用しないでください。もちろん、リレーショナルデータベースと比較して、他の利点があり、ドキュメント指向データベースはもはや「行」(行)ではありません「文書」(文書)モデルのより柔軟な概念に置き換えられます。
文書内のドキュメントと配列を埋め込むことで、ドキュメント指向のアプローチは、1つのレコードのみを使用して近代的なオブジェクト指向言語の開発者データの一貫したビューで複雑な階層関係のパフォーマンスに。
さらに、事前定義されたパターン(事前定義されたスキーマ)が存在しない:文書鍵(キー)と値(値)は、もはや固定型とサイズです。決まったパターンが存在しないため、追加または削除フィールドが容易になります。
開発者はすぐにその開発プロセスを繰り返すことができます通常ために加速します。また、実験が容易になります。開発者は、最高の一つから選択されたデータモデルの多くを、試すことができます。
2.簡単に拡張
アプリケーション・データ・セットのサイズは、信じられないほどの速度で成長しています。利用可能なメモリ帯域幅と増加価格の下落によって、データの量を格納する必要も、小規模なアプリケーションでは、さえ多くのデータベースの処理能力を超えて、衝撃的かもしれません。過去の非常に稀なTレベルのデータが経つにつれて、それは今一般的です。
保存する必要のあるデータの量が成長し続けると、開発者は問題に直面する:データベースを拡張する方法をスケールアップに分割され、スケールアウト、スケールアップが最も省力慣行ですが、欠点は、メインフレームは、一般的に非常に高価であるということです、そしてときに、データの量れますマシンの物理的限界に到達すると、複数のマシンを購入することはできませんより多くのお金を費やして、この時間は、スケールがより適切な選択が、マシンあまり規模が管理する必要があるという別の問題をもたらしました。
デザインは、MongoDBのスケールを使用しています。ドキュメント指向のデータモデルには、簡単に複数のデータ・サーバ間で分割することができます。MongoDBは自動的に自動的に文書を再割り当てするだけでなく、ユーザの要求が正しいマシンにルーティングされ、クラスタ全体のデータと負荷を処理することができます。このように、開発者が問題を拡大する方法を検討する必要がなく、アプリケーションを書くことに集中することができます。
クラスタは、より大きな容量を必要とする場合は、唯一の新しいクラスタ・サーバを追加する必要があり、MongoDBは、自動的に新しいサーバーに既存のデータを転送します。
3.豊富な機能を備えました
作成、読み取り、更新データを削除する機能に加えて、汎用データベースとしてMongoDBの、だけでなく、拡大を続けるユニークな特徴のシリーズを提供します。
-
指数
迅速なクエリの様々な可能、ユニバーサルセカンダリインデックスをサポートしていますし、一意のインデックス、複合インデックス、地理空間インデックス、フルテキストインデックスを提供
-
集合
支持ポリマーパイプは、ユーザは単にセグメントの複雑なセット、および自動的に最適化されたデータベースを作成することができ
-
特別コレクション型
セッションセッションとして、いくつかの点で期限切れとなるデータに適した、限られた時間のコレクションの存在をサポートしています。同様に、MongoDBは、固定サイズのセットをサポートし、ログなどの最近のデータを格納するための、
-
ファイルストレージ
これは、大規模なファイルやファイルのメタデータを格納するためのプロトコルを使用することは非常に簡単に対応しています。MongoDBは非常に一般的なリレーショナルデータベース機能のいくつか、持っていないように参加するリンクや複雑なマルチライン・トランザクションとしてを。効率的に分散システムの両方の機能を達成することは困難であるので、この関数は、アーキテクチャの、またはより良好なスケーラビリティを考慮して省略されています
4.優れた性能
MongoDBのの主要な目標は、主にMongoDBのデザインを決定し、優れた性能を提供することです。MongoDBは、キャッシュキャッシュと同じくらいのメモリを入れ、各クエリのビューが自動的に正しいインデックスを選択します。
一言で言えば、デザインのすべての側面が非常に強力なのMongoDBとリレーショナルデータベースの多くの機能を維持するための試みが、その高い性能を維持することを目的としているが、それは、リレーショナルデータベースのすべての機能を追求していません。
可能な限り、データベース・サーバは、クライアントにロジックを処理します。これは、道のMongoDBは、このような高い性能を達成することができた理由の1を合理化するために設計されています。
二、MongoDBのインストール
1.ダウンロードしてインストール
1.インストールパッケージをダウンロードします
MongoDBのは、32ビットおよび64ビット・システムはコンパイル済みのバイナリパッケージに使用することができ、あなたは公式サイトからダウンロードするMongoDBをインストールすることができます提供し、MongoDBは、バイナリダウンロードをプリコンパイル:https://www.mongodb.com/download-center#community
2.インストール
インストールパスを指定して、私はDにインストールした:環境変数に\ binに\ PROGRAMFILES \ MongoDBは:\ PROGRAMFILES \ MongoDBは、Dを追加します。
3.ディレクトリやフォルダを作成します。
D:\ PROGRAMFILES \ MongoDBのデータの\デシベル\
D:\ PROGRAMFILES \ MongoDBのログ\ \ mongod.log
4.新しいプロファイルmongo.cfg、参照作成https://docs.mongodb.com/manual/reference/configuration-options/を
systemLog: 先:ファイルの パス:" D:\ PROGRAMFILES \ MongoDBの\ログ\ mongod.log " logAppend:真 ストレージ: ジャーナル: 有効:真 DBPATH:" D:\ PROGRAMFILES \ MongoDBのデータの\ DB \ " ネット: bindIp:0.0。0.0 ポート:27017 setParameterを: enableLocalhostAuthBypass:偽
5.生産システムサービス
mongod --config " D:\ PROGRAMFILES \ MongoDBの\ mongod.cfg " --bind_ip 0.0。0.0 - インストール
またはコマンドラインで直接設定を指定します
--bind_ipのmongod 0.0。0.0 --port 27017 --logpathのD:\ PROGRAMFILES \ MongoDBの\ログ\ mongod.log --logappend --dbpath D:\ PROGRAMFILES \ MongoDBのデータ\ \ DB --serviceName " MongoDBの" --serviceDisplayName " MongoDBの" - インストール
6. MongoDBのサービスを開始
ネット開始MongoDBの
ネット停止はMongoDB
7.ログMongoDBの
モンゴの リンク:HTTP:// www.runoob.com/mongodb/mongodb-window-install.html なしログインアカウントのパスワードがない場合、デフォルトでは管理者のログインです。このシステムは、単にサービスをインストールするには時間が指定されていないので (mysqlのと同等の同じテーブルを開始するための許可をスキップ)、--auth(言っているのではない指定されていない証明機関を)
2.アカウント管理
アカウント管理:https://docs.mongodb.com/master/tutorial/enable-authentication/
1.ユーザーを作成権限を持っています
ADMINは、使用 (db.createUserを { :ユーザー" ルート" 、ルートが容易#書き込みでき PWDを:" 123 " 、 ロール:[{役割:" ルート"、DB:" ADMIN " }]#権限、ロールがルート音であります管理者は、 } ) テストを使用 db.createUser( { :ユーザー" エゴン" 、 PWD:" 123 " 、 ロール:[ {役割:"読み書き「 dB単位:」テスト「}、#ライブラリは、独自のライブラリが読み取りおよび書き込みた権限動作、テストのアクセス許可を読み取り、書き込みしている :{役割」読む「DB: 」DB1 " } 読み取りアクセスのために]#1 DB1データベース、他のライブラリの動作を読み取りアクセスを持っています } )
2.データベースを再起動します。
mongod - 削除 のmongod --config " C:\ MongoDBの\ mongod.cfg " --bind_ip 0.0。0.0 - インストール - 認証 #或者 のmongod --bind_ip 0.0。0.0 --port 27017 --logpathのD:\ MongoDBの\ \ mongod.log --logappendをログ- DBPATHの D:\ MongoDBの\データ\デシベル --serviceName " MongoDBの" --serviceDisplayName " のMongoDB " - インストール --authを
3.ログイン二重引用符の代わりに単一引用符を使用するように注意を払います
#ウェイ のmongo --port 27017 -u " ルート" -p " 123 " --authenticationDatabase " ADMIN " #二番目の方法:あなたがdb.auth(でログインした後、" アカウント"、" パスワード" ログイン) のmongo 使用ADMINの デシベル。 AUTH(" ルート"、" 123 ")
推奨ブログhttps://www.cnblogs.com/zhoujinyi/p/4610050.html
オープンアカウント+パスワード認証メカニズムを作成します。
3.コマンドラインシェル
1 .mongo 127.0。0.1:27017 / #は任意のデータベースの設定に接続設定 2 .mongo - Nodb#は任意のデータベースに接続しない 3新しいMongoの実行、開始後(必要な場合。ホスト名所望に接続することができるコマンド) mongod >コネチカット=新しい新しいMongoの(' 127.0.0.1:27017 ' ) への接続127.0。0.1:27017 > conn.getDB DB =(' ADMIN ' ) ADMIN 4。.helpビューヘルプ 5。 .mongoを簡略化するJavaScriptシェルであり、あなたは、JavaScriptのスクリプトを実行することができます