Mac安装memcached,解决Unable to initialize module 问题

使用Homebrew安装 memcached 服务端

1
2
brew search memcached
brew install memcached

使用Homebrew安装 php-memcached 扩展

1
2
brew install memcached
brew install homebrew/php/php56-memcached --build-from-source

启动并检查扩展是否正差

1
2
memcached -d -m 24 -p 11211
php -i | grep memcached

排查错误

如果php -i | grep memcached 并没有返回 memcached 的信息,那么打开php的错误log,
检查是否有这个warning

1
2
3
Warning: PHP Startup: memcache: Unable to initialize module
Module compiled with build ID=API20131226,NTS
PHP compiled with build ID=API20131226,NTS,debug

解决办法很简单, 是需要再安装扩展的时候跟上 --build-from-source 参数即可。

1
2
3
4
5
6
#先卸载
brew remove php56-memcached
rm -rf /usr/local/etc/php/5.6/conf.d/ext-memcached.ini
#再安装
brew install homebrew/php/php56-memcached --build-from-source