centos7最小化环境安装redis
安装
下载安装包
[root@localhost ~]# wget http://download.redis.io/releases/redis-5.0.5.tar.gz
解压到src目录
[root@localhost ~]# tar xzf redis-5.0.5.tar.gz -C /usr/local/src/
下载gcc环境,openssl,cmake编译工具
[root@localhost ~]# yum install -y wget gcc gcc-c++ make tar openssl openssl-devel cmake
编译安装
[root@localhost ~]# cd /usr/local/src/redis-5.0.5/src
[root@localhost src]# make
make完后会生成可运行的二进制包,这些包直接拷贝就能够使用
这时,redis安装完毕,可以进行使用了。
[root@localhost src]# ./redis-server
优化
下面进行优化操作,简化redis配置并将其改为后台启动运行。
将redis安装在/usr/local/redis内
[root@localhost ~]# mkdir -p /usr/local/redis/conf /usr/local/redis/bin
[root@localhost ~]# cp /usr/local/src/redis-5.0.5/src/redis-* /usr/local/redis/bin/
【拷贝常用的二进制文件】
[root@localhost ~]# rm -f /usr/local/redis/bin/*.c /usr/local/redis/bin/*.o
[root@localhost ~]# cp redis-5.0.5/redis.conf /usr/local/redis/conf/ 【拷贝配置文件】
在这里,创建了conf和bin目录,将常用的二进制文件放入bin目录下,配置文件放入conf目录下,并删除编译时产生的以后用不到的二进制文件。
简化配置文件
[root@localhost ~]# cp /usr/local/redis/conf/redis.conf /usr/local/redis/conf/redis.conf.bak
[root@localhost ~]# cat /usr/local/redis/conf/redis.conf |egrep -v '^#|^$'
【将输出的简化的信息拷贝替换原配置文件】
[root@localhost bin]# vi /usr/local/redis/conf/redis.conf
【清空原内容,将上条命令输出的信息拷贝到此文件】
[root@CentOS]# mkdir -p /data/redis/ 【创建redis的数据目录】
修改配置文件 vi /usr/local/redis/conf/redis.conf
bind 127.0.0.1 【监听地址更改,0.0.0.0代表监控所有网卡】
port 6379 【监听端口更改,6379为默认】
daemonize yes 【yes为后台启动】
pidfile /data/redis/redis.pid 【pid存放目录】
logfile "/data/redis/redis.log" 【日志存放目录】
dir /data/redis 【工作目录】
启动redis并指定配置文件
[root@localhost bin]# /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
关闭redis服务器
[root@localhost ~]# /usr/local/redis/bin/redis-cli shutdown
查看redis进程
[root@localhost src]# ps -ef | grep redis
root 14268 1 2 17:21 ? 00:00:01 /usr/local/redis/bin/redis-server 127.0.0.1:6379
root 14277 10069 0 17:22 pts/1 00:00:00 grep --color=auto redis
建立软连接,查看redis版本号
[root@localhost ~]# /usr/local/redis/bin/redis-server --version
Redis server v=5.0.5 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=8bd29250e3d40107
[root@localhost ~]# /usr/local/redis/bin/redis-cli --version
redis-cli 5.0.5
[root@localhost ~]# ln -s /usr/local/redis/bin/redis-cli /bin/
由于redis客户端经常使用,所以软连接到bin目录下
错误解决
make时报如下错误:
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory
#include <jemalloc/jemalloc.h>
compilation terminated.
make: *** [adlist.o] Error 1
原因是jemalloc重载了Linux下的ANSI C的malloc和free函数。解决办法:make时添加参数。
[root@localhost src]# make MALLOC=libc