MySQLで運用中にinnodb_file_per_tableを1にしたら

zabbixの性能がよくない。ウェブブラウズも遅いし、データ収集のキューも常時三桁くらい更新待ちになっている状態。
おそらくバックエンドDBのMySQLの性能なんだろうと。

ちょいちょいと調べるとテーブル単位でDBファイルを分割するのが吉らしい。my.cnf中で以下設定をする。

innodb_file_per_table=1

問題なのは、いま稼働しているDBにこの設定を有効にしてどうなるか。いろいろググったんですがよくわからない。のでやってみる。
上記設定を入れてmysqlを再起動。/var/lib/mysql/zabbixの下を観察しても新しいファイルができる様子はない。既存のテーブルには影響しないようです。そりゃそうか。
ちなみにinnodb_file_per_tableを有効にした後にcreate tableで新しく作成したテーブルはちゃんと新しいファイルが作成されます。

mysql> create table zabbix.hoge(hoge text,futa text);
Query OK, 0 rows affected (0.04 sec)

$ ls /var/lib/mysql/zabbix/hoge.*
/var/lib/mysql/zabbix/hoge.MYD  /var/lib/mysql/zabbix/hoge.frm
/var/lib/mysql/zabbix/hoge.MYI

ふーむ、dumpしたものからリストアすればテーブル単位でファイル分割されるんだろうけど。insertするのに三日くらいかかるからなぁ。