この記事では、mongod.confファイルに焦点を当てたmongodb構成について詳しく説明しています。ネットワーク設定(BINDIP、ポート)、ストレージ(DBPATH、WIREDTIGER)、およびロギングをカバーしています。この記事では、ハードウェア、WiredTiger設定によるパフォーマンスの最適化についても説明しています
基本的なMongoDB設定の構成には、 mongod.conf
ファイルの理解と変更が含まれます。 MongoDBインストールディレクトリのbin
フォルダー(通常はLinux Systemsの/etc/mongod.conf
)にあるこのファイルは、データベースサーバーのさまざまな側面を制御します。キー設定を調べてみましょう:
1。 net
:このセクションは、ネットワーク接続を規定しています。重要なことに、 bindIp
設定は、MongoDBが耳を傾けるインターフェイスを決定します。 bindIp: 127.0.0.1
LocalHostへのアクセスを制限します。 bindIp: 0.0.0.0
では、すべてのインターフェイスからの接続が可能になります(重要なセキュリティに関する考慮 - アクセスを適切に制限します)。 port
設定では、MongoDBが使用するポートを定義します(デフォルトは27017です)。セキュア接続のためにTLS/SSLを有効にするなど、ここで認証メカニズムを構成することもできます。例:
<code>net: bindIp: 127.0.0.1 port: 27017</code>
2。 storage
:このセクションでは、MongoDBがディスクにデータを保存する方法を制御します。 dbPath
データファイルが保存されるディレクトリを指定します。 wiredTiger
(デフォルトのストレージエンジン)には、このセクション内に多数の設定可能なオプションがあり、キャッシュサイズ、圧縮、その他のパフォーマンス関連の側面の微調整が可能になります。たとえば、 cacheSizeGB
のようなengineConfig
パラメーターを調整すると、パフォーマンスに大きな影響を与える可能性があります。常に十分なディスクスペースを確保してください。例:
<code>storage: dbPath: /data/db wiredTiger: engineConfig: cacheSizeGB: 16</code>
systemLog
:このセクションでは、ロギング動作を決定します。 destination
パラメーターは、ログが書かれている場所(たとえば、ファイルまたはsyslog)を指定します。 logAppend
設定により、ログが既存のファイルに追加されるか、上書きされるかどうかが決まります。 logPath
とlogComponent
の調整は、デバッグと監視に役立ちます。例:
<code>systemLog: destination: file logAppend: true logPath: /var/log/mongodb/mongod.log</code>
mongod.conf
を変更した後、変更が有効になるようにMongoDBサービスを再起動します。重要な変更を加える前に、構成ファイルをバックアップすることを忘れないでください。
新しいMongoDBの展開の場合、セキュリティとパフォーマンスに焦点を当てることが最重要です。以下は、必須の構成オプションです。
bindIp
設定を慎重に選択して、信頼できるホストまたはネットワークのみにネットワークアクセスを制限します。ファイアウォールを使用してアクセスをさらに制限することを強くお勧めします。MongoDBパフォーマンスを最適化するには、多面的なアプローチが必要です。
wiredTiger
構成: mongod.conf
ファイル内のwiredTiger
設定を微調整します。 cacheSizeGB
(キャッシュに割り当てられたメモリ)、 engineConfig.eviction
(キャッシュ立ち退き戦略)、および圧縮設定の調整は、パフォーマンスに大きな影響を与える可能性があります。実験と監視が重要です。$where
を使用しないようにし、パフォーマンスを向上させるためにクエリ構造を最適化しないでください。 MongoDBのプロファイリングツールを利用して、遅いクエリを識別します。はい、主にこれらの方法を使用して、MongoDB設定をリモートで構成できます。
mongod.conf
ファイルを直接変更します。これには、サーバーへのSSHアクセスが必要です。変更を行った後、MongoDBサービスを再起動することを忘れないでください。mongosh
:必要な権限を持つユーザーがいる場合、 mongosh
シェルを使用して、間接的に構成に影響を与えるコマンドを実行できます(たとえば、間接的に複製パフォーマンスに影響を与えるOPLOGサイズを変更します)。ただし、これはmongod.conf
の直接構成の変更ではあまり一般的ではありません。MongoDBをリモートで管理する場合、セキュリティが最重要であることを忘れないでください。 Secure Connections(キーベースの認証を備えたSSH)を使用し、認定ユーザーのみへのアクセスを制限します。変更を加える前に、常に構成をバックアップしてください。
以上が基本的なMongoDB設定を構成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。