MySQLを手っ取り早く高速化。クエリキャッシュの設定

MySQLサーバでなんかSELECT文が遅いときクエリキャッシュを有効にすれば,手っ取り早く速度の改善ができる。
SQLとかテーブル構造のチューニングとかの方が効果的かもしれないけど,どんなケースでも簡単に即設定できるのが良い。
利点は既存のコードやSQL文を一切変更しなくても,パッと速度が改善する点。
欠点はクエリキャッシュ用にメモリを少し消費することぐらい?かなぁ。

キャッシュの有効期限は,キャッシュしていたクエリで使っているテーブルが変更されるか,別のクエリの
方が良くつかわれていると,キャッシュから取り除かれることがあるぐらい。
よく使われているものはキャッシュに残るようなので,普通は問題ないかな。

MySQLサーバ設定ファイル /etc/my.cnf に追加。キャッシュ容量は16MBの設定をしてみる。

[mysqld]
の下あたりに

query_cache_size = 16M
query_cache_type=1

を追加し MySQLサーバを再起動
/etc/init.d/mysqld restart

参照:クエリキャッシュの動作仕様:http://dev.mysql.com/doc/refman/5.1/ja/query-cache-how.html

LINEで送る

CentOS 6のyum install などがエラーになった時の対策

2014/6/18 15時ごろ,CentOS 6の yum コマンド実行時にエラーになっていた。
原因は yumコマンド実行時に参照しにいくサーバ
http://mirrorlist.centos.org/ が故障(ダウン)しています。
これはミラーサイト切り替えのために必要なので、手動でダウンロードするミラーを指定する方法に変更で回避できます。

sudo vi /etc/yum.repos.d/CentOS-Base.repo

で赤字の部分を追加してください。場所が重要なので、同じになるようにして :wq で保存後 yum update を実行してみてください。

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

LINEで送る