之前由于嫌弃 mac 下命令行搭建 php+mysql 环境太复杂,给自己挖了一个大坑

就是偷懒使用了名为 MAMP 的一键集成安装包

好用是好用,但是等你需要添加点模块和功能的时候就傻眼了

这几天在做一个股票监控和分析系统的时候,需要用到一个临时存储的数据库,作为 python 和 php 的数据交换

这些数据会频繁的修改和覆盖,以我对 mysql有限的了解,感觉用它不太合适

用文件存储吧,不会用,查询起来也麻烦,

请教了一下朋友,建议我用 memcache 或者 redis,属于内存型的数据库,瞬间感觉逼格高了很多

redis 的安装搭建耗费了我一个下午的时间,期间由于 mamp 的原因碰壁无数,填坑过后做个记录。

总结过程如下:

1、安装 redis 服务

下载并解压 http://download.redis.io/releases/redis-3.2.6.tar.gz

在终端下切换到你对应的目录

cd redis-3.2.
make

当然你也可以使用 brew 安装,更方便快捷

2、启动服务

src/redis-server

3、下载编译 php源码

大坑在这里,由于 mamp 默认安装的 php 不全,缺少一些.h 的头文件,这会导致后面安装 redis 的问题,所以需要下载php 源码进行编译

我用的是5.6.10这个版本,从 php 官网下载了5.6.30,版本号最后一位有点区别不影响,

放到applications/MAMP/bin/php/php5.6.10/include/这个目录(没有的话自己创建一个),并解压并把文件夹改名为 php

cd /Applications/MAMP/php/php5.6.10/include/php
./configure

4、下载 phpredis

git clone https://github.com/nicolasff/phpredis.git 

当然没有用 git 也没关系,可以自己去找官网下载,下载后解压也是一样用

5、编译

先切换目录

cd phpredis

然后开始编辑

/Applications/MAMP/bin/php/php5.6.10/bin/phpize
./configure --with-php-config=/Applications/MAMP/bin/php/php5.6.10/bin/php-config
make

请注意,上面的目录路径有可能跟我的不一样,请自行核对并调整,我在这里再次入坑

编译成功后会在phpredis/modules下生成redis.so,把它复制到applications/MAMP/bin/php/php5.6.10/lib/php/extensions/no-debug-non-zts-****这个目录

6、修改 php.ini

打开 mamp->file->edit template->php 5.6.10 php.ini

搜索 "extension="

在后面添加一行"extension=redis.so",保存后重启 mamp

7、检查组件是否安装成功

新建一个 php 文件,输入

<?php phpinfo(); ?>

保存后运行,查看是否有 redis 关键字

8、测试 redis

新建 php 文件,输入

<?php
$redis = new redis();
$redis->connect('127.0.0.1', );
$redis->set('Magic','http://shejishi.cc');
echo $redis->get('Magic');
?>

