之前由于嫌弃 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. ECC检验与纠错

    引入ECC ECC:Error Checking and Correction,是一种差错检测和修正的算法. NAND闪存在生产和使用中都会有坏块产生,BBM就是坏块的管理机制.而生产坏块已经无法避免 ...

  2. 这可能是最详细的Python文件操作

    删除 # ==================删除==================# 只能删除文件,若为目录则报错# 若文件正在使用,Windows下会直接报错,Linux下会在目录表中删除记录, ...

  3. 个人新站 【EXP技术分享博客】 落成~ 全新的技术资源~ 欢迎莅临~

    对的,我筹备了大半年的个站技术网站正式开张了~ EXP技术分享博客: http://exp-blog.com CSDN上面大部分文章已经迁移过去了,以后也会更多地在新站点更新~ 为了庆祝新站开张,近期 ...

  4. H5游戏接微信小游戏的支付,满满的都是坑!

    h5小游戏接微信的支付,简直是在为难我胖虎,说多了都是泪. 准备工作: 准备工作一定要做好,不然很容易出错.首先是session_key这个字段,这个session_key是登录的时候需要用到的,根据 ...

  5. 服装盘点机PDA在服装行业颜色尺码仓库条码高效管理应用

    服装行业的商品管理的特点是需要管理颜色和尺码 具体逻辑就是: 什么商品,什么颜色,什么尺码,入库多少个? 什么商品,什么颜色,什么尺码,出库多少个? 什么商品,什么颜色,什么尺码,还有库存多少个? 如 ...

  6. 普通程序员看k8s的账户管理

    一.知识准备 ● 账户管理分为:userAccount与serviceAccount ● userAccount:通常是给人设计使用的,并且userAccount不在k8s集群内管理 ● servic ...

  7. LAXCUS大数据操作系统节点挂掉后的处理

    昨天回公司加班跑一个LAXCUS大数据应用,JVM直接挂了,没有留下任何异常信息,查看代码,也没有内存泄漏的问题.百思不得姐,只好去求教LAXCUS大数据操作系统的技术客服,客服查看了故障节点配置.日 ...

  8. 学习 google file system 心得体会

    Google File system文件系统,是在特别便宜的普通硬件设备上运行,它是一个面向大规模数据密集型运用的.可伸缩的分布式文件系统. 与传统文件相比,它认为组件失效是很平常的事件,因为GFS包 ...

  9. sql 更新多条记录

    转载:https://www.cnblogs.com/hfultrastrong/p/6905057.html 如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?本文以一个示例向 ...

  10. JAVA面对对象(二)——继承、方法的覆写

    1.继承就是基于已存在的类构造一个新类,继承已存在的类就能复用类的方法和属性,并且能够添加新的方法和属性.也就是子类和父类 2.一个父类可以拥有多个子类,一个子类只允许有一个父类 3.用extends ...