MySQLのコマンドライン拡張ツールMaatkitをLinuxにインストールする
MySQLのコマンドライン拡張ツールMaatkitをLinuxにインストールする
0.改訂履歴
1.はじめに
このドキュメントでは,MySQLの管理を手助けつるツールの中から,主にレプリケーションを利用している環境で役に立つコマンドラ インのセットが用意されているMaatkitのインストール手順を説明する.
Maatkitは,オライリーの"High Performance MySQL"の著者が作成したPerlのツール群であり,現在は以下の様なモジュールが用意されている.
- $Revision: 1972 $
- mk-archiver 1.0.9
- mk-deadlock-logger 1.0.10
- mk-duplicate-key-checker 1.1.6
- mk-find 0.9.11
- mk-heartbeat 1.0.9
- mk-parallel-dump 1.0.8
- mk-parallel-restore 1.0.7
- mk-query-profiler 1.1.10
- mk-show-grants 1.0.10
- mk-slave-delay 1.0.7
- mk-slave-find 1.0.1
- mk-slave-move 0.9.1
- mk-slave-prefetch 1.0.2
- mk-slave-restart 1.0.7
- mk-table-checksum 1.1.27
- mk-table-sync 1.0.7
- mk-visual-explain 1.0.8
特に目立つのは,Slave関連のステータスを確認するツールである.
なお,このインストール手順では,PerlでMySQLを扱う為に,DBIおよびDBD::mysqlライブラリのインストールも行っている. ライブラ
リの場所が違う為,インストール中にNo library found for
-lmysqlclientというエラーが出る場合があり,それに対処している.
今回用いた環境はRedhat WS3.0へへインストールされた,MySQL 5.0.27環境で利用している.
2.モジュールに入手
- 以下のサイトから入手する.
- Maatkit: a toolkit of utilities and tools for MySQL
- ダウンロードしたモジュールを確認する.
[root@amadeus root]# ls -la maatkit-1972.tar.gz -rw-r--r-- 1 ujpadmin ujpadmin 383658 Jul 15 10:49 maatkit-1972.tar.gz [root@amadeus root]# |
3.maatkitをインストールする
[root@amadeus root]# tar xfz maatkit-1972.tar.gz [root@amadeus root]# cd maatkit-1972 [root@amadeus maatkit-1972]# ls -al total 96 drwxr-xr-x 5 1000 1000 4096 Jun 2 13:24 . drwxr-x--- 16 root root 4096 Jul 15 11:34 .. -rw-r--r-- 1 1000 1000 19071 Jun 2 13:24 COPYING -rw-r--r-- 1 1000 1000 34640 Jun 2 13:24 Changelog -rw-r--r-- 1 1000 1000 1045 Jun 2 13:24 INSTALL -rw-r--r-- 1 1000 1000 504 Jun 2 13:24 MANIFEST -rw-r--r-- 1 1000 1000 393 Jun 2 13:24 Makefile.PL -rw-r--r-- 1 1000 1000 427 Jun 2 13:24 README drwxr-xr-x 2 1000 1000 4096 Jun 2 13:24 bin drwxr-xr-x 2 1000 1000 4096 Jun 2 13:24 lib -rw-r--r-- 1 1000 1000 1480 Jun 2 13:24 maatkit.spec drwxr-xr-x 2 1000 1000 4096 Jun 2 13:24 udf [root@amadeus maatkit-1972]# |
- MAATKITはPerlで作られたモジュールである.
- perl Makefile.PLを実行する.
[root@amadeus maatkit-1972]# perl Makefile.PL Checking if your kit is complete... Looks good Writing Makefile for maatkit [root@amadeus maatkit-1972]# |
- 問題なく完了している.
- この時点でエラーが出る場合は,DBiおよびDBD::mysqlがインストールされていない場合が多いので,別途インストールしておく.
- makeを実行する.
[root@amadeus maatkit-1972]# make cp lib/maatkit.pm blib/lib/maatkit.pm cp lib/maatkitdsn.pm blib/lib/maatkitdsn.pm cp bin/mk-slave-prefetch blib/script/mk-slave-prefetch /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-slave- prefetch cp bin/mk-query-profiler blib/script/mk-query-profiler /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-query- profiler cp bin/mk-profile-compact blib/script/mk-profile-compact /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-profile- compact cp bin/mk-slave-move blib/script/mk-slave-move /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-slave-move cp bin/mk-find blib/script/mk-find /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-find cp bin/mk-heartbeat blib/script/mk-heartbeat /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-heartbeat cp bin/mk-parallel-restore blib/script/mk-parallel-restore /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-parallel- restore cp bin/mk-slave-find blib/script/mk-slave-find /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-slave-find cp bin/mk-table-sync blib/script/mk-table-sync /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-table-sync cp bin/mk-deadlock-logger blib/script/mk-deadlock-logger /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-deadlock- logger cp bin/mk-slave-delay blib/script/mk-slave-delay /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-slave-delay cp bin/mk-table-checksum blib/script/mk-table-checksum /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-table- checksum cp bin/mk-archiver blib/script/mk-archiver /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-archiver cp bin/mk-parallel-dump blib/script/mk-parallel-dump /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-parallel- dump cp bin/mk-show-grants blib/script/mk-show-grants /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-show-grants cp bin/mk-duplicate-key-checker blib/script/mk-duplicate-key-checker /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-duplicate- key-checker cp bin/mk-checksum-filter blib/script/mk-checksum-filter /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-checksum- filter cp bin/mk-visual-explain blib/script/mk-visual-explain /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-visual- explain cp bin/mk-slave-restart blib/script/mk-slave-restart /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/mk-slave- restart Manifying blib/man1/mk-slave-prefetch.1 Manifying blib/man1/mk-query-profiler.1 Manifying blib/man1/mk-profile-compact.1 Manifying blib/man1/mk-slave-move.1 Manifying blib/man1/mk-find.1 Manifying blib/man1/mk-heartbeat.1 Manifying blib/man1/mk-parallel-restore.1 Manifying blib/man1/mk-slave-find.1 Manifying blib/man1/mk-table-sync.1 Manifying blib/man1/mk-deadlock-logger.1 Manifying blib/man1/mk-slave-delay.1 Manifying blib/man1/mk-table-checksum.1 Manifying blib/man1/mk-archiver.1 Manifying blib/man1/mk-parallel-dump.1 Manifying blib/man1/mk-show-grants.1 Manifying blib/man1/mk-duplicate-key-checker.1 Manifying blib/man1/mk-checksum-filter.1 Manifying blib/man1/mk-visual-explain.1 Manifying blib/man1/mk-slave-restart.1 Manifying blib/man3/maatkit.3pm Manifying blib/man3/maatkitdsn.3pm [root@amadeus maatkit-1972]# |
[root@amadeus maatkit-1972]# make install Installing /usr/lib/perl5/site_perl/5.8.0/maatkit.pm Installing /usr/lib/perl5/site_perl/5.8.0/maatkitdsn.pm Installing /usr/share/man/man1/mk-slave-prefetch.1 Installing /usr/share/man/man1/mk-query-profiler.1 Installing /usr/share/man/man1/mk-profile-compact.1 Installing /usr/share/man/man1/mk-slave-move.1 Installing /usr/share/man/man1/mk-find.1 Installing /usr/share/man/man1/mk-heartbeat.1 Installing /usr/share/man/man1/mk-parallel-restore.1 Installing /usr/share/man/man1/mk-slave-find.1 Installing /usr/share/man/man1/mk-table-sync.1 Installing /usr/share/man/man1/mk-deadlock-logger.1 Installing /usr/share/man/man1/mk-slave-delay.1 Installing /usr/share/man/man1/mk-table-checksum.1 Installing /usr/share/man/man1/mk-archiver.1 Installing /usr/share/man/man1/mk-parallel-dump.1 Installing /usr/share/man/man1/mk-show-grants.1 Installing /usr/share/man/man1/mk-duplicate-key-checker.1 Installing /usr/share/man/man1/mk-checksum-filter.1 Installing /usr/share/man/man1/mk-visual-explain.1 Installing /usr/share/man/man1/mk-slave-restart.1 Installing /usr/share/man/man3/maatkit.3pm Installing /usr/share/man/man3/maatkitdsn.3pm Installing /usr/bin/mk-slave-prefetch Installing /usr/bin/mk-query-profiler Installing /usr/bin/mk-profile-compact Installing /usr/bin/mk-slave-move Installing /usr/bin/mk-find Installing /usr/bin/mk-heartbeat Installing /usr/bin/mk-parallel-restore Installing /usr/bin/mk-slave-find Installing /usr/bin/mk-table-sync Installing /usr/bin/mk-deadlock-logger Installing /usr/bin/mk-slave-delay Installing /usr/bin/mk-table-checksum Installing /usr/bin/mk-archiver Installing /usr/bin/mk-parallel-dump Installing /usr/bin/mk-show-grants Installing /usr/bin/mk-duplicate-key-checker Installing /usr/bin/mk-checksum-filter Installing /usr/bin/mk-visual-explain Installing /usr/bin/mk-slave-restart Writing /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/auto/maatkit/. packlist Appending installation info to /usr/lib/perl5/5.8.0/i386-linux-thread-multi/ perllocal.pod [root@amadeus maatkit-1972]# |