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

MongoDBへの接続を確認しています

    1。概要

    このチュートリアルでは、MongoDBとの接続を確認する方法を学びます。

    重要なのは、単一のMongoDBインスタンスに接続するには、MongoDBインスタンスのURIを指定する必要があることです。

    2。 MongoShellを使用した接続の確認

    このセクションでは、mongoshellコマンドを使用してMongoDBサーバーに接続します。 MongoDBに接続するさまざまなケースを検討します。

    2.1。デフォルトポートでの接続の確認

    デフォルトでは、MongoDBはポート27017で実行されます ただし、他のポートでも実行できます。 単純なmongoコマンドを使用してMongoDBサーバーに接続できます:

    $ mongo
    MongoDB shell version v4.4.2
    connecting to: mongodb://localhost:27017/?compressors=disabled&gssapiServiceName=mongodb
    Implicit session: session { "id" : UUID("b7f80a0c-c7b9-4aea-b34c-605b85e601dd") }
    MongoDB server version: 4.0.1-rc0-2-g54f1582fc6

    上記のコマンドでは、デフォルトで、MongoDBはポートを 27017と見なしていました 。 MongoDBサーバーがダウンしている場合、次のエラーが発生します:

    $ mongo --host localhost --port 27017 admin
    MongoDB shell version v4.4.2
    connecting to: mongodb://localhost:27017/admin?compressors=disabled&gssapiServiceName=mongodb
    Error: couldn't connect to server localhost:27017, connection attempt failed:
      SocketException: Error connecting to localhost:27017 :: caused by :: Connection refused :
    [email protected]/mongo/shell/mongo.js:374:17
    @(connect):2:6
    exception: connect failed
    exiting with code 1

    この場合、サーバーに接続できなかったためにエラーが発生しました。

    2.2。保護されたMongoDBデータベースの接続を確認しています

    MongoDBは認証で保護できます。その場合、コマンドでユーザー名とパスワードを渡す必要があります:

    $ mongo mongodb://baeldung:[email protected]:27017

    ここでは、ユーザー名を使用しました 「baeldung」とパスワード ローカルホストで実行されているMongoDBに接続するための「baeldung」。

    2.3。カスタムポートでの接続の確認

    カスタムポートでMongoDBを実行することもできます。 mongod.confに変更を加えるだけです。 ファイル。 MongoDBが他のポートで実行されている場合は、コマンドでそのポートを指定する必要があります:

    $ mongo mongodb://localhost:27001

    ここで、mongoシェルでは、データベースサーバーの現在アクティブな接続を確認することもできます。

    var status = db.serverStatus();
    status.connections
    {
        "current" : 21,
        "available" : 15979
    }

    serverStatus データベースプロセスの現在のステータスの概要を示すドキュメントを返します。 serverStatusを定期的に実行する コマンドは、MongoDBインスタンスに関する統計を収集します。

    3。 Javaドライバコードを使用した接続の確認

    これまで、シェルを使用してMongoDBとの接続を確認する方法を学びました。次に、Javaドライバーコードを使用して同じことを調べてみましょう。

    MongoClientOptions.Builder builder = MongoClientOptions.builder();
    // builder settings
    ServerAddress ServerAddress = new ServerAddress("localhost", 27017);
    MongoClient mongoClient = new MongoClient(ServerAddress, builder.build());
    
    try {
        System.out.println("MongoDB Server is Up:- "+mongoClient.getAddress());
        System.out.println(mongoClient.getConnectPoint());
        System.out.println(db.getStats());
    } catch (Exception e) {
        System.out.println("MongoDB Server is Down");
    } finally{
        mongoClient.close();
    }

    上記のコードでは、最初に MongoClientOptionを作成しました MongoClientの構成をカスタマイズするビルダー 接続してから、 MongoClient を作成しました サーバーアドレスを使用した接続。 MongoDBサーバーが27017で実行されているとします。 ローカルホストのポート。それ以外の場合、 MongoClient エラーがスローされます。


    1. 配列内にある配列内のアイテムを更新します

    2. RailsにMongoidを搭載したMongoDB-地理空間インデックス

    3. jsonファイルをmongodbに挿入します

    4. TornadoからRedisを*適切に*クエリするにはどうすればよいですか?