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

Ubuntu18.04にMongoDBをインストールする方法

    MongoDB は、 NoSQL の最先端テクノロジーに基づいて、高性能データの永続性、高可用性、および自動スケーリングのために設計された、オープンソースの最新のドキュメントデータベース管理システムです。 。 MongoDBの下 、レコードはドキュメントであり、フィールドと値のペアで構成されるデータ構造です(MongoDBドキュメントはJSONオブジェクトに相当します)。

    高性能と優れたスケーラビリティ機能を提供するため、強力でミッションクリティカルな高可用性データベースを必要とする最新のアプリケーションの構築に使用されています。

    この記事では、 MongoDBのインストール方法について説明します。 、Ubuntu 18.04 でサービスを管理し、基本認証を設定します 。

    重要 MongoDBの開発者は注意する必要があります 64ビットLTSのパッケージのみを提供します (長期サポート) 14.04 LTSなどのUbuntuリリース (信頼できる)、 16.04 LTS (xenial)など。

    ステップ1:Ubuntu18.04にMongoDBをインストールする

    1。 Ubuntuの公式ソフトウェアパッケージリポジトリには、最新バージョンの MongoDBが付属しています。 、APTパッケージマネージャーを使用して簡単にインストールできます。

    まず、システムソフトウェアパッケージのキャッシュを更新して、リポジトリリストの最新バージョンを取得します。

    $ sudo apt update
    

    2。 次に、 mongo-toolsなどの他のいくつかのパッケージを含むMongoDBパッケージをインストールします 、 mongodb-clients mongodb-server およびmongodb-server-core

    $ sudo apt install mongodb
    

    3。 インストールが正常に完了すると、MongoDBサービスがsystemdを介して自動的に開始され、プロセスはポート 27017でリッスンします。 。示されているように、systemctlコマンドを使用してそのステータスを確認できます。

    $ sudo systemctl status mongodb
    

    ステップ2:MongoDBサービスの管理

    4。 MongoDB インストールはsystemdサービスとして提供され、図のように標準のsystemdコマンドを使用して簡単に管理できます。

    MongoDBサービスの実行を停止するには、次のコマンドを実行します。

    $ sudo systemctl stop mongodb	
    

    MongoDBサービスを開始するには、次のコマンドを入力します。

    $ sudo systemctl start mongodb
    

    MongoDBサービスを再起動するには、次のコマンドを入力します。

    $ sudo systemctl restart mongodb	
    

    自動的に開始されるMongoDBサービスを無効にするには、次のコマンドを入力します。

    $ sudo systemctl disable mongodb	
    

    MongoDBサービスを再度有効にするには、次のコマンドを入力します。

    $ sudo systemctl enable mongodb	
    

    ステップ3:ファイアウォールでリモートMongoDBアクセスを有効にする

    5。 デフォルトでは、 MongoDB ポート27017で実行されます 、使用できるすべての場所からのアクセスを許可します。

    $ sudo ufw allow 27017
    

    ただし、 MongoDBへのアクセスを有効にする どこからでもデータベースデータへの無制限のアクセスを提供します。したがって、次のコマンドを使用して、特定のIPアドレスの場所へのアクセスをデフォルトのMongoDBのポートに許可することをお勧めします。

    $ sudo ufw allow from your_server_IP/32 to any port 27017 
    $ sudo ufw status
    

    6。 デフォルトでは、ポート 27017 ローカルアドレス127.0.0.1でリッスンします それだけ。リモートMongoDB接続を許可するには、サーバーのIPアドレスを /etc/mongodb.confに追加する必要があります 示されている構成ファイル。

    bind_ip = 127.0.0.1,your_server_ip
    #port = 27017
    

    ファイルを保存し、エディターを終了して、MongoDBを再起動します。

    $ sudo systemctl restart mongodb	
    

    ステップ4:MongoDBデータベースのrootユーザーとパスワードを作成する

    7。 デフォルトでは、 MongoDB ユーザー認証が無効になっているため、アクセス制御なしで開始されます。 mongoシェルを起動するには 、次のコマンドを実行します。

    $ mongo 
    

    8。 mongoシェルに接続したら 、次のコマンドを使用して、使用可能なすべてのデータベースを一覧表示できます。

    > show dbs
    

    9。 MongoDBデプロイメントでアクセス制御を有効にして、認証を実施します。ユーザーがデータベースサーバーに接続するたびに自分自身を識別する必要があります。

    MongoDBは、 Salted Challenge Response Authentication Mechanismを使用します (スクラム )デフォルトの認証メカニズム。 SCRAMの使用 、MongoDBは、提供されたユーザークレデンシャルを、ユーザーの名前、パスワード、および認証データベース(ユーザーが作成されたデータベース、およびユーザーの名前とともに、ユーザーの識別に使用されます)に対して検証します。

    ユーザー管理者を作成する必要があります( MySQL / MariaDB の下のrootユーザーに類似) )adminデータベース内。このユーザーは、ユーザーの作成、ユーザーからの役割の付与または取り消し、税関の役割の作成または変更など、ユーザーと役割を管理できます。

    最初に管理者に切り替えます データベースを作成し、rootユーザーを作成します 次のコマンドを使用します。

    > use admin 
    > db.createUser({user:"root", pwd:"[email protected]!#@%$admin1", roles:[{role:"root", db:"admin"}]})
    

    次に、mongoシェルを終了して、次に説明するように認証を有効にします。

    10。 mongodb インスタンスは--authなしで開始されました コマンドラインオプション。 /lib/systemd/system/mongod.service を編集して、ユーザーの認証を有効にする必要があります ファイル、最初にそのように編集するためにファイルを開きます。

    $ sudo vim /lib/systemd/system/mongodb.service 
    

    [Service]の下 構成セクションで、パラメーター ExecStartを見つけます 。

    ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS
    

    次のように変更します:

    ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS
    

    ファイルを保存して終了します。

    11。 8.構成ファイルに変更を加えた後、「 systemctldaemon-reload」を実行します ‘ユニットをリロードしてMongoDBサービスを再起動し、次のようにステータスを確認します。

    $ systemctl daemon-reload
    $ sudo systemctl restart mongodb	
    $ sudo systemctl status mongodb	
    

    12。 mongodbに接続しようとすると 、MongoDBユーザーとして自分自身を認証する必要があります。例:

    $ mongo -u "root" -p --authenticationDatabase "admin"
    

    :パスワードはシェル履歴ファイルに保存され、攻撃者が後で表示する可能性があるため、コマンドラインでパスワードを入力することはお勧めしません。

    それで全部です! MongoDB は、高性能、高可用性、自動スケーリングを提供する、オープンソースの最新のNo-SQLデータベース管理システムです。

    この記事では、 MongoDBをインストールして開始する方法について説明しました。 Ubuntu 18.04 。ご不明な点がございましたら、下のコメントフォームを使用してお問い合わせください。


    1. すべてのpython-romオブジェクトをリストに入れる

    2. トップ6の無料Redisメモリ分析ツール

    3. MongoDB接続の.NETベストプラクティス?

    4. Laravelキャッシングを理解する:キャッシュファサードとRedis