sql >> データベース >  >> NoSQL >> MongoDB

UbuntuにMongoDBを使用してNodeJSをインストールする方法

    NodeJSは、ChromeのV8JSエンジンで作成されたオープンソースのJavaScriptランタイムです。非同期プログラミングを可能にする、ノンブロッキングの軽量イベント駆動型入出力モデルを使用します。これは、JSベースのスクリプトを実行してスケーラブルなアプリを構築するサーバーレス環境と呼ぶことができます。

    NodeJSは、主にスケーラブルで高速なネットワークアプリの構築で知られています。開発者は、Webサイト、イベント駆動型サーバー、およびアクティブなバックエンドAPIに使用されるプログラミング言語としてそれを知っています。したがって、NodeJSは、単一のプログラミング言語を中心にアプリとWeb開発を統合できるため、「JavaScripteverywhere」レジームと呼ばれています。

    MongoDBは、使いやすさ、スケーラビリティ、信頼性の機能で広く知られており、フィールド(RDBMSでは列と呼ばれます)を変更するときに優位に立つことができます。

    ガイド用にNodeJSをインストールしてMongoDBに接続するには、次のコンポーネントが必要です。

    • Ubuntu
    • MongoDB
    • NodeJS
    • MongoDBNodeJSドライバー

    注: MongoDBは、すべてのNodeJS安定バージョンをサポートします。したがって、このガイドでは最新の安定したリリースを使用します。

    UbuntuへのNodeJSのインストール

    NodeJSは、NodeJSの公式Webサイトで提供されているPPAを追加することで、Ubuntuに簡単にインストールできます。前述のように、NodeJSアプリケーションは、LTSや現在のリリースなどのいくつかの形式で利用できます。インストールするNodeJSのバージョンを選択するのは開発者の選択です。ただし、このチュートリアルガイドでは、安定版(LTS)リリースを使用します。以下のコマンドラインを使用して、PPAをUbuntuシステムに追加します。

    sudo apt-get install curl python-software-properties
    curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash –

    または、apt-getコマンドを使用して、うまくいくかどうかを確認することもできます。これを行うには、以下のコマンドを実行します。

    sudo apt update
    sudo apt install nodejs

    出力:

    注: apt-getコマンドは、NodeJSと一緒にNPMをインストールします。これはNodeJSのデフォルトのパッケージマネージャーです。 NPMは、NodePackageManagerの略語です。これには、npmレジストリ、パブリックパッケージと有料パッケージ用のオンラインDB、およびnpmと呼ばれるコマンドラインクライアントが含まれています。

    また、Ubuntu OSにcurlアプリケーションがインストールされていない場合は、以下のコマンドラインを実行します。

    sudo apt-get install curl

    出力:

    NodeJS PPAをシステムに正常に追加したら、以下のコマンドを実行して、UbuntuにNodeJSをインストールします。

    sudo apt-get install nodejs

    上記のコマンドが完全に実行されるまでしばらくお待ちください。次に、以下のコマンドを実行して、コマンドがインストールされているかどうかを確認してください。

    node -v

    出力:

    以下のコマンドを実行して、npmのバージョンを確認します。

    npm -v

    出力:

    私のような出力が見つかった場合は、npmがUbuntuOSにインストールされていないことを意味します。したがって、インストールするには、次のコマンドを実行します。

    sudo apt install npm

    出力:

    npmをインストールした後、以下のコマンドラインを実行してバージョンを確認してください。

    npm -v

    出力:

    テスト「HelloFoss」テキストを作成して、最近インストールしたNodeJSアプリケーションをテストしてみましょう。ファイルを作成して「fosslinux.js」という名前を付け、その中に以下のコードを入力します。お気に入りのテキストエディタを使用できます。たとえば、このガイドではSublimeテキストエディタを使用しています。 Ubuntuに崇高なテキストエディターをインストールするには、以下のコマンドを実行します:

    wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -
    
    sudo apt-get install apt-transport-https echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
    
    sudo apt-get update
    
    sudo apt-get install sublime-text

    出力:

    Sublime Textをインストールする:

    var http = require(‘http’);
    http.createServer(function (req, res) {
    res.writeHead(200, {‘Content-Type’: ‘text/plain’});
    res.end(‘Hello Foss\n’);
    }).listen(4000, “127.0.0.1”);
    console.log(‘Server running at ‘)

    出力:

    上記のコードは、HelloFossテキストを作成します。これは、NodeJSがUbuntuOSに正常にインストールされたことを示しています。それでは、UbuntuにMongoDBをインストールする方法を学びましょう。

    UbuntuへのMongoDBのインストール

    MongoDBは、高レベルのエンタープライズデータベースの高可用性、自動スケーリング、およびスケーラビリティを提供するNoSQLDBです。 NodeJSをMongoDBに接続するには、UbuntuOSにMongoDBをインストールする必要があります。 UbuntuへのMongoDBのインストールと構成に関する詳細なガイドを参照してください。

    まず、Ubuntu OSにまだインストールしていないパッケージの一貫性と信頼性を確保するには、GPGキーを使用する必要があります。

    以下のコマンドを実行して、GPGキーをサーバーにインポートします。

    sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv 68818C72E52529D4

    出力:

    次に、以下のコードを使用して、MongoDBパッケージのソースリストを作成します。

    sudo echo “deb http://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

    出力:

    以下に示すように、apt-getコマンドを使用してリポジトリを更新します。

    sudo apt-get update

    出力:

    次のコマンドを実行して、UbuntuOSにMongoDBをインストールします。

    sudo apt-get install -y mongodb-org

    出力:

    MongoDBを起動し、サービスとして有効にして、Ubuntu OSを起動するたびに、MongoDBサーバーが開くようにします。

    sudo systemctl start mongod
    sudo systemctl enable mongod
    sudo systemctl stop mongod

    出力:

    MongoDBを開始、有効化、停止します注: ここに示されているものと同様の出力が見つかった場合:

    これは、MongoDBがマスクされていることを示すものであり、以下のコマンドラインを実行してマスクを解除する必要があります。

    sudo systemctl unmask mongod

    出力:

    MongoDBのマスクを解除した後、次に示すように、startMongoDBコマンドを再実行できます。

    sudo service mongod start

    出力:

    MongoDBアプリケーションがOSに正常にインストールされているかどうかを確認します:

    mongod --version

    出力:

    注: この記事ガイドで提供されているガイドに従えない場合は、リンクされた記事をチェックしてください。この記事には、前述の主題に関する詳細なガイドと洞察が含まれています。 PCにMongoDBをインストールしたら、この記事ガイドを読み続けて、NodeJSをMongoDBに接続する方法を学びます。

    NodeJSとMongoDBの接続

    MongoDBをNodeJSに接続するには、NodeJS用のMongoDBドライバーが必要です。以下のコード構文を使用して、npmの公式ドライバーをインストールします。アプリケーション内で次のコマンドを実行していることを確認してください:

    npm install -P mongodb

    出力:

    ドライバーがアプリケーションディレクトリに正常にインストールされると、MongoDBをNodeJSに接続する準備が整います。まず、接続ロジックを含むファイルを作成する必要があります。ファイルに「foss.js」という名前を付け、次のコードを追加します。

    var MongoClient = require('mongodb').MongoClient;
    
    var database = undefined;
    
    var dbUrl = 'mongodb://127.0.0.1:27017/security';
    
    MongoClient.connect(dbUrl, function(err, db) {
    
      if (err) {
    
        throw err;
    
      } else {
    
        database = db;
    
        console.log('MongoDB connection successful');
    
    }
    
    });

    出力:

    接続」 メソッドは、コールバックでデータベースオブジェクトを返すMongoClientオブジェクトを公開します。コード構文は次のとおりです。

    connect(url, options, callback)

    注: 最初の議論 URLが含まれています 以下の構文の文字列:

    mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

    2番目の引数 オブジェクトリテラルが含まれています poolSizeなどの設定を指定します およびautoReconnect

    3番目の引数 コールバック関数が含まれています 応答が成功した場合に接続障害とデータベースオブジェクトエラーを提供します。

    アプリケーションディレクトリで以下のコマンドを入力して実行します。

    node db_connect.js

    コンソールは、接続が成功するたびに出力に表示されるものに似ています:

    MongoDB Connection Successful

    その出力を取得すると、セキュリティデータベースが正常に接続されたことを示します。以下のデータをusersと呼ばれる新しいコレクションに挿入します。ここに示すようにdb_connect.jsを変更します:

    var MongoClient = require('mongodb').MongoClient;
    
    var database = undefined;
    
    var dbUrl = 'mongodb://127.0.0.1:27017/security';
    
    MongoClient.connect(dbUrl, function(err, db) {
    
      if (err) {
    
        throw err;
    
      } else {
    
        database = db;
    
        console.log('MongoDB connection successful');
    
        var testUser = {
    
          name: 'Suraj Poddar'
    
        };
    
        var users = db.collection('users'); \
    
        users.insert(testUser, function(err, docs) {
    
          if (err) {
    
            throw err;
    
          } else {
    
            console.log(docs);
    
          }
    
        });
    
      }
    
    });

    NodeJSとMongoDBが接続されている場合、出力は次のようになります。

    MongoDB connection successful
    
    { result: { ok: 1, n: 1 },
    
      ops: [ { name: 'Suraj Poddar', _id: 59ad4719eb794f64c84e7ba6 } ],
    
      insertedCount: 1,
    
      insertedIds: [ 59ad4719eb794f64c84e7ba6 ] }

    上記の出力は、NodeJSをMongoDBに正常に接続したことを示しています。


    1. Couchbaseベンチマークは、非常に遅いINSERTとGET(KeyValue操作を使用)を明らかにします。永続化されたMySQLデータよりも遅い

    2. WindowsサービスとしてのMongoDBとreplicaSetのセットアップ

    3. PredisのMATCHオプションでSCANを使用する方法

    4. クラスタモードで特定のキーを特定のredisインスタンスに配置する方法はありますか?