Linux下编译安装PHP扩展memcached
[安装 libevent]
$ tar zxvf libevent-2.0.20-stable.tar.gz
$ cd libevent-2.0.20-stable/$ ./configure --prefix=/usr/local/libevent
$ make && make install
注:Mac下可能会出错:bufferevent_openssl.c:60:10: fatal error: 'openssl/bio.h' file not found,解决方案:
$ brew install openssl
$ brew link openssl --force
$ cp -R /usr/local/Cellar/openssl/1.0.2h_1/include/openssl ~/software/libevent-2.0.22-stable
[安装memcached服务端]
$ tar zxvf memcached-1.4.39.tar.gz
$ ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
$ make && make install
[启动]
$ cd /usr/local/memcached
$ ./memcached -u root –d #启动memcached
$ ps -ef |grep memcached #查看memcached运行状态
【备注】设置memcached开机启动,vim打开/etc/rc.local在最后面写入:
/usr/local/memcached/bin/memcached -u root -d
[连接]
$telnet 127.0.0.1 11211stats --查看状态
version --查看版本
set user 1 3000 10 --添加数据
get user --获取数据
delete user --删除数据
flush_all --清空所有
【安装php-memcached扩展】
[安装 libmemcached]
$ tar zxvf libmemcached-1.0.18.tar.gz
$ cd libmemcached-1.0.18/$ ./configure --prefix=/usr/local/libmemcached --with-memcached --enable-sasl
$ make && make install
注:Mac下可能会出错:error: use of undeclared identifier 'ntohll',解决方案:
(1)编辑libmemcached/byteorder.cc文件
在 #include "libmemcached/byteorder.h" 下面增加以下内容:
#ifdef HAVE_SYS_TYPES_H
#include #endif (2)、编辑clients/memflush.cc文件
将两处 if (opt_servers == false)
替换成 if (opt_servers == NULL)
[安装 php-memcached扩展]
[https://github.com/php-memcached-dev/php-memcached]
$ unzip php-memcached-php7.zip
$ cd php-memcached-php7/
$ /usr/local/php/bin/phpize
$ ./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --enable-memcached-sasl
$ make && make install
安装完成后,在php.ini(/usr/local/php/php.ini) 后面添加 extension=memcached.so
[PHP操作memcached]
addServer('127.0.0.1', 11211) or die ("Could not connect"); //连接Memcached服务器
$mem->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
$val = $mem->get('key'); //从内存中取出key的值
echo $val;
?>
Linux下编译安装PHP扩展memcached的更多相关文章
- Linux下编译安装PHP扩展redis
[Redis] 先安装tcl: yum install tcl [下载和安装] 官网http://redis.io/ 下载最新的稳定版本,这里是3.2.0, 然后解压文件并进入. $ sudo ta ...
- linux下编译安装pthreads扩展
这里讲的是如何编译安装pthreads,以后编译安装其他PHP扩展可以参考此方法. 下载pthreads源码:http://pecl.php.net/package/pthreads 首先确定安装的p ...
- LINUX下编译安装PHP各种报错大集合
本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...
- linux下编译安装vim7.4并安装clang_complete插件
linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...
- linux下编译安装curl
linux下编译安装curl 1.下载curl git clone https://github.com/curl/curl.git 2.在curl目录下生成configure文件 ./buldcon ...
- linux下编译安装boost库
linux下编译安装boost库 linux下编译安装boost库 1.下载并解压boost 1.58 源代码 下载 解压 2.运行bootstrap.sh 3.使用b2进行构建 构建成功的提示 4. ...
- Linux下编译安装Apache Http Server
Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...
- Linux下编译安装qemu和libvirt
目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 2 安装libvirt 2.1 libvirt介绍 2.2 下载libvirt 2.3 编译安装 3 ...
- linux下编译安装nginx
1.首先下载稳定版nginx1.10.2 使用wget命令下载 wget http://nginx.org/download/nginx-1.10.2.tar.gz 2.然后解压 tar -zxvf ...
随机推荐
- 【MFC】OnInitDialog
OnInitDialog OnInitDialog是MFC的面向对象编程语言的类CDialog中的初始化成员函数名(虚函数).相当于对对话框进行初始化处理. 属 性 初始化成员函数名 处 ...
- 安装SQL Server 2008数据库(带完整图解)
方法/步骤 1 双击sql server 2008的.exe安装文件,进入[SQL Server 安装中心]. 2 点击界面左侧的[安装],然后点击右侧的[全新SQL Server 独立安装或向现 ...
- fildder教程
转载地址:写得很不错的fildder教程 http://kb.cnblogs.com/page/130367/ Fiddler的基本介绍 Fiddler的官方网站: www.fiddler2.c ...
- 九度 1481 Is It A Tree?
题目 给定一个有向图, 判断其是否是一棵树 要求 (1) 除了根节点外, 每个节点只有唯一的前驱 (2) 从根节点出发, 到任何节点有且只有一条路径 思路 1. 要求(1) 可以通过记录每个节点的前驱 ...
- POJ 1742 Coins(多重背包, 单调队列)
Description People in Silverland use coins.They have coins of value A1,A2,A3...An Silverland dollar. ...
- 进程 vs. 线程(python的协程)(转廖雪峰老师python教程)
我们介绍了多进程和多线程,这是实现多任务最常用的两种方式.现在,我们来讨论一下这两种方式的优缺点. 首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Work ...
- hex()
hex() 用于将十进制数字转换成十六进制 In [1]: hex(10) Out[1]: '0xa' In [2]: hex(11) Out[2]: '0xb'
- js里面声明变量时候的注意事项
变量名可以是中文,只能有下划线,$,数字和字母组成,开头只能以下划线(不建议使用)和字母开头.
- Android 使用ProgressBar实现进度条
ProgressBar简介ProgressBar是进度条组件,通常用于向用户展示某个耗时操作完成的进度,而不让用户感觉是程序失去了响应,从而更好地提升用户界面的友好型. 课程目标(1)制定Progre ...
- final,finally,finalize的区别
1.final用于声明属性.方法和类,分别表示属性不可变.方法不可覆盖,类不可继承: 2.finally是异常处理语句结构的一部分,表示总是执行代码块: 3.finalize是Object类的一个方法 ...