linux centos7 基於LNMP環境安裝redis


我的LNPM 環境MySQL 5.6.34  php是5.5.38  nginx1.10.1 redis 3.2.6穩定版

要支持 php就要安裝phpredis 下載地址https://pecl.php.net/package/redis

phpredis 安裝步驟 

1、解壓安裝並進入Redis目錄

[root@Redis ~]# tar xzf redis-2.2.8.tgz
[root@Redis ~]# cd redis-2.2.8

2、在Redis文件夾下,生成configure配置文件

[root@Redis redis-2.2.8]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20090626
Zend Module Api No: 20090626
Zend Extension Api No: 220090626
記得sudo 切換root用戶
[root@Redis redis-2.2.8]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@Redis redis-2.2.8]# make
[root@Redis redis-2.2.8]# make install

3、在PHP配置文件php.ini里面加載Redis擴展

extension=redis.so

重啟php-fpm

4、查看phpinfo,Redis擴展是否加載

<?php
phpinfo();
?>

 查看版本

 

  

redis安裝步驟

下載安裝包目錄 https://redis.io/download

1.解壓編譯

1、tar -xf redis-stable.tar.gz 

cd redis-stable

make

 yum install gcc-c++ tcl

make test

2、安裝常遇問題

前面3步應該沒有問題,主要的問題是執行make的時候,出現了異常。

異常一:

make[2]: cc: Command not found

異常原因:沒有安裝gcc

解決方案:yum install gcc-c++

 

異常二:

zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory

異常原因:一些編譯依賴或原來編譯遺留出現的問題

解決方案:make distclean。清理一下,然后再make。

 

在make成功以后,需要make test。在make test出現異常。

異常一:

couldn't execute "tclsh8.5": no such file or directory

異常原因:沒有安裝tcl

解決方案:yum install -y tcl。

 

 

在make成功以后,會在src目錄下多出一些可執行文件:redis-server,redis-cli等等。

方便期間用cp命令復制到usr目錄下運行。

cp redis-server /usr/local/bin/

cp redis-cli /usr/local/bin/

然后新建目錄,存放配置文件

mkdir /etc/redis

mkdir /var/redis

mkdir /var/redis/log

mkdir /var/redis/run

mkdir /var/redis/6379

 

在redis解壓根目錄中找到配置文件模板,復制到如下位置。

cp redis.conf /etc/redis/6379.conf

通過vi命令修改

daemonize yes

pidfile /var/redis/run/redis_6379.pid

logfile /var/redis/log/redis_6379.log

dir /var/redis/6379

最后運行redis:

/usr/local/bin/redis-server /etc/redis/6379.conf

 

 使用Redis啟動腳本設置開機自啟動

啟動腳本

推薦在生產環境中使用啟動腳本方式啟動redis服務。啟動腳本 redis_init_script 位於位於Redis的 /utils/ 目錄下。

復制代碼
#大致瀏覽下該啟動腳本,發現redis習慣性用監聽的端口名作為配置文件等命名,我們后面也遵循這個約定。
#redis服務器監聽的端口
REDISPORT=6379
#服務端所處位置,在make install后默認存放與`/usr/local/bin/redis-server`,如果未make install則需要修改該路徑,下同。
EXEC=/usr/local/bin/redis-server
#客戶端位置
CLIEXEC=/usr/local/bin/redis-cli
#Redis的PID文件位置 修改部分與前面對應
PIDFILE=/var/redis/run/redis_${REDISPORT}.pid
#配置文件位置,需要修改
CONF="/etc/redis/${REDISPORT}.conf"
復制代碼

 

配置環境

 1. 將啟動腳本復制到/etc/init.d目錄下,本例將啟動腳本命名為redisd(通常都以d結尾表示是后台自啟動服務)。

cp redis_init_script /etc/init.d/redisd

 2.  設置為開機自啟動

此處直接配置開啟自啟動 chkconfig redisd on 將報錯誤: service redisd does not support chkconfig 

#!/bin/sh
# chkconfig: 2345 90 10 # 加上這句話,且注釋掉 # description: Redis is a persistent key-value database #

 再設置即可成功。

#設置為開機自啟動服務器
chkconfig redisd on
#打開服務
service redisd start
#關閉服務
service redisd stop

 測試phpredis 是否好用

<?php
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$redis->auth(123456);
$redis->set('foo','bar');
echo $redis->get('foo');


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM