web-dev-qa-db-ja.com

シェルからストレージエンジンを確認する

3.0にアップグレードしていますが、アップグレードでいくつかの問題が発生しました。具体的には、mongodを介してsshを起動しようとするとエラーが発生し、新しいYAML構成ファイルで指定したものではなく、デフォルトのdbpathを使用しようとしました。私は先に進んでマシンを再起動しましたが、mongodは再び稼働しています。私はこの時点で少し偏執的であり、ストレージエンジンがシェルからwiredtigerであることを確認する方法があるかどうか知りたいです。

35
ton.yeung

現在使用されているストレージエンジンを見つける最も簡単な方法

内側のmongoコンソールタイプ

db.serverStatus().storageEngine

現在使用されているストレージエンジンを返します

{ "name" : "wiredTiger" }

WiredTigerが使用されていることを確認したら、次のように入力します。

db.serverStatus().wiredTiger

wiredTigerのすべての構成詳細を取得します。

61
Mayank Patel

免責事項:MongoDBエキスパートではありません

Linuxのプロセスリストを確認する

WIREDTIGER_CONFIGURED=`ps -ef|grep mongod|grep -i storageengine|grep -ic wiredtiger`
echo ${WIREDTIGER_CONFIGURED}

1はそこにあることを意味します

モンゴシェルから

db.serverStatus()

あなたはこのようなものを見るはずです

"wiredTiger" : {
   ...
   "cache" : {
      "tracked dirty bytes in the cache" : <num>,
      "bytes currently in the cache" : <num>,
      "maximum bytes configured" : <num>,
      "bytes read into cache" :<num>,

または、ストレージエンジン名を

db.serverStatus().storageEngine.name

mmapv1またはwiredTiger

またはコマンドラインから

MONGO_ENGINE=`mongo -u... -p... --eval "db.serverStatus().storageEngine.name"`
9
RolandoMySQLDBA

mongod.logファイルには、使用しているストレージエンジンを説明する文字列が入力されます。
実行できるように:

cat /var/log/mongodb/mongod.log  | grep STORAGE | tail -n 1

これは次のようなものを返します:

2017-06-28T21:45:24.745+0200 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=4G,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
1
maioman