CentOS 7.2 安装 Redis 和 PHP 配置 Redis 扩展

摘要:centos 7.2 安装 redis 和 php 配置 redis 扩展。

安装 redis 服务

1、下载 reids 后解压并且重命名

[root@host ~]# cd /usr/local/
[root@host local]# wget http://download.redis.io/releases/redis-5.0.3.tar.gz
[root@host local]# tar zxf redis-5.0.3.tar.gz
[root@host local]# mv redis-5.0.3 redis
[root@host local]# rm -rf redis-5.0.3.tar.gz

我是将这里下载的redis是稳定版本的,解压后为了方便将 redis-5.0.3 重名为 redis。

redis 下载地址:https://redis.io/download


2、进入redis文件夹

[root@host local]# cd redis/
[root@host redis]# ll
total 248
-rw-rw-r--  1 root root 92434 Dec 12 07:25 00-RELEASENOTES
-rw-rw-r--  1 root root    53 Dec 12 07:25 BUGS
-rw-rw-r--  1 root root  1894 Dec 12 07:25 CONTRIBUTING
-rw-rw-r--  1 root root  1487 Dec 12 07:25 COPYING
drwxrwxr-x  6 root root  4096 Dec 12 07:25 deps
-rw-rw-r--  1 root root    11 Dec 12 07:25 INSTALL
-rw-rw-r--  1 root root   151 Dec 12 07:25 Makefile
-rw-rw-r--  1 root root  4223 Dec 12 07:25 MANIFESTO
-rw-rw-r--  1 root root 20555 Dec 12 07:25 README.md
-rw-rw-r--  1 root root 62155 Dec 12 07:25 redis.conf
-rwxrwxr-x  1 root root   275 Dec 12 07:25 runtest
-rwxrwxr-x  1 root root   280 Dec 12 07:25 runtest-cluster
-rwxrwxr-x  1 root root   281 Dec 12 07:25 runtest-sentinel
-rw-rw-r--  1 root root  9710 Dec 12 07:25 sentinel.conf
drwxrwxr-x  3 root root  4096 Dec 12 07:25 src
drwxrwxr-x 10 root root  4096 Dec 12 07:25 tests
drwxrwxr-x  8 root root  4096 Dec 12 07:25 utils

编译好的 makefile 文件已经存在,直接在源码目录 make && make install 安装即可。


3、make && make isntall 

[root@host redis]# make
[root@host redis]# make install
.
.
.
cd src && make install
make[1]: Entering directory `/usr/local/redis/src'
    CC Makefile.dep
make[1]: Leaving directory `/usr/local/redis/src'
make[1]: Entering directory `/usr/local/redis/src'

Hint: It's a good idea to run 'make test' ;)

    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
make[1]: Leaving directory `/usr/local/redis/src'

make 完成后,应该进入 src 文件中执行 make install 命令,不过没有关系,redis 已经自动帮我们 cd src && make install 了。


4、迁移 redis 配置和执行文件

[root@host redis]# mkdir conf bin
[root@host redis]# cp redis.conf conf/redis.conf
[root@host redis]# cd src/
[root@host src]# cp redis-benchmark redis-cli redis-server redis-check-aof redis-check-rdb ../bin

安装完成后,在 redis 根目录中,redis 的配置文件是 redis.conf。然后进入 src 目录中,这些都是 redis 的可执行文件,为了方便管理我们将 redis 相关资源放到一个文件夹中统一管理。

redis-server:redis 服务器的 daemon 启动程序。

redis-cli:redis 命令行操作工具。当然,你也可以用 telnet 根据其纯文本协议来操作。

redis-benchmark:redis 性能测试工具,测试 redis 在你的系统及你的配置下的读写性能。

redis-check-aof:修复 aof 文件

redis-check-rdb:修复 rdb 文件


5、启动 redis 服务

[root@host redis]# ./bin/redis-server
17583:C 16 Feb 2019 01:53:53.350 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
17583:C 16 Feb 2019 01:53:53.350 # Redis version=5.0.3, bits=64, commit=00000000, modified=0, pid=17583, just started
17583:C 16 Feb 2019 01:53:53.350 # Warning: no config file specified, using the default config. In order to specify a config file use ./bin/redis-server /path/to/redis.conf
17583:M 16 Feb 2019 01:53:53.353 * Increased maximum number of open files to 10032 (it was originally set to 1024).
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 5.0.3 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 17583
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

