Node.jsで作ったシステムにMongoDBを繋げるためのMongoDB Node.JS Driverの紹介です。
- Node.jsをMongoDBにつないでみたい
- Node.jsからMongoDBを実行するクエリのサンプルも欲しい
- セキュリティの設定も知りたい
Contents
Node.jsでMongoDBに接続する方
npmからmongodb(MongoDB Node.JS Driver)をインストール
前提として、Node.js、MongoDBはPCにインストールしておいてください。
Node.jsからmongodbというライブラリ(MongoDB Node.JS Driver)を利用してPCにインストールしたMongoDBデータベースにアクセスします。
まずは以下のコマンドでmongodb(Driver)をインストールします。
npm install mongodb
mongodb(MongoDB Node.JS Driver)の基本的な使い方(サンプルコード)
mongodb(Driver)の基本的な使い方を説明します。
まずはnpmでインストールしたmongodbとMongoClientをコードに定義します。
[test.js] const mongodb = require('mongodb') const MongoClient = mongodb.MongoClient
続いてMongoClient.connectを利用して接続先を書きます。
localhost:27017の部分には接続先IPアドレス(自PCの場合localhost)とポート番号を設定します。
dbNameの部分には接続したいMongoDBのデータベース名を入力します。
[test.js] … //ユーザ、パスワードなしの場合 MongoClient.connect('mongodb://localhost:27017/dbName'', (err, db) => { if (err) throw err; …(A)
ユーザ、パスワードの認証を入れている場合は以下のように記載します。
[test.js] … //ユーザ、パスワードありの場合 MongoClient.connect('mongodb://userName:password@localhost:27017/dbName'', (err, db) => { if (err) throw err; … (A)
上記のサンプルコードの(A)の部分にクエリを記載します。
dbNameにはデータベース名、collectionNameにはコレクション名を記載してください。
[test.js] … const dbName = db.db("dbName"); dbName.collection("collectionName").find().toArray(function(err, res) { if (err) throw err; //resにDB検索結果が設定されますので、resをNode.jsで操作することができます。 console.log(res); db.close(); }
まとめると以下のコマンドでfindによる検索を利用できます。
[test.js] const mongodb = require('mongodb') const MongoClient = mongodb.MongoClient MongoClient.connect('mongodb://userName:password@localhost:27017/dbName', (err, db) => { if (err) throw err; const dbName = db.db("dbName"); dbName.collection("collectionName").find().toArray(function(err, res) { if (err) throw err; console.log(res); db.close(); }) })
findの検索に検索条件を設定する
find()に検索条件を記載することもできます。
MongoClient.connect('mongodb://userName:password@localhost:27017/dbName', (err, db) => { if (err) throw err; const dbName = db.db("dbName"); // 変数signalが"1"の条件で検索 dbName.collection("collectionName").find({"signal": "1"}).toArray(function(err, res) { if (err) throw err; console.log(res); db.close(); }) })
セキュリティ
先ほどの例ではユーザ認証あり、なしのパターンでサンプルを記載しましたが、MongoDBを利用する際はユーザ、パスワード認証の設定、ポート番号をデフォルトポート27017から変更しておきましょう。 MongoDBに設定したい最低限のセキュリティ設定でも解説しています。
Node.jsからMongoDBにつなぐ方法まとめ
Node.jsからMongoDBにつなぐためのmongodbライブラリの使い方を解説しました。 特に難しい設定なしで簡単に接続できますので、試してみてください。
MongoDBの使い方まとめに戻る。
自作アプリケーションを作るならさくらのVPS が手軽で使いやすいです。MongoDBは軽いので最低料金プランのVPSでも運用できます。【初めてでも簡単!】VPSの比較ランキングでも紹介しています。
Node.jsのチュートリアルは動画学習が早く習得できます。私が利用しているのはUdemy です。 Node.jsの勉強法も参照ください。
コメントを残す