memcachedのインストール

[参考記事] memcachedとは
[参考記事] Windowsにmemcachedをインストールする方法
[参考記事] PHPでmemcachedを使用する(memcacheライブラリ)
[参考記事] Rubyでmemcachedを使用する(memcache-client)
[参考記事] Perlでmemcachedを使用する(Cache::Memcachedモジュール)

公式サイト
libevent公式サイト

Linuxの場合、memcachedのインストールにはlibeventが必要になります。

libeventのインストール

yumでインストール

yum -y install libevent
yum -y install libevent-devel

ソースからインストール

libevent公式サイトよりファイルのダウンロードURLを調べます。

wget http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz
tar zxvf libevent-1.4.13-stable.tar.gz -C /usr/local/src
cd /usr/local/src/libevent-1.4.13-stable/
./configure
make
make install

libeventが入っていないと、memcachedのインストール時に次のエラーが出ます。

checking for libevent directory... configure: error: libevent is required.  You can get it from http://www.monkey.org/~provos/libevent/

memcachedのインストール

yumでインストール

yum -y install memcached

ソースからインストール

公式サイトよりファイルのダウンロードURLを調べます。

wget http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz
tar zxvf memcached-1.4.4.tar.gz -C /usr/local/src
cd /usr/local/src/memcached-1.4.4/
./configure
make
make install

memcachedの起動

memcachedはroot権限での実行はできません。
root以外のユーザにsuしてから起動します。

memcached -d -m 64 -p 11211

またroot権限で、実行ユーザ権限を指定して起動することもできます。

memcached -d -m 64 -p 11211 -u ユーザ名

root権限で実行ユーザ権限を指定しなかった場合は次のようなエラーが出ます。

can't run as root without the -u switch

次のようなエラーが出た場合にはlibeventの共有ライブラリにパスが通っていません。

memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory

次のコマンドで環境変数のパスを通します。

export LD_LIBRARY_PATH=/usr/local/lib/

起動オプション

-d

デーモンモードでmemcachedを起動する。

-m 【キャッシュメモリ容量】

キャッシュメモリ容量を指定する。デフォルトは64(単位はMB)。

-l 【待ち受けネットワークインタフェース】

待ち受けネットワークインタフェースを指定する。デフォルトはINDRR_ANY。127.0.0.1などを指定する。

-p 【TCP待ち受けポート】

TCP待ち受けポート番号を指定する。デフォルトは11211。

自動起動

initスクリプトを/etc/rc.d/init.d/memcachedに作成する。

#!/bin/bash
#
# memcached
#
# chkconfig: 345 80 20
# description: memcached

TARGET=memcached
DST_BIN=/usr/local/bin/${TARGET}
EXEC_USER=memcached
CACHE_SIZE=64

start()
{
  echo -n "Starting ${TARGET}: "
  ${DST_BIN} -d -u ${EXEC_USER} -m ${CACHE_SIZE}
  echo
}

stop()
{
  echo -n "Shutting down ${TARGET}: "
  killall ${TARGET}
  echo
}

case "$1" in
  start)
    start
    ;;

  stop)
    stop
    ;;

  restart)
    stop
    start
    ;;

  *)
    echo "Usage: `basename $0` {start|stop|restart}" >&2
    exit 1
esac

exit 0

サービスの起動確認をします。

service memcached start

サービスを登録します。

chkconfig --add memcached

サービスが登録されているか確認します。

chkconfig --list memcached
memcached  0:off  1:off  2:off  3:on  4:on  5:on  6:off

関連記事

スポンサーリンク

フロートの左右マージンが指定値より大きくなる

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る