ホーム DoRuby mongodbにおいてよく利用する基本的な操作について

mongodbにおいてよく利用する基本的な操作について

この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。

mongodbにおいてよく利用する基本的な操作について以下に記載致す

DB操作

  1. DBの選択> use <DB名> もしくはMongoのシェル起動前に$ mongo <DB名>
  2. DBの一覧取得> show dbs

コレクション操作

  1. コレクションの一覧取得> show collections
  2. コレクションの作成> db.createCollection(“<コレクション名>”)
  3. インデックス
    3.1. インデックス確認> db.<コレクション名>.getIndexes() 3.2. インデックス追加> db.<コレクション名>.ensureIndex({ <フィールド名>: <値> }) 値)
    • 1: 昇順
    • -1: 降順
  4. データ取得
    4.1. 書式> db.<コレクション名>.find({検索オプション})
  • 結果表示を見やすくなるように調整
    db.<コレクション名>.find().pretty()
  • 制限付加
    db.<コレクション名>.find().limit()
  • 件数
    db.<コレクション名>.find().count()
  • ソート
    db.<コレクション名>.find().sort({<フィールド名>: <値>})
    値)
    • 1: 昇順
    • -1: 降順
  • findの第二引数に表示オプションを指定
    db.<コレクション名>.find({}, {<フィールド名>: <値>})
    値)
    • 0: 非表示(0を指定したもののみ消える)
    • 1: 表示(_idと、1をしていしたもののみ表示)
    • 0と1は混ぜて指定できない
  1. 検索条件 findの第一引数内に指定
  • 文字列 .find({<フィールド名>: “”})
  • 正規表現 .find({<フィールド名>: /aaa/})
  • 比較 .find({<>: {<比較演算子>: <値>})
    • 一致 $eq
    • 不一致 $ne
    • 以下 $lte
    • 以上 $gte
    • 大なり $gt
    • 小なり $lt 例) db.<コレクション名>.find({hoge:{$lt: 3}})

mongoが起動しない場合の対処方法

ホストOSがクラッシュし, 仮想環境の不正終了が発生した場合などに,
仮想環境再起動後、mongoが正常起動しない現象が発生した場合,
以下のコマンドで対処することが可能である.
(発生環境: CentOS 6)

# cd /var/lib/mongo
# rm -f mongod.lock
# mongod --dbpath=/var/log/mongodb --repair
# service mongod start
記事を共有

最近人気な記事