memcached install instruction, good working

  • Filter
  • Time
  • Show
Clear All
new posts

  • how to memcached install instruction, good working

    Install Required Packages

     yum install libevent libevent-devel -y
    Memcached Service

    Head over to and grab the latest version. Configure and Compile Latest Version

     wget tar xvf memcached-1.4.5.tar.gz cd memcached-1.4.5 ./configure && make && make install
    Install Memcached Configuration

    Open /etc/memcached.conf with your favorite editor and paste in:
     #Memory a usar -m 16 # default port -p 11211 # user to run daemon nobody/apache/www-data -u nobody # only listen locally -l
    Install initiation scripts.

     touch /etc/init.d/memcached chmod +x /etc/init.d/memcached
    Open /etc/init.d/memcached with your favorite editor and paste in:
     #!/bin/bash # # memcached This shell script takes care of starting and stopping # standalone memcached. # # chkconfig: - 80 12 # description: memcached is a high-performance, distributed memory # object caching system, generic in nature, but # intended for use in speeding up dynamic web # applications by alleviating database load. # processname: memcached # config: /etc/memcached.conf # Source function library. . /etc/rc.d/init.d/functions PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/bin/memcached DAEMONBOOTSTRAP=/usr/local/bin/start-memcached DAEMONCONF=/etc/memcached.conf NAME=memcached DESC=memcached PIDFILE=/var/run/$ [ -x $DAEMON ] || exit 0 [ -x $DAEMONBOOTSTRAP ] || exit 0 RETVAL=0 start() { echo -n $"Starting $DESC: " daemon $DAEMONBOOTSTRAP $DAEMONCONF RETVAL=$? [ $RETVAL -eq 0 ] && touch $PIDFILE echo return $RETVAL } stop() { echo -n $"Shutting down $DESC: " killproc $NAME RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f $PIDFILE return $RETVAL } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart|reload) stop start RETVAL=$? ;; status) status $prog RETVAL=$? ;; *) echo $"Usage: $0 {start|stop|restart|status}" exit 1 esac exit $RETVAL
    Install Memcached monitoring script

    Create the start-memcached script

    touch /usr/local/bin/start-memcached chmod +x /usr/local/bin/start-memcached

    Open /usr/local/bin/start-memcached with your favorite editor and paste in:
    #!/usr/bin/perl -w
    # start-memcached  
     # 2003/2004 - Jay Bonci <> # This script handles the parsing of the /etc/memcached.conf file # and was originally created for the Debian distribution. # Anyone may use this little script under the same terms as # memcached itself. use strict; if ($> != 0 and $< != 0) { print STDERR "Only root wants to run start-memcached.\n"; exit; } my $etcfile = shift || "/etc/memcached.conf"; my $params = []; my $etchandle; # This script assumes that memcached is located at /usr/bin/memcached, and # that the pidfile is writable at /var/run/ my $memcached = "/usr/local/bin/memcached"; my $pidfile = "/var/run/"; # If we don't get a valid logfile parameter in the /etc/memcached.conf file, # we'll just throw away all of our in-daemon output. We need to re-tie it so # that non-bash shells will not hang on logout. Thanks to Michael Renner for # the tip my $fd_reopened = "/dev/null"; sub handle_logfile { my ($logfile) = @_; $fd_reopened = $logfile; } sub reopen_logfile { my ($logfile) = @_; open *STDERR, ">>$logfile"; open *STDOUT, ">>$logfile"; open *STDIN, ">>/dev/null"; $fd_reopened = $logfile; } # This is set up in place here to support other non -[a-z] directives my $conf_directives = { "logfile" => \&handle_logfile }; if (open $etchandle, $etcfile) { foreach my $line (<$etchandle>) { $line =~ s/\#.*//go; $line = join ' ', split ' ', $line; next unless $line; next if $line =~ /^\-[dh]/o; if ($line =~ /^[^\-]/o) { my ($directive, $arg) = $line =~ /^(.*?)\s+(.*)/; $conf_directives->{$directive}->($arg); next; } push @$params, $line; } } unshift @$params, "-u root" unless (grep $_ eq '-u', @$params); $params = join " ", @$params; if (-e $pidfile) { open PIDHANDLE, "$pidfile"; my $localpid = <PIDHANDLE>; close PIDHANDLE; chomp $localpid; if (-d "/proc/$localpid") { print STDERR "memcached is already running.\n"; exit; } else { `rm -f $localpid`; } } my $pid = fork(); if ($pid == 0) { reopen_logfile($fd_reopened); exec "$memcached $params"; exit(0); } elsif (open PIDHANDLE,">$pidfile") { print PIDHANDLE $pid; close PIDHANDLE; } else { print STDERR "Can't write pidfile to $pidfile.\n"; }
    Start the Memcached Daemon

    We will now start the daemon. (it is ok if "shutting down memcached" says fail.)
     /etc/init.d/memcached restart #Shutting down memcached: [ OK ] #Starting memcached: [ OK ]
    Make sure its running by:
     ps aux | grep memcached #nobody 5966 0.5 0.3 18248 16444 pts/0 S 13:55 0:00 /usr/local/bin/memcached -u root -m 16 -p 11211 -u nobody -l
    Set Memcached to run at startup:

    /sbin/chkconfig memcached on /sbin/chkconfig --list | grep memcached #memcached 0:off 1:off 2:on 3:on 4:on 5:on 6:off
    PHP Memcache Extension

    Download the latest stable version of memcache from Download and Install

     wget tar xvf memcache-2.2.5.tgz cd memcache-2.2.5 phpize ./configure && make && make install
    Update php.ini Configuration

    Create an empty file called test.php and place this in it:

    PHP Code:
        <? phpinfo(); ?>
    Determine what php.ini file is configured.
     php -f test.php | grep "Loaded Configuration File" #Loaded Configuration File => /usr/local/lib/php.ini

    Now open /usr/local/lib/php.ini with your favorite text editor and find the "Dynamic Extensions" section.
    Add this

    Now restart apache with:

    service httpd restart
    Check to make sure the extension is enabled

    Run the command:

     php -f test.php | grep "memcache support"
    This should return "enabled" if everything is good.
    memcache support => enabled
    If this command does not return any thing the memcache plugin did not load correctly.
    You can now delete test.php, your memcache installation should be functional.

  • #2
    if your not friendly with SSH, you can do rebuild current php & apache profile with memcached using the WHM 'EasyApache (Apache Update)' feature.


    • #3
      with easy apache you can install memcache but not memcached, you need to install memcache with easy apache if you want to use memcached.

      and here you can find how to use memcached with php: PHP: Memcache::add - Manual


      • #4


        • #5
          Originally posted by Azwan View Post
          keep your nonsense posts for yourself.