How to install/uninstall memcached PHP extension for Plesk PHP handlers

Follow

Comments

61 comments

  • Avatar
    Gabriel De León (Edited )


    -1
    Comment actions Permalink
  • Avatar
    Gabriel De León

    Good morning,

    Is it possible to install memcached for the php 7.0.22 OS vendor?

    This article is fine, but it does not say how to install the module for your PHP 7.0.22 and I would need it.

    I have reviewed information and it is possible to compile it manually but I do not know if this will cause problems with your PLESK system.

    Can you confirm these points? Thank you very much.

    0
    Comment actions Permalink
  • Avatar
    Bulat Tsydenov

    @Gabriel De León, Hi!
    The article has been modified. Please check the instructions.

    0
    Comment actions Permalink
  • Avatar
    ClaHost

    Hi Bulat, thank you very much!

    0
    Comment actions Permalink
  • Avatar
    Florian Thiel

    tried to follow the instruction for PHP 7.1 with Plesk 17.5.3 Update #38 on Ubuntu 14.04.5 but it stops with

    configure: error: no, libmemcached sasl support is not enabled. Run configure with --disable-memcached-sasl to disable this check.

    Tried with this flag but doesn't help. Any ideas?

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    @Florian Thiel

    Hello!
    The libmemcached package for Ubuntu 14.04 does not support SASL authentication.
    Which error is displayed with the option -disable-memcached-sasl?

    0
    Comment actions Permalink
  • Avatar
    Florian Thiel

    @Ivan Postnikov

    the same error, it seems like the option is not detected. Tried it with -disable-memcached-sasl and --disable-memcached-sasl

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    @Florian Thiel

    Hello!

    The issue requires mo detailed investigation, consider contacting Plesk Support.

    Also, consider contacting Ubuntu Support, as they are professionals in their product.

    0
    Comment actions Permalink
  • Avatar
    Peter Westerlund

    Have installed it (on php 5.4 for centos) but can't start the server. Can't find the folder where it's installed. Where is it?

    0
    Comment actions Permalink
  • Avatar
    Robert Asilbekov


    @Peter Westerlund

    The article is about installing php extension for memcached,  it is supposed that memcached server already installed. I think you just need to install memcached daemon.

     

    # yum install memcached

    or

    # apt-get install memcached

    You may also look at the blog post:  

    https://www.plesk.com/blog/product-technology/reduce-server-load-with-memcached/

    0
    Comment actions Permalink
  • Avatar
    Miha Gregorš

    After regular updates of php 5.6 I noticed that memcached stop working. I got error:

    PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/plesk/php/5.6/lib64/php/modules/memcache.so' - /opt/plesk/php/5.6/lib64/php/modules/memcache.so: cannot open shared object file: No such file or directory in Unknown on line 0

    It looks like update of package remove my memcached :)

    Has anyone experienced similarly problem?

    0
    Comment actions Permalink
  • Avatar
    Alexandr Tumanov

    @Miha, there is a possibility that package update removed the whole PHP folder taking the memcached. Please vote for adding it to Plesk packages https://plesk.uservoice.com/forums/184549-feature-suggestions/suggestions/6594919-memcached-support 

    0
    Comment actions Permalink
  • Avatar
    Kevin

    Package "plesk-php70-dev" or  "plesk-php71-dev" or  "plesk-php72-dev" not available for Debian 9 "stretch". Any chance on adding them?

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    @Kevin, make sure you do not have custom repositories on the server because the issue was not reproduced on a test server:

    # lsb_release -a

    No LSB modules are available.
    Distributor ID: Debian
    Description: Debian GNU/Linux 9.4 (stretch)
    Release: 9.4
    Codename: stretch
    # apt-get install plesk-php71-dev
    ...
    # dpkg -l | grep plesk-php71-dev
    ii plesk-php71-dev 7.1.16-debian9.0.18033013

    0
    Comment actions Permalink
  • Avatar
    Pascal Devif

    Hello,

    Thanks for this tutorial.
    On debian 9, how to configure Memcached parameters (like memory) ?
    I found nothing in /etc

     

    0
    Comment actions Permalink
  • Avatar
    Pavel Mikhaylov

    Hello Pascal,

    Questions about configuration of Memcached is best to address to the developers/support of the package: https://memcached.org/

    0
    Comment actions Permalink
  • Avatar
    Graham Jones

    I have followed the instructions perfectly, but memcached does not install.

    I get the following error:

     

    sh: 1: phpize: not found ERROR: `phpize' failed 

     

    I am using Debian 8.11 with Plesk 17.8.11

     

    Any ideas?

     

     

    0
    Comment actions Permalink
  • Avatar
    William (Edited )

    Hi

     Centos6 /php5.6 server- was trying to install memcached extension   to be able to run WP caching

    Was following the above  instructions until i got to  # /opt/plesk/php/5.6/bin/pecl install memcached-2.2.0

    which yielded -bash: /opt/plesk/php/5.6/bin/pecl: No such file or directory

    only pecl i could find was /usr/share/psa-pear/pear/pecl

    I could yum install php-pear..  ? which would then  give  me /usr/bin/pecl   as well..

    Either way i am  nervous about conflicting versions and  breaking plesk and unsure how to proceed..

    Suggestions?

     

     

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    Hi @Graham, it seems that you have skipped the preparation step to install required packets:

    # apt install autoconf automake gcc libmemcached-dev libhashkit-dev pkg-config plesk-php56-dev plesk-php70-dev zlib1g-dev

    0
    Comment actions Permalink
  • Avatar
    Graham Jones

     

    Many thanks. Whoops...! That has now solved it.

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    Hi @Graham, glad to hear that this helped =)

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    Hello @William,

    As I have checked on the test server with CentOS 6, when PHP 5.6 is installed, this file exists on the file system.

    Please, make sure that PHP 5.6 is installed in Plesk. If it is installed, try reinstalling it, it should resolve the issue.

    0
    Comment actions Permalink
  • Avatar
    Norbert (Edited )

    Hello i have a Problem.

    I followed the tutorial but i can't finish it.

    When i run the command: /opt/plesk/php/7.0/bin/pecl install memcached i got the following Error: -bash: /opt/plesk/php/7.0/bin/pecl: No such file or directory

    I showed in this Directory and there is no pecl file ?

    Why dis happend and how can i fix it ?

    Thanks in advance!

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    Hi @Norbert, it seems that you have skipped the preparation step to install required packets:

    # apt install autoconf automake gcc libmemcached-dev libhashkit-dev pkg-config plesk-php56-dev plesk-php70-dev zlib1g-dev

    0
    Comment actions Permalink
  • Avatar
    Remy Vaartjes

    On Plesk Onyx Web Pro Edition 17.5.3 + CentOS 7 I got this error:

    /opt/plesk/php/7.1/bin/pecl install memcached

    shtool at '/tmp/memcached/build/shtool' does not exist or is not executable.
    Make sure that the file exists and is executable and then rerun this script.
    ERROR: `phpize' failed

    Was solved by doing this first:
    mount -o remount,exec /tmp

    After that it installed properly with:
    /opt/plesk/php/7.1/bin/pecl install memcached

    See: https://support.plesk.com/hc/en-us/articles/115001406994-Error-while-using-pecl-install-shtool-at-tmp-does-not-exist-or-is-not-executable

    0
    Comment actions Permalink
  • Avatar
    Ivan Postnikov

    Hello @Remy,

    Glad to hear that the solution helped!

    0
    Comment actions Permalink
  • Avatar
    Nick Plekhov

    Hello @Lobbe Maxime
    Thank you for bringing our attention to this.

    The article was outdated - there was no plesk-php73-devel in the preparation stage for RHEL-based OS.
    I have updated the article.

    0
    Comment actions Permalink
  • Avatar
    Enzonius

    On Plesk 17.8.11 Centos 6.10 I can't install memcached for php 7.3

    root@XXXXXXX [/etc/]# /opt/plesk/php/7.3/bin/pecl install memcached
    WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
    pecl/memcached can optionally use PHP extension "igbinary" (version >= 2.0)
    pecl/memcached can optionally use PHP extension "msgpack" (version >= 2.0)
    downloading memcached-3.1.3.tgz ...
    Starting to download memcached-3.1.3.tgz (82,673 bytes)
    ....................done: 82,673 bytes

    Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in PEAR/PackageFile/v2/Validator.php on line 1933
    PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /opt/plesk/php/7.3/share/pear/PEAR/PackageFile/v2/Validator.php on line 1933
    15 source files, building
    running: phpize
    Configuring for:
    PHP Api Version: 20180731
    Zend Module Api No: 20180731
    Zend Extension Api No: 320180731
    configure.ac:3: error: Autoconf version 2.68 or higher is required
    configure.ac:3: the top level
    autom4te: /usr/bin/m4 failed with exit status: 63
    ERROR: `phpize' failed

    Current autoconf version:

    root@65dl-plmh[/etc]# autoconf --version
    autoconf (GNU Autoconf) 2.63
    Copyright (C) 2008 Free Software Foundation, Inc.
    License GPLv2+: GNU GPL version 2 or later
    <http://gnu.org/licenses/old-licenses/gpl-2.0.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.

    Written by David J. MacKenzie and Akim Demaille.

     

    I've tried to install autoconf 2.69 with this:

    root@XXXXXXX[/etc]# curl -L -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
    tar zxf autoconf-2.69.tar.gz
    cd autoconf-2.69
    yum install -y openssl-devel
    ./configure
    make && make install

    But Plesk will only read 2.63. Is there a way to get Plesk to recognize the new installation? 

     

     

    0
    Comment actions Permalink
  • Avatar
    Alexandr Redikultsev

    Hi @Enzonius,

    I was able to solve it by creating a symlink /usr/bin/autoconf -> /usr/bin/autoconf268 like this:

    # mv /usr/bin/autoconf{,.bkp}
    # ln -s /usr/bin/autoconf268 /usr/bin/autoconf

    Then I was able to perform the installation with `/opt/plesk/php/7.3/bin/pecl install memcached`

    0
    Comment actions Permalink
  • Avatar
    Lethalmiko

    All these instructions don't work on Ubuntu 18.04.2 LTS‬ with Plesk Onyx 17.8.11 Update #48. I am running nginx as a full front-line web server with FPM, not as a proxy. PHP version 7.2.15 supplied by vendor. The phpinfo does not show  memcached support. I verified that memcached is working. It is memcached version 1.5.6.

    I did two methods and they both failed!!! I uninstalled everything in between the two methods. I am stuck and don't know what to do.

    METHOD 1:
    # apt autoremove
    # apt install memcached
    # apt install autoconf automake gcc libmemcached-dev libhashkit-dev pkg-config plesk-php72-dev zlib1g-dev libsasl2-dev build-essential php7.2-dev
    # /opt/plesk/php/7.2/bin/pecl install memcached
    # echo "extension=memcached.so" > /opt/plesk/php/7.2/etc/php.d/memcached.ini
    # plesk bin php_handler --reread
    # /etc/init.d/php7.2-fpm restart && /etc/init.d/apache2 restart && /etc/init.d/nginx restart

    METHOD 2:
    # apt autoremove
    # apt install memcached
    # apt install autoconf automake gcc libmemcached-dev libhashkit-dev pkg-config plesk-php72-dev zlib1g-dev libsasl2-dev build-essential php7.2-dev

    [Edit pecl file]
    # nano /usr/share/psa-pear/pear/pecl
    ---
    Removed -n flag from the last line of /usr/share/psa-pear/pear/pecl utility. It is now:

    exec $PHP -C -q $INCARG -d date.timezone=UTC -d output_buffering=1 -d variables_order=EGPCS -d safe_mode=0 -d register_argc_argv="On" $INCDIR/peclcmd.php "$@"
    ---

    # /opt/plesk/php/7.2/bin/pecl install memcached
    # echo "extension=memcached.so" > /etc/php/7.2/cli/conf.d/20-memcached.ini
    # plesk bin php_handler --reread
    # /etc/init.d/php7.2-fpm restart && /etc/init.d/apache2 restart && /etc/init.d/nginx restart

    0
    Comment actions Permalink

Please sign in to leave a comment.

Have more questions? Submit a request