Ubuntu 10.04 LTS の MySQL で InnoDB Plugin を有効にしようとしたらハマったメモ
Ubuntu 10.04 LTS の MySQL は 5.1.41 なので、InnoDB Plugin をソースからインストールしなくてもそのまま使えますが、セットアップしていて少しつまづいたのでメモです。
/etc/mysql/my.cnf に
ignore-builtin-innodb plugin-load=innodb=ha_innodb_plugin.so;innodb_trx=ha_innodb_plugin.so;innodb_locks=ha_innodb_plugin.so;innodb_lock_waits=ha_innodb_plugin.so;innodb_cmp=ha_innodb_plugin.so;innodb_cmp_reset=ha_innodb_plugin.so;innodb_cmpmem=ha_innodb_plugin.so;innodb_cmpmem_reset=ha_innodb_plugin.so
を追記して、MySQL をリスタートしても、
[ERROR] Can't open shared library '/usr/lib/mysql/plugin/ha_innodb_plugin.so' (errno: 0 failed to map segment from shared object: Permission denied)
と言われてしまい、起動できなかったのでググったら、どうやら SELinux の設定が関係しているようです。
/etc/apparmor.d/usr.sbin.mysqld というファイルがあるので、そこに
/usr/lib/mysql/plugin/* rm,
を追記して、
service apparmor restart
で無事 InnoDB Plugin を読み込んで起動できました。