Mongodbセレクション01エピソード(認知、インスタレーション、紹介ケース)

MongoDBの紹介とインストール

mongodbドキュメント:https://docs.mongodb.com/

1.mongodbの紹介

1.1mongodbとは

  • mongodbは、最も機能が豊富なNoSQL非リレーショナルデータベースです。C ++言語で書かれています。
  • Mongodb自体は、サーバーであるS側のストレージデータを提供します。また、クライアントであるC側の操作処理(クエリなど)データも提供します。

1.2SQLとNoSQLの主な違い

  • SQLの階層関係:データベース>テーブル>データ
  • NoSQLでは、データベース>コレクション>ドキュメントです。

1.3データ間に相関関係はありません

  • SQLで外部関連データを追加する必要がある場合、正規化されたアプローチは、外部キーを元のテーブルに追加して、外部データテーブルを関連付けることです。
  • NoSQLは、外部データを元のデータセットに直接配置して、クエリの効率を向上させることができます。欠点も明らかであり、関連データを更新するのはさらに面倒です。
  • SQLでは、テーブル内の各データのフィールドは固定されています。NoSQLのコレクション(テーブル)内の各ドキュメント(データ)のキー(フィールド)は、互いに異なる場合があります。

1.4さらに読む

https://www.cnblogs.com/jeakeven/p/5402095.html

1.5リレーショナルデータベースに対する非リレーショナルデータベースとしてのmongodbの利点

拡張が簡単:NoSQLデータベースには多くの種類がありますが、一般的な機能の1つは、リレーショナルデータベースのリレーショナル特性を削除することです。データ間には関係がないため、非常に簡単に拡張できます

大量のデータ、高性能:NoSQLデータベースは、特に大量のデータの下で、非常に高い読み取りおよび書き込みパフォーマンスを発揮します。これは、その非リレーショナルな性質とデータベースの単純な構造によるものです。

柔軟なデータモデル:NoSQLは、事前に保存するデータのフィールドを作成する必要がなく、いつでもカスタムデータ形式を保存できます。リレーショナルデータベースでは、フィールドの追加と削除は非常に面倒なことです。非常に大きなデータボリュームテーブルの場合、フィールドの追加は単に悪夢です

2.mongodbのインストール

例としてubuntu18.04を取り上げます

mongodbには、コマンドインストールまたはソースインストールの2つのインストール方法があります。

2.1コマンドのインストール

Ubuntuでapt-getツールを使用してインストールします

sudo apt-get install -y mongodb-org

または、公式ドキュメントhttps://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/を参照してください

2.2ソースコードのインストール

2.2.1対応するバージョンとオペレーティングシステムを選択してダウンロードします

https://www.mongodb.com/download-center/community?jmp=docs

2.2.2解凍

tar -zxvf mongodb-linux-x86_64-ubuntu1804-4.0.3.tgz

2.2.3 / usr / local /ディレクトリに移動します

sudo mv -r mongodb-linux-x86_64-ubuntu1804-4.0.3 / / usr / local / mongodb

2.2.4シェルの初期化スクリプト.bashrcの環境変数PATHにmongodb実行可能ファイルを追加します

a。.bashrcファイルを入力します

cd ~
sudo vi .bashrc

b。.bashrcファイルの最後に追加します。

export PATH=/usr/local/mongodb/bin:$PATH

3.mongodbの公式ドキュメント

https://docs.mongodb.com/manual/introduction/

4.はじめにケース

4.1mongodbサーバーの起動

  • デフォルトのポート:27017
  • デフォルトの構成ファイルの場所:/etc/mongod.conf
  • デフォルトログの場所:/var/log/mongodb/mongod.log

mongodbサーバーを起動する方法は2つあります。

  • ローカルテストモードを開始します(ローカルデータの追加、削除、変更、およびチェックの機能のみ)
  • 実稼働環境を開始します(完全な機能と完全な機能を備えています)

4.2テストモードの開始

  • 启PIN:sudo service mongod start(sudo service mongod start)
  • 停止:sudo service mongod stop
  • 再起動:sudo service mongod restart

4.3本番環境の正式な起動方法

