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

GCPクラスターからのVPCピアリングを使用してMongoAtlasに接続できません

    私はそれを機能させるために2つの変更を加えることになりました。最初の変更は、私が見逃していた明確な要件です。 2回目の変更が絶対に必要かどうかはまだわかりません。

    1)新しいGCPクラスターを作成する必要があり、その中でVPCネイティブ(IPエイリアスを有効にする)がデフォルトで有効になっています。以前のクラスターでは、この設定が無効になっていて、実行中のクラスター用に変更できませんでした。問題を解決するには、この設定を必ずオンにする必要があります。

    2)Mongo Javaドライバー3.11.1を使用していますが、nslookupをいくつか使用しました。 コマンドを実行し、古いドライバースタイルの接続URI文字列を使用する方が安全であると考えました(例:mongodb://<username>:<password>@<cluster_name>-shard-00-00-pri.crum0.gcp.mongodb.net:27017,<cluster_name>-shard-00-01-pri.crum0.gcp.mongodb.net:27017,<cluster_name>-shard-00-02-pri.crum0.gcp.mongodb.net:27017/itls?ssl=true&replicaSet=<cluster_name>-shard-0&authSource=admin&retryWrites=true&w=majority )、nslookup以降 実際には、古いスタイルには実際のIPアドレスを与えましたが、新しいスタイルには与えませんでした。

    nslookup 役に立ったコマンド:

    >> nslookup <cluster_name>-shard-00-00-pri.crum0.gcp.mongodb.net
    Server:     8.8.8.8
    Address:    8.8.8.8#53
    
    Non-authoritative answer:
    Name:   <cluster_name>-shard-00-00-pri.crum0.gcp.mongodb.net
    Address: 192.168.248.2
    
    >> nslookup <cluster_name>-pri.crum0.gcp.mongodb.net
    Server:     8.8.8.8
    Address:    8.8.8.8#53
    
    Non-authoritative answer:
    *** Can't find <cluster_name>-pri.crum0.gcp.mongodb.net: No answer
    


    1. JSONデータをエクスポートし、リレーショナルデータベースにロードします

    2. mongoシェル内でMongoクエリ出力をファイルに出力する

    3. 欠落しているデータをスキップしながら、データ型を文字列から日付に変更します

    4. mongodbの配列から最小値と最大値を見つけます