回答編集履歴

2

journalファイルについて記載、参考URL等

2016/04/01 07:39

投稿

poyopi
poyopi

スコア113

test CHANGED
@@ -31,3 +31,17 @@
31
31
 
32
32
 
33
33
   サーバにDBやミドルウェアを配置する作業は難しいですね。理解のないままコマンドをググったりして進めていくと、すぐハマってしまって投げがちです。基礎的な知識を体系的に学べる書籍等ありましたら、ご教示頂けたらと思います。
34
+
35
+
36
+
37
+ **[追記]**
38
+
39
+  使用率が95%ほどになっていたのは、まさにこのjournalファイルが問題でした。mongoでは、ある一定の間隔でスタックに溜めていたデータをDBに書き込むのだそうで、万が一DBにスタック上のデータが書き込まれる前にクラッシュしたとしても、journalによってリカバリが可能なのだということです。以下、参考です。
40
+
41
+ - [wktkWebDiary - MongoDBのjournal機能で生成されるファイル](http://d.hatena.ne.jp/moomoomuu/20120118/1326892575)
42
+
43
+ - [doryokujin's blog - MongoDBの新機能:ジャーナリングについて詳しく](http://doryokujin.hatenablog.jp/entry/20110614/1308010072)
44
+
45
+
46
+
47
+  ということで、こちらを消したら使用率は30%ほどとなりました。もともとconfファイルにはnojournalと記述してあったのですが、なぜ生成されていたのかは謎です。

1

補足として、参考URLの提示

2016/04/01 07:39

投稿

poyopi
poyopi

スコア113

test CHANGED
@@ -1,16 +1,16 @@
1
- おそらくですが、自己解決しました。
1
+  おそらくですが、自己解決しました。
2
2
 
3
3
 
4
4
 
5
- そもそもの経緯として、毎日毎時データをためていたらディスクの使用率が95%ぐらいになり、mongodbの置き場所を変えようと思ったことがきっかけでした。例えば/hogeというところから/piyoというところに引っ越したかったのです。
5
+  そもそもの経緯として、毎日毎時データをためていたらディスクの使用率が95%ぐらいになり、mongodbの置き場所を変えようと思ったことがきっかけでした。例えば/hogeというところから/piyoというところに引っ越したかったのです。
6
6
 
7
- /hogeにあるmongodb関連のものをどんどん/piyoにコピーしようと思い、まずは/etc/mongod.confの編集に始まり(/hoge/の記述を/piyo/に書き換える)、配下にある../run/mongodb/mongd.pid、../lib/mongoなどを「cp -a」しました。これが問題で、../lib/mongo/配下はまっさらな状態にしておかねばならなかったのでした。コピーするのにものすごく時間がかかった時点で何か気づけばよかったのですが……無知ゆえ、理由(../lib/mongo/配下空にしておく意味)等ご教示下さがいらっましら、ろしくお願致します。
7
+  /hogeにあるmongodb関連のものをどんどん/piyoにコピーしようと思い、まずは/etc/mongod.confの編集に始まり(/hoge/の記述を/piyo/に書き換える)、/hoge/配下にある../run/mongodb/mongd.pid、../lib/mongoなどを/piyo/配下に「cp -a」しました。これが問題で、../lib/mongo/配下はまっさらな状態にしておかねばならなかったのでした。コピーするのにものすごく時間がかかった時点で何か気づけばよかったのですが。[Qiitaのこちらの記事](http://qiita.com/momotas210/items/cbe5c7e20b6f8d27e391)と、jounalあるのがまずようでた。このディレクトリには、prealloc.0とたようなファイルが入っています。どういう仕組みのものか今後調べていきますが、何か知見のある方にご教示いただければと思います。
8
8
 
9
- 質問内容にて追記していますが、引っ越した関係で、/piyo/log/mongodb/についても権限がrootになっていたので所有者・グループともに/hoge/log/mongodb/でそうしているようにmongodとしました。
9
+  質問内容にて追記していますが、引っ越した関係で、/piyo/log/mongodb/についても権限がrootになっていたので所有者・グループともに/hoge/log/mongodb/でそうしているようにmongodとしました(chown -R, chgrp -R)
10
10
 
11
11
 
12
12
 
13
- 再起動は
13
+  再起動は
14
14
 
15
15
  ```ここに言語を入力
16
16
 
@@ -26,8 +26,8 @@
26
26
 
27
27
  ```
28
28
 
29
- 無事に完了したので、もともとmongoexportしていたcollectionをmongoimportして、止まっていた間のデータがないとはいえ、なんとか再稼働させることができました。
29
+  無事に完了したので、もともとmongoexportしていたcollectionをmongoimportして、止まっていた間のデータがないとはいえ、なんとか再稼働させることができました。
30
30
 
31
31
 
32
32
 
33
- サーバにDBやミドルウェアを配置する作業は難しいですね。理解のないままコマンドをググったりして進めていくと、すぐハマってしまって投げがちです。基礎的な知識を体系的に学べる書籍等ありましたら、ご教示頂けたらと思います。
33
+  サーバにDBやミドルウェアを配置する作業は難しいですね。理解のないままコマンドをググったりして進めていくと、すぐハマってしまって投げがちです。基礎的な知識を体系的に学べる書籍等ありましたら、ご教示頂けたらと思います。