Mac系统 MAMP 集成环境下搭建 Redis的更多相关文章

  1. windows环境下搭建Redis集群

    转载请注明出处,原文章地址: https://www.cnblogs.com/tommy-huang/p/6240083.html Redis集群: 如果部署到多台电脑,就跟普通的集群一样:因为Red ...

  2. php Windows系统 wamp集成环境下redis的使用

    先说一下我的本地环境,使用的是wamp集成环境,(Apache 2.4.9.PHP 5.5.12.MySQL 5.6.17) windows下安装PHP扩展: 第一步:找到扩展文件(.dll),htt ...

  3. Windows环境下搭建Redis集群(Redis-x64-3.2.100)

    一 .前期准备Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二.安装配置redisredis下载地址 ht ...

  4. linux环境下搭建redis

    1. 官网下载安装包,然后解压,或者直接从github上pull下来. git clone https://github.com/antirez/redis.git 2. 确保linux环境上已安装g ...

  5. MAC MAMP集成环境安装 PHP 扩展

    MAC MAMP集成环境安装 PHP扩展 开发环境中,对于需要维护很多 WEB 站点,以及可能会使用到很多不同的 PHP 版本,集成环境比较好用,在MAC 上 MAMP 集成环境是比较好用的,但是在安 ...

  6. 记一次mac下使用mamp集成环境配置lumen项目自定义域名遇到的花样问题

    1.安装好mamp集成环境,自行百度. 2.从公司项目版本库里将项目克隆到本地. 好了,开始配置自定义域名来访问项目,以下是遇到的问题集锦... 1.web服务器使用的nginx,配置完域名访问报40 ...

  7. 在linux环境下安装redis并且搭建自己的redis集群

    此文档主要介绍在linux环境下安装redis并且搭建自己的redis集群 搭建环境: ubuntun 16.04 + redis-3.0.6 本文章分为三个部分:redis安装.搭建redis集群 ...

  8. MAC 环境下搭建HttpRunnerManager平台

    1 . mac pycharm 创建虚拟环境 https://blog.csdn.net/qq_39806105/article/details/96908584 2. mac 环境下搭建HttpRu ...

  9. iOS系统提供开发环境下命令行编译工具:xcodebuild

    iOS系统提供开发环境下命令行编译工具:xcodebuild[3] xcodebuild 在介绍xcodebuild之前,需要先弄清楚一些在XCode环境下的一些概念[4]: Workspace:简单 ...

随机推荐

  1. mfc CTabCtrl

    知识点: CTabCtrl常用属性 CTabCtrl类常用成员函数 CTabCtrl代码示例 一.CTabCtrl控件属性 Bottom:底部样式 Vertical:垂直样式 与Bottom结合使用, ...

  2. 在服务器运行一个jar包,不用时终止它

    1.打成jar包后,输入命令 nohup java -jar floodlight.jar >log.txt >& &//nohup 不生成 nohup.out的方法noh ...

  3. jmeter:正则表达式的使用

    Jmeter中正则关联的使用是可以提取动态变化数据进行传递:关联的方式和提取器有多种,这篇先讲解正则表达式怎么来关联(?) 在需要获取数据的http请求上添加后置处理器 比如提取百度title值: 正 ...

  4. java算法面试题

    前言:线上面试题与大家分享,并记录求职道路的酸甜苦辣,特此留念. 李雷和韩梅梅坐前后排,上课想说话怕被老师发现,所以改为传小纸条.为了不被老师发现他们纸条上说的是啥,他们约定了如下方法传递信息:将26 ...

  5. http-cache浏览器缓存

    摘至知乎 首先得明确 http 缓存的好处 减少了冗余的数据传输,减少网费 减少服务器端的压力 Web 缓存能够减少延迟与网络阻塞,进而减少显示某个资源所用的时间 加快客户端加载网页的速度 常见 ht ...

  6. npm安装时一些错误

    1. npm install 提示no such file or directory 缺少package.json 首先初始化, npm init -f 然后安装依赖 npm install form ...

  7. 最近在研究google的angularjs

    最近在研究google的angularjs,先做个简单的例子来试试. <!doctype html> <html lang="en" ng-app="m ...

  8. MySQL——约束(constraint)详解

    该博客说说关于数据库中一个重要的知识点——约束 一.什么是约束约束英文:constraint 约束实际上就是表中数据的限制条件 二.约束作用表在设计的时候加入约束的目的就是为了保证表中的记录完整和有效 ...

  9. Scrum Meeting day 1

    第一次会议,在这一次的会议中,明确了任务目标,并将任务进行合理分配,并且规划了整个任务的初步计划. No_00:分工情况 姓名 分工   崔强      PM 杜正远 主力工程师 王嘉豪 主力工程师 ...

  10. Alpha冲刺——事后诸葛亮

    组长博客 作业博客 项目Postmortem 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件针对的是福大学子来到食堂会犹豫不决无法决定吃什么 ...