Debian系Linux源码安装Redis5.0.6

一,先在官网下载源码包:https://redis.io/download

二,解压源码包,并cd到解压后的目录;

三,执行make MALLOC=libc

接着cd src【解压的目录里有这个子目录】,执行:

make install PREFIX=/usr/local/redis-5.0.6【注意,需要当前用户有/usr/local目录的写权限】

成功标志:make install后会出现五行其他颜色的INSTALL install;

注意:make编译如果失败,因为没有安装gcc服务(这里补充,还可能导致出错的地方是没有安装jemalloc或make时用make MALLOC=libc【这里用的是后者可以编译通过】)

四,cd ..到之前的解压目录,然后mkdir /usr/local/redis-5.0.6/etc,然后执行mv redis.conf /usr/local/redis-5.0.6/etc/

五,此时redis已经安装完毕,cd到安装后的redis目录,然后vi /etc/redis.conf,做以下修改:

1.将daemonize no改成daemonize yes

2.将绑定的127.0.0.1的改成:bind 0.0.0.0【当然这个看个人】

3.也可以修改绑定端口不用默认的,一定程度降低被攻击风险:port 6489【默认是port 6379】,如果改了pidfile记得也改下;

4.logfile改成:logfile /var/log/redis/redis.log【注意,目录需要自己手动创建,且启动redis的用户要有/var/log/redis目录的写权限

5.requirepass xxx【默认是注释状态,这个是配置访问redis需要的认证密码】

六,启动redis服务可以用:/usr/local/redis-5.0.6/bin/redis-server /usr/local/redis-5.0.6/etc/redis.conf

让redis开机自启方式:

vim /etc/rc.local
加入
/usr/local/redis-5.0.6/bin/redis-server /usr/local/redis-5.0.6/etc/redis.conf

七,客户端链接

/usr/local/redis-5.0.6/bin/redis-cli 

八,停止服务

/usr/local/redis-5.0.6/bin/redis-cli shutdown
或者
pkill redis-server

九,/usr/local/redis-5.0.6/bin目录下的几个关键文件

redis-benchmark:redis性能测试工具

redis-check-aof:检查aof日志的工具

redis-check-dump:检查rdb日志的工具

redis-cli:连接用的客户端

redis-server:redis服务进程

十,conf 配置项介绍

daemonize:如需要在后台运行,把该项的值改为yes

pidfile:把pid文件放在/var/run/redis.pid,可以配置到其他地址(我那是redis_6379.pid)

bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项(补充,这个解释不好,其实就是redis启动时会绑定的ip,而且默认是127.0.0.1也就是说只接受本地主机的请求,0.0.0.0才是接受本机所有网卡ip的请求或者注释bind=...那么redis默认绑定0.0.0.0)

port:监听端口,默认为6379

timeout:设置客户端连接时的超时时间,单位为秒

loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice

logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上

database:设置数据库的个数,默认是"16个数据库",默认使用的数据库是下标为0的那个(第一个)【一般而言不同业务的缓存可以放在不同下标的db里】

save:设置redis进行数据库镜像的频率(即将redis的内存数据key-value存储到本地db里,这个跟redis里有多少key-value被修改也有关)

rdbcompression:在进行镜像备份时,是否进行压缩

dbfilename:镜像备份文件的文件名

dir:数据库镜像备份的文件放置的路径

slaveof:设置该数据库为其他数据库的从数据库

masterauth:当主数据库连接需要密码验证时,在这里设定

requirepass:设置客户端连接后进行任何其他指定前需要使用的密码

maxclients:限制同时连接的客户端数量

maxmemory:设置redis能够使用的最大内存

appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态

appendfsync:设置appendonly.aof文件进行同步的频率

vm_enabled:是否开启虚拟内存支持

vm_swap_file:设置虚拟内存的交换文件的路径

vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0

vm_page_size:设置虚拟内存页的大小

vm_pages:设置交换文件的总的page数量

vm_max_thrrads:设置vm IO同时使用的线程数量