CentOS/MySQL InnoDB Plugin を追加インストールする

提供:maruko2 Note.
移動: 案内, 検索

目次

RHEL 6.3バンドル版MySQL 5.1.61がInnoDB Pluginをサポート - SH2の日記

  • mysql-server-5.1.61-4.el6.x86_64.rpm には、InnoDB Plugin が含まれている。
  • mysql-server-5.1.61-1.el6_2.1.x86_64.rpm には、InnoDB Plugin は含まれていない。

Scientific Linux 6.0 (CentOS 6.0) の標準リポジトリを利用し MySQL Server (mysql-server) をインストールしても、InnoDB Plugin はインストールされない。(InnoDB Plugin が無効にされビルドされている。)

InnoDB Plugin は MySQL 5.1.38 から正式版(GA, Generally Available)としてリリースされており MySQL に付属され配布されている。

Scientific Linux 6.0 (CentOS 6.0) に採用されている MySQL 5.1.52 は InnoDB Plugin を有効にしてビルドしなおすことで、InnoDB Plugin を利用することができるようになる。

InnoDB Plugin を有効にし再ビルド

標準リポジトリで配布されている MySQL のソース RPM を基に、InnoDB Plugin を有効にし再ビルドする。

  1. MySQL のソース RPM をダウンロード
  2. wget http://ftp.riken.jp/Linux/scientific/6.0/SRPMS/vendor/mysql-5.1.52-1.el6_0.1.src.rpm
    
  3. ソース RPM をインストールし、spec ファイルを編集
  4. rpm -ihv mysql-5.1.52-1.el6_0.1.src.rpm
    vi rpmbuild/SPECS/mysql.spec
    
  5. configure オプションに --with-plugins-innodb_plugin を追記する
  6. %configure \
            --with-readline \
            --with-ssl=/usr \
            --without-debug \
            --enable-shared \
            --with-embedded-server \
            --localstatedir=/var/lib/mysql \
            --with-unix-socket-path=/var/lib/mysql/mysql.sock \
            --with-mysqld-user="mysql" \
            --with-extra-charsets=all \
            --with-big-tables \
            --with-pic \
            --with-plugin-innobase \
            --with-plugins-innodb_plugin \
            --with-plugin-partition \
            --enable-local-infile \
            --enable-largefile \
            --enable-thread-safe-client \
            --disable-dependency-tracking
    
  7. ビルドする
  8. rpmbuild -bb rpmbuild/SPECS/mysql.spec
    

    root だと test できないということなので、--define='runselftest 0' を付ける。

    rpmbuild -bb --define='runselftest 0' rpmbuild/SPECS/mysql.spec
    
  9. rpmbuild/RPM/ に RPM ファイルが完成。

再ビルドした mysql-server-5.1.52-1.el6.1.x86_64.rpm をインストールすることで、InnoDB Plugin が /usr/lib64/mysql/plugin/ にインストールできる。

mysql-server をインストール済みの場合は、mysql-server-5.1.52-1.el6.1.x86_64.rpm を展開し、InnoDB Plugin だけをコピーしても動作する。

rpmdev-extract rpmbuild/RPMS/x86_64/mysql-server-5.1.52-1.el6.1.x86_64.rpm 
cd mysql-server-5.1.52-1.el6.1.x86_64/usr/lib64/mysql/plugin/
cp -r ha_innodb_plugin.* /usr/lib64/mysql/plugin/

InnoDB Plugin を有効にする

InnoDB Plugin はインストールするだけでは有効にならない。

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> show plugins;
+---------------------+--------+--------------------+---------------------+---------+
| Name                | Status | Type               | Library             | License |
+---------------------+--------+--------------------+---------------------+---------+
| binlog              | ACTIVE | STORAGE ENGINE     | NULL                | GPL     |
| partition           | ACTIVE | STORAGE ENGINE     | NULL                | GPL     |
| CSV                 | ACTIVE | STORAGE ENGINE     | NULL                | GPL     |
| MEMORY              | ACTIVE | STORAGE ENGINE     | NULL                | GPL     |
| MyISAM              | ACTIVE | STORAGE ENGINE     | NULL                | GPL     |
| MRG_MYISAM          | ACTIVE | STORAGE ENGINE     | NULL                | GPL     |
| InnoDB              | ACTIVE | STORAGE ENGINE     | ha_innodb_plugin.so | GPL     |
| INNODB_TRX          | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL     |
| INNODB_LOCKS        | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL     |
| INNODB_LOCK_WAITS   | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL     |
| INNODB_CMP          | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL     |
| INNODB_CMP_RESET    | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL     |
| INNODB_CMPMEM       | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL     |
| INNODB_CMPMEM_RESET | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL     |
+---------------------+--------+--------------------+---------------------+---------+

参考ページ

LINEで送る このエントリーをはてなブックマークに追加
個人用ツール
名前空間
変種
表示
操作
案内
ツールボックス

注目のページ

このサイトのはてなブックマーク数