Linux系統安裝memcached 首先要先安裝libevent庫。
centos 下執行
yum install libevent libevent-devel
查看memcached 是否已經安裝
which memcached //如果已經安裝 輸出類似“/usr/bin/memcached”
安裝memcached 執行:
yum install memcached
安裝php memcached 擴展 php-pecl-memcached
yum -y install php72w-pecl-memcached //我的PHP版本是php7.2的,如果版本不對會報錯誤:php72w-common conflicts with php-common-5.4.16-45.el7.x86_64錯誤
查看是否安裝php-pecl-memcached 擴展
php -m | grep memcache // 安裝成功會輸出memcached, 否則沒有輸
設置開機啟動
sudo systemctl enable memcached
啟動memcached
1
|
sudo systemctl start memcached
|
啟動memcached 服務,在終端輸入
1
|
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 11211 -c 256 -P /tmp/memcached.pid
|
查看memcached 監聽情況
1
|
lsof -i tcp:11211 <br>輸出<br>COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME<br>memcached 5821 vagrant 26u IPv6 42350 0t0 TCP localhost:memcache (LISTEN)<br>memcached 5821 vagrant 27u IPv4 42351 0t0 TCP php-site:memcache (LISTEN)
|
說明監聽11211端口成功
會在/usr/lib64/php/modules/ 下生成memcached.so
在php.ini中開啟 extension=/usr/lib64/php/modules/memcached.so
1
|
[Memcache]<br>extension=/usr/lib64/php/modules/memcached.so
|
在php.ini文件中添加memcache擴展文件后,在xshell中執行會報錯,但不影響web瀏覽器端效果,
然后重啟php-fpm
1
|
sudo systemctl restart php-fpm
|
phpinfo()中能夠看到memcached
測試:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?php
$mem =
new
Memcached;
$mem->connect(
"127.0.0.1"
, 11211);
$mem->
set
(
'key'
,
'hello test!'
, 0, 60);
$val = $mem->
get
(
'key'
);
echo $val;
?>
|
上面測試代碼有問題,我的測試代碼:
<?php $mem = new Memcached; $mem->addServer("127.0.0.1", 11211); $mem->set('key', 'hello test!', 10); $val = $mem->get('key'); echo $val;