mysqlのibdata1が肥大化しているため対処方法をご教示下さい

2018年7月30日 at 15:24

お世話になっております。
concreate5で使用しているmysqlの表領域ファイル「ibdata1」が肥大化しており
何か対処方法をご存知の方がいらっしゃりましたらご教示いただけないでしょうか。

・利用しているconcrete5のバージョン
 5.7.5.6

・利用しているブラウザ
 IE11

・concrete5が動いている環境
  → VMPLAYER WorkStation 12
  → PHP
    PHP 5.3.3 (cli) (built: Aug 11 2016 20:33:53)
  → MySQL
    Ver 14.14 Distrib 5.1.73
  → Apache
    Server version: Apache/2.2.15 (Unix)


■サーバの状況について
Webサーバのメインディスク容量が32GB/36GB使用しており
残り5%ほどの猶予しかなくなっております。

■調査結果
当方で肥大化の原因を探ったところ
mysqlの良くある問題の一つで、表領域ファイルの
「ibdata1」が肥大化していることが分かりました。


これについては一般的な対処方法として、フルバックアップ取得し
表領域ファイルの削除を行った上で、フルバックアップを
リストアすれば、ハイウォーターマークがついてしまった表領域が
縮小され復活するという対処があったため実施してみました。


参考にみたサイトのURLです。

http://qiita.com/tukiyo3/items/028f4051078fdbd8edbd

http://hiroakis.com/blog/2013/08/22/mysql-なぜibdata1が肥大化する理由記事の意訳/

■検証結果
上記対処をした場合に問題ないかを
VMWARE(仮想)で試したところ、
初期化したあとibdata1は「10MB」になり
DBのバックアップ(21GB)を流したところ
このibdata1が21GBになってしまい、結果的にDBのバックアップファイルが小さくならないと意味がない事が分かりました。

・concreate5の履歴ファイルの削除
http://d.hatena.ne.jp/xross-cube/20110117/p1

こちらのサイトを参考にし、履歴を削除しましたが
バックアップファイルを取得したところ変わらず21GBでした。


【確認したいこと】
ibdata1が27GBになっています。HP開設当初は1GBほどでしたが日に日に大きくなっています。
HPの更新はほとんどやっていないため、肥大化するコンテンツなどは無いと考えております。
この肥大化状態の解消方法についてご教示いただけないでしょうか。
 例えば
  ・特定のテーブルを消す
  ・設定を変更する など

ibdataなどで検索してもヒットしなかったため、解決参考ページなどあればご教示下さい。

【気になっていること】
管理画面の「ログ設定」にて
「データベースクエリを保存」がチェックされております。
当該設定も肥大化の要因の一つになっているのでしょうか。

何卒よろしくお願い致します。

タグ:

Re: mysqlのibdata1が肥大化しているため対処方法をご教示下さい

2018年7月31日 at 12:52
> 「データベースクエリを保存」がチェックされております。
> 当該設定も肥大化の要因の一つになっているのでしょうか。

なります。すぐにオフにして、ログを削除しましょう。
 

Re: mysqlのibdata1が肥大化しているため対処方法をご教示下さい

2018年7月31日 at 13:56
takuro hishikawa 様

返信ありがとうございます。
設定変更については了解しました。

>ログを削除しましょう。

大変申し訳ございませんが、ログの削除とはconcreate5のログを削除する
ページがあるのでしょうか。
ログとなるテーブルをtruncateしろということでしょうか。

設定を変更した時に、自動的にconcreate5の方で削除されるのでしょうか。

知識がなく申し訳ありませんがご教示下さい。
 

Re: mysqlのibdata1が肥大化しているため対処方法をご教示下さい

2018年7月31日 at 14:24
クエリーログをリロード時に消去 にチェックをつけて保存すれば消えると思います
 

Re: Re: mysqlのibdata1が肥大化しているため対処方法をご教示下さい

2018年7月31日 at 15:55
takuro hishikawa 様

返信ありがとうございます。
ちょっと試してみます。取り急ぎお礼まで

よろしくお願い致します。
 

Re: mysqlのibdata1が肥大化しているため対処方法をご教示下さい

2018年9月18日 at 12:10
takuro hishikawa 様

お世話になっております。
フォーラム活性化のため、結果について報告いたします。

ご教示いただいた「クエリーログ」が保存されていたことが起因し
肥大化しておりました。

・クエリーログの保存を解除
・クエリーログをリロード時に消去
・ibdata等の削除
・mysqlのリストア

上記作業にて肥大化した状態を正常な状態に持っていくことが出来ました。

ありがとうございました。
 

Re: mysqlのibdata1が肥大化しているため対処方法をご教示下さい

2018年9月18日 at 12:29
ご報告・ご共有ありがとうございます