11:リストア速度(Building directory treeの速度)が劇的に早くなった

今までBuilding directory treeに時間が掛かっていたのはMYSQLの設定だった。
時間が掛かりすぎるのでbacluaのメーリングリストで聞いたら、やっぱりおかしいようだ。
一番の問題点はMYSQLのデーターベースエンジンに MyISAMを使っている事みたい。
これをInnoDBに変更する。ALTER TABLE テーブル名 ENGINE=InnoDB; を行なえと書いてあるが、データーベースごとそっくり変更出来ないかと調べたが、テーブル単位でしか出来ないようだ。
それではとデーターベースをエクスポートして、データーベース名を変更し、新規にbaculaをInnoDBで作り、インポートしたらおかしくなっていた。インポートしたファイルを見るとDBの指定がMyISAMになっていた。
面倒くさいので、既存のDBのテーブルを一つずつInnoDBにしてから
http://bacula.us/tuning/ にあるように /etc/my.cnf に

    sort_buffer_size = 2MB
    innodb_buffer_pool_size = 128MB
    innodb_flush_log_at_trx_commit = 0
    innodb_flush_method = O_DIRECT

を追記し、mysqlを再起動、テストで

+-------+-------+----------+---------------+---------------------+------------+
| JobId | Level | JobFiles | JobBytes      | StartTime           | VolumeName |
+-------+-------+----------+---------------+---------------------+------------+
|     4 | F     |  258,441 | 2,262,481,683 | 2015-07-02 14:32:50 | Vol-0004   |
|    14 | I     |      158 |    79,623,411 | 2015-07-03 04:32:49 | Vol-0014   |
+-------+-------+----------+---------------+---------------------+------------+
You have selected the following JobIds: 4,14
Building directory tree for JobId(s) 4,14 ...

のケースではBuilding directory treeに5時間20分(リストア全体の時間ではない、Building directory treeだけにかかった時間)掛かっていたのが、10秒位で終わった。
何だこれは!!こんなに違うの!!そういえば以前は”Building directory tree”の時CPUのユーティライゼションが100%になっていた。この時SWAPの状態をチェックしていなかったが、もしかしたらSWAPが大量に発生していたのかも?
結論】baculaでmysqlを使うときは絶対にDBのベースエンジンは InnoDB にし、上記の設定を追加する事。その後私はメモリーに少し余裕があるので 

innodb_buffer_pool_size = 256M

に変更した

f-otake について

1947年生れ、東京電機大学二部電気通信工学科卒、最後はスリランカ航空で営業だったのですが2018年に㈱インパック・ジャパンに再就職。趣味:登山、スキー、車いじり、コンピューター
カテゴリー: Baclua(バックアップ)に挑戦 パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください