【备忘】MongoDB的引入和简单的使用方法

首先

我会从MongoDB的安装开始,记录下简单的使用方法。

ソフトウェアバージョンCentOS77.3.1611Node.jsv6.11.1Node-REDv0.17.5MongoDB3.4 Community Edition

安装MongoDB

按照官方网站的指示进行安装。

注册yum仓库

我将设置MongoDB的yum存储库。

# vi /etc/yum.repos.d/mongodb-org-3.4.repo
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

安装

我将使用yum进行安装。

# yum install -y mongodb-org

允许来自外部的连接 (Pinyin: de

出於安全考慮,預設情況下禁止外部連接,需要將設定改為允許連接。
在/etc/mongod.conf中,將bindIp: 127.0.0.1的設定行註釋掉。

vi /etc/mongod.conf
#  bindIp: 127.0.0.1  # Listen to local interface only, comment to listen on all interfaces.

让我试试看

我会以服务的形式运行。 SELINUX的设置是正确的。

# systemctl start mongod.service

试用一下

这是最低限度的使用方法。

    MongoDBへの接続
> mongo
    • データベースへの接続

既存のデータベースの場合は接続します。
新規のデータベースの場合はuseで接続した後に、コレクションを作らなければなりません。

> use [データベース名]
    コレクションの作成
> db.createCollection('コレクション名')
    データベースの一覧表示
> show dbs
    データベース内のコレクション一覧表示
> use [データベース名]
> show collections
    ドキュメントの登録
> use [データベース名]
> db.[コレクション名].insert(JSONデータ)
    ドキュメントの参照(全件)
> use [データベース名]
> db.[コレクション名].find()
    ドキュメントの参照(検索)
> use [データベース名]

# AND検索
> db.[コレクション名].find({"フィールド名":"検索値"}, {"フィールド名":"検索値"},・・・)

# OR検索
> db.[コレクション名].find({$or:[{"フィールド名":"検索値1"}, {"フィールド名":"検索値2"}]})

# 範囲検索(検索値1より大きく検索値2未満)
> db.[コレクション名].find({"フィールド名":{&gt:"検索値1", &lt:"検索値2"}})

# 取得する項目の指定方法
# 任意の数値が0の場合は非表示となる。_idを表示したくない場合は"_id":0とする。
> db.[コレクション名].find({検索条件},{"取得項目":[任意の数値], "取得項目":[任意の数値]・・・})

# 特定の項目を持つ/持たないドキュメントの検索
> db.[コレクション名].find({"フィールド名":{$exists:[true|false]}})
    ドキュメントの更新
> use [データベース名]

# ドキュメントを洗い替える場合
> db.[コレクション名].update({検索条件}, {更新後のJSONドキュメント})

# 特定の項目を更新する場合、または、新たに項目を追加する場合
> db.[コレクション名].update({検索条件}, {$set:{"フィールド名":更新内容, "フィールド名",更新内容,・・・}})

# インクリメンタル(指定したフィールドの値を増分プラスする)
> db.[コレクション名].update({検索条件}, {$inc:{"フィールド名":増分}})

# あれば更新、無ければ登録
# 第3引数にtrueを指定する。
> db.[コレクション名].udpate({検索条件}, {更新内容}, true)
    ドキュメントの削除
> use [データベース名]
> db.[コレクション名].remove({検索条件})

比较运算符

演算子記述方法>$gt>=$gte<$lt<=$lte!=$neor$or
广告
将在 10 秒后关闭
bannerAds