17583:M 16 Feb 2019 01:53:53.357 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
17583:M 16 Feb 2019 01:53:53.357 # Server initialized
17583:M 16 Feb 2019 01:53:53.357 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
17583:M 16 Feb 2019 01:53:53.357 * Ready to accept connections

启动成功,期待很久的 redis 的 logo 就出现了,还有 redis 当前的 pid 和默认端口号 6379。

./bin/redis-server 这种启动方式加载的默认位置的配置文件,如果我们想指定加载配置文件,请执行 ./bin/redis-server ./conf/redis.conf 命令。


6、测试 redis 服务

[root@host ~]# cd /usr/local/redis/bin/
[root@host bin]# redis-cli 
127.0.0.1:6379> set name yangzhenhua
OK
127.0.0.1:6379> get name
"yangzhenhua"
127.0.0.1:6379>

这时候我们需要另外开启一个会话终端来启动 redis 客户端测试。因为 redis 默认采取的是前台启动方式,也就是说我们目前无法进行进行其它操作。测试一切正常。我们也可以直接使用 reids-cli 不进入客户端中来操作 reids 服务。

[root@localhost bin]# redis-cli -h 127.0.0.1 -p 6379 set k1 v1
OK
[root@localhost bin]# redis-cli -h 127.0.0.1 -p 6379 get k1
"v1"


7、设置 redis 后台启动方式

[root@host redis]# vim conf/redis.conf
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
#daemonize no
daemonize yes

修改配置文件,将 redis 服务器修改成后台启动方式。大概在配置文件 136 行,找到 daemonize 配置将其 no 改为 yes,意思是需要再后台运行 redis。然后返回到之前的终端 ctrl + c 退出,然后再次用 bin/redis-server  conf/redis.conf 命令启动就好,这次就是在后台运行,然后再次用 redis-cli 测试下,一切正常。


8、redis 的关闭,我们可以利用 shutdown 命令来关闭 redis 服务

[root@localhost bin]# ps -ef | grep redis
root     11724     1  0 10月25 ?      00:12:58 ./bin/redis-server 127.0.0.1:6379
root     22342 17012  0 23:21 pts/0    00:00:00 grep --color=auto redis
[root@localhost bin]# redis-cli shutdown
[root@localhost bin]# ps -ef | grep redis
root     22345 17012  0 23:21 pts/0    00:00:00 grep --color=auto redis

shutdown 还有一个参数,代表关闭前是否生成持久化文件 redis-cli shutdown nosave|save


9、添加 redis 到系统服务

redis 的启动关闭脚本是 /usr/local/redis/utils/redis_init_script 这个文件,大家可以编辑下这个文件,把这个文件放入大 /etc/init.d/ 目录下设置快捷启动和停止服务。


安装 PHP 的 Reids 扩展

1、安装配置 redis 扩展

# 下载 redis 扩展并解压
[root@host download]# wget http://pecl.php.net/get/redis-4.2.0.tgz
[root@host download]# tar zxf redis-4.2.0.tgz

# 生成 configure 文件
[root@host download]# cd redis-4.2.0
[root@host redis-4.2.0]# /usr/local/php/bin/phpize

# 编译安装
[root@host redis-4.2.0]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@host redis-4.2.0]# make && make install

# 编辑 php.ini 文件加入扩展
[root@host redis-4.2.0]# vim /usr/local/php/etc/php.ini
.
.
.
extension=redis.so
.
.
.

redis 扩展下载地址:http://pecl.php.net/package/redis。安装和配置 redis 扩展后,重新启动 php 服务,然后打开 phpinfo() 页面,或者直接输入  php- -m 查看是否存在 redis 扩展。


2、测试 php 操作 redis 是否正常

<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$redis->set('test_name', 'hello redis!');
echo $redis->get('test_name');

打开页面看见“hello redis!”就成功了,剩下的就可以进行各种测试和学习redis了。

还有如果大家不想装 redis 也可以通过 redis 的在线测试工具http://try.redis.io/来学习和测试 reids 的一些方法,非常方便。

结束语:感谢您对本网站文章的浏览,欢迎您的分享和转载,但转载请说明文章出处。
Top