MySQL 5.5.11 へのバージョンアップ( 5.5.10 ⇒ 5.5.11)

MySQL 5.5.11が2011年4月7日にリリースされました。 早速、リリースされたMySQL 5.5.11へのバージョンアップを行いましたので、その記録を掲載します。

なお、変更点については下記を参照してください。

http://dev.mysql.com/doc/refman/5.5/en/news-5-5-11.html 1.新しいパッケージファイルのダウンロード [root ~]# wget http://rpms.famillecollet.com/enterprise/5/test/i386/mysql-5.5.11-1.el5.remi.i386.rpm [root ~]# wget http://rpms.famillecollet.com/enterprise/5/test/i386/mysql-libs-5.5.11-1.el5.remi.i386.rpm [root ~]# wget http://rpms.famillecollet.com/enterprise/5/test/i386/mysql-server-5.5.11-1.el5.remi.i386.rpm 2.MySQLのシャットダウン [root ~]# service mysqld stop mysqld を停止中: [ OK ] 3.新しいパッケージファイルのインストール [root ~]# yum install mysql-5.5.11-1.el5.remi.i386.rpm mysql-server-5.5.11-1.el5.remi.i386.rpm mysql-libs-5.5.11-1.el5.remi.i386.rpm Loaded plugins: fastestmirror, priorities Loading mirror speeds from cached hostfile * addons: rsync.atworks.co.jp * base: rsync.atworks.co.jp * 続きを読む »

MySQL 5.5.10 ~パフォーマンスチューニング

WordPressのパフォーマンス向上の目的で、パフォーマンスチューニングを始めました。

httpd層では、別記事に記載したように、mod_chche、mod_disk_cacheを使用して、最低レベルの対策を実施しています。もちろん、まだ上のレベルがありますが、ここでは、DB層のパフォーマンスチューニングを実施します。

WordPressですので、DB層はMySQLです。現時点で最新のバージョン5.5.10を使用しています。

さて、まずは、現状を知ることから。

そこで、MySQLTuner を使用してみます。MySQLTuner は稼働中のMySQLの設定情報やログ情報からセキュリティ、パフォーマンスに関する診断結果と推奨情報を提供してくれるperlスクリプトです。

実際の利用には、まずは MySQLTuner をダウンロードします。

[root ~]# wget mysqltuner.pl –2011-03-30 12:51:21– http://mysqltuner.pl/ mysqltuner.pl をDNSに問いあわせています… 50.56.84.181 mysqltuner.pl|50.56.84.181|:80 に接続しています… 接続しました。 HTTP による接続要求を送信しました、応答を待っています… 302 Found 場所: http://mysqltuner.pl/mysqltuner.pl [続く] –2011-03-30 12:51:22– http://mysqltuner.pl/mysqltuner.pl mysqltuner.pl|50.56.84.181|:80 に接続しています… 接続しました。 HTTP による接続要求を送信しました、応答を待っています… 200 OK 長さ: 41393 (40K) [text/plain] `mysqltuner.pl’ に保存中 100%[======================================>] 41,393 76.2K/s 時間 0.5s 2011-03-30 12:51:23 (76.2 KB/s) 続きを読む »

MySQL 5.5.10 へのバージョンアップ( 5.5.9 ⇒ 5.5.10)

2011年3月15日にリリースされたMySQL 5.5.10へのバージョンアップを行いましたので、その手順を(単なるログに近いものですが)掲載します。

なお、変更点については下記を参照してください。

http://dev.mysql.com/doc/refman/5.5/en/news-5-5-10.html 1.新しいパッケージファイルのダウンロード [root ~]# wget http://rpms.famillecollet.com/enterprise/5/test/i386/mysql-5.5.10-1.el5.remi.i386.rpm [root ~]# wget http://rpms.famillecollet.com/enterprise/5/test/i386/mysql-libs-5.5.10-1.el5.remi.i386.rpm [root ~]# wget http://rpms.famillecollet.com/enterprise/5/test/i386/mysql-server-5.5.10-1.el5.remi.i386.rpm 2.MySQLのシャットダウン [root ~]# service mysqld stop mysqld を停止中: [ OK ] 3.新しいパッケージファイルのインストール [root ~]# yum install mysql-5.5.10-1.el5.remi.i386.rpm mysql-server-5.5.10-1.el5.remi.i386.rpm mysql-libs-5.5.10-1.el5.remi.i386.rpm Loaded plugins: fastestmirror, priorities Loading mirror speeds from cached hostfile * addons: ftp.iij.ad.jp * base: ftp.iij.ad.jp * epel: ftp.kddilabs.jp 続きを読む »

MySQL 5.5.x のログ管理(バックアップ)

ログ管理(バックアップ)の基本は、ログの肥大化防止と保全です。ここでも、それらを第一に考えての管理方法(バックアップ方法)を採ることにします。もちろん、MySQL 5.5のマニュアルにも記載されている方法をベースにしたものです。

MySQL 5.5.xには下表(バージョン5.1の日本語マニュアルを元に筆者が加筆)に示すログがあります。バージョン5.5の場合も、バージョン5.1と同様です。 バイナリログについては、DBテーブルとデータのリカバリに必要となるもので、別記事『MySQL 5.5.9 のバックアップ/リカバリ』をご覧下さい。

ログ ファイル 説明 エラー ログ mysqldの起動、実行、および停止で発生した問題。mysqld_safeに関するログもある。 一般クエリ ログ クライアントとの接続と実行したクエリ。 バイナリ ログ データ変更のステートメント。レプリケーションにも使用。 スロー クエリ ログ long_query_time秒(デフォルトは10秒)より時間を要したクエリ、またはインデックスを使用しなかったクエリ。

また、ここでは、my.cnf中のログ関連の設定が次の通りであることを前提としています。

【/etc/my.cnfからログ関連設定を抜粋】

[mysqld] log-error = /var/log/mysql/mysqld-error.log general_log = 1 general_log_file = /var/log/mysql/mysql.log slow_query_log = 1 slow_query_log_file = /var/log/mysql/slow.log [mysqld_safe] log-error = /var/log/mysql/mysqld_safe-error.log 1.手入力での管理(バックアップ)

あくまでも個別に実施する場合の実行手順です。

一般クエリログ(The General Query Log)

[root ~]# mv /var/log/mysql/mysql.log 続きを読む »

MySQL 5.5.x のバックアップ/リカバリ

WordPressのためというのが現在の主な用途ですが、MySQLを稼働させています(記事投稿時点での最新バージョン5.5.9を使用)。 さて、そうなるとMySQLには大切なデータを保存していることになるので、データの保全性とブログの可用性向上のためにバックアップ/リカバリの構築が必要になります。

もちろん、高いレベルを求めれば切りがありませんので、最も手軽で簡単な方法を採りたいと考え、まずはmysqldumpでのバックアップ運用とmysql、mysqlbinlogを使用した復旧(リストア&リカバリ)の手順を構築しておこうと思います。

【可用性要件】

要件は、 「毎日夜中に全データベースのバックアップを取る」 ということです。

【バックアップ】

オンラインバックアップを行うことにします。バックアップ設定手順は次の通りです。

1.cronの確認 [root ~]# ps -ef | grep crond root 17548 1 0 2010 ? 00:00:01 crond ←稼働している! root 55239 44276 0 23:07 pts/0 00:00:00 grep crond

稼働していない場合の対応には文字数が必要なので、ここでは割愛します。

2.crontabの確認 [root ~]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-parts 37 * * * * root run-parts /etc/cron.hourly 続きを読む »