启PIN:sudo mongod [–auth --dbpath = dbpath --logpath = logpath --append --fork] [-–f logfile]

  • sudo mongodコマンドでのみ開始した場合、データはデフォルトで/ data / dbディレクトリに保存され、手動で作成する必要があります
  • --Dbpath:データベースのストレージパスを指定します
  • --Logpath:ログのストレージパスを指定します
  • --Append:または--logappendは、ログ書き込み形式を追加モードに設定します
  • --Fork:または-forkは、mongodbサービスを実行するための新しいプロセスを開始します
  • --F:または-f構成ファイルのパス(上記の構成情報をファイルに書き込んでから、ファイル内のパラメーターを使用してロードおよび開始できます)
  • --Auth:認証認証から始めます。このコンテンツについては、後のコースで学習します。

4.4起動が成功したかどうかを確認します

ps to | grep mongod

4.5 mongodbクライアントを起動します:mongoシェルに入ります

  • ローカルクライアントを起動します:mongo
  • ヘルプを表示:mongo –help
  • 終了:exitまたはctrl + c

4.6mongodbの簡単な使用

mongodbサーバーがオンになっている場合は、mongoシェルに入った後に簡単に使用できます。

4.7mongodbデータベースのコマンド

  • 現在のデータベースを表示します:db(データベースが切り替えられていない場合、デフォルトでテストデータベースが使用されます)
  • すべてのデータベースを表示:show dbs / show database
  • データベースの切り替え:db_nameを使用
    • db_nameは、showdbsの後に返されるデータベース名です。
  • 現在のデータベースを削除します:db.dropDatabase()

4.8mongodbコレクションのコマンド

  • コレクションを手動で作成する必要はありません。
    存在しないコレクションに初めてデータを追加すると、コレクションは自動的に作成されます。
  • コレクションを手動で作成します。
    • db.createCollection(name、options)
    • db.createCollection( "stu")
    • db.createCollection(“ sub”、{capted:true、size:10})
    • パラメータの上限:デフォルト値はfalseは上限が設定されていないことを意味し、trueの値は上限が設定されていることを意味します
    • パラメータサイズ:コレクションが占めるバイト数。上限値がtrueの場合、上限サイズを示すためにこのパラメーターを指定する必要があります。ドキュメントが上限に達すると、前のデータがバイト単位で上書きされます。
  • コレクションの表示:コレクションの表示
  • ドロップコレクション:db.collection name.drop()
  • コレクションに上限があるかどうかを確認します:db.collection name.isCapped()

6.簡単な演習

結果を表示するには、mongoシェルに次のコマンドを入力します

show dbs
use test
show collections
db
db.stu.insert({'name':'郭靖', 'age':22})
show dbs
show collections
db.stu.find()
db.stu.drop()
show collections
db.dropDatabase()
show dbs
exit

6.1 mongodbの一般的なデータ型(理解)

一般的なタイプ

  • オブジェクトID:ドキュメントID /データID、データの主キー
  • 文字列:最も一般的に使用される文字列は、有効なUTF-8である必要があります
  • ブール値:trueまたはfalseのブール値を格納します
  • 整数:整数は、サーバーに応じて32ビットまたは64ビットになります。
  • ダブル:浮動小数点数
  • 配列:配列/リスト
  • オブジェクト:mongodbのデータ/ドキュメント、つまりドキュメントのネストされたドキュメント
  • ヌル:ヌル値を格納します
  • タイムスタンプ:1970-1-1から現在までの合計秒数を表すタイムスタンプ
  • 日付:現在の日付または時刻を格納するためのUNIX時間形式

6.2 注意点

  • 各ドキュメントには属性_idがあり、各ドキュメントの一意性を確保するために、mongodbはデフォルトで_idを主キーとして使用します

    • _idの値を手動で設定できます。指定されていない場合、MongoDBはドキュメントごとに一意の_idを提供します。タイプはobjectIDです。
  • objectIDは12バイトの16進数で、1バイトあたり2ビット、合計24文字の文字列です。

    • 最初の4バイトは現在のタイムスタンプです
    • 次の3バイトのマシンID
    • 次の2バイトのMongoDBサービスプロセスID
    • 最後の3バイトは単純な増分値です

おすすめ

転載: blog.csdn.net/weixin_38640052/article/details/108356255