之前由於嫌棄 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.6 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', 6379); $redis->set('Magic','http://shejishi.cc'); echo $redis->get('Magic'); ?>