【刘建】Linux安装部署Redis(超级详细)

Linux安装部署Redis(超级详细)

Author: 刘建(Abbott.liu)
Date:
前言 网上搜索了一筐如何在Linux下安装部署Redis的文章,各种文章混搭在一起勉强安装成功了。自己也记录下,方便后续安装时候有个借鉴之处。
  • Redis版本 redis-5.0.7
  • 服务器版本 Linux CentOS 7.6 64位
下载Redis
进入官网找到下载地址https://redis.io/download
【刘建】Linux安装部署Redis(超级详细)
文章图片

右键Download按钮,选择复制链接。
登录服务器,进入ssh root@2.140.189.129文件夹
【刘建】Linux安装部署Redis(超级详细)
文章图片

进入到Xshell控制台(默认当前是root根目录),输入wget将上面复制的下载链接粘贴上,如下命令:
wget http://download.redis.io/releases/redis-5.0.7.tar.gz

解压并安装Redis
解压
下载完成后需要将压缩文件解压,输入以下命令解压到当前目录
tar -zvxf redis-5.0.7.tar.gz

解压后在根目录上输入ls 列出所有目录会发现与下载redis之前多了一个redis-5.0.7.tar.gz文件和 redis-5.0.7的目录。
【刘建】Linux安装部署Redis(超级详细)
文章图片

移动redis目录
一般都会将redis目录放置到 /usr/local/redis目录,所以这里输入下面命令将目前在/root目录下的redis-5.0.7文件夹更改目录,同时更改文件夹名称为redis。
mv ./redis-5.0.7 /usr/local/redis

cd 到/usr/local目录下输入ls命令可以查询到当前目录已经多了一个redis子目录,同时/root目录下已经没有redis-5.0.7文件夹
cd /usr/local

【刘建】Linux安装部署Redis(超级详细)
文章图片

编译
cd /usr/local/redis

输入命令make执行编译命令,接下来控制台会输出各种编译过程中输出的内容。
make

最终运行结果如下:
【刘建】Linux安装部署Redis(超级详细)
文章图片

【刘建】Linux安装部署Redis(超级详细)
文章图片

make test

【刘建】Linux安装部署Redis(超级详细)
文章图片

You need tcl 8.5 or newer in order to run the Redis test
yum install tcl

【刘建】Linux安装部署Redis(超级详细)
文章图片

然后
make test

【刘建】Linux安装部署Redis(超级详细)
文章图片

安装
输入以下命令
make PREFIX=/usr/local/redis install

这里多了一个关键字 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,
库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis即可删除redis。
执行结果如下图:
【刘建】Linux安装部署Redis(超级详细)
文章图片

启动redis
./bin/redis-server& ./redis.conf

【刘建】Linux安装部署Redis(超级详细)
文章图片

根据上面的操作已经将redis安装完成了。在目录/usr/local/redis 输入下面命令启动redis
# 查询启动进程 ps -aux|grep redis# 关闭Redis bin/redis-cli shutdown

【刘建】Linux安装部署Redis(超级详细)
文章图片

Redis设置密码登录之后,想关闭redis服务器,需要
redis-cli -a '密码' shutdown

【刘建】Linux安装部署Redis(超级详细)
文章图片

mkdir -p /usr/local/redis/etc mv redis.conf etc

【刘建】Linux安装部署Redis(超级详细)
文章图片

chmod 777 bin chmod 777 etc sudo chmod 777 ./etc/redis.conf sudo chmod 777 ./bin/redis-server

【刘建】Linux安装部署Redis(超级详细)
文章图片

cd /usr/local/redis/src cp mkreleasehdr.sh /usr/local/redis/bin 这两行可以不执行

启动redis
根据上面的操作已经将redis安装完成了。在目录/usr/local/redis 输入下面命令启动redis
./bin/redis-server etc/redis.conf

【刘建】Linux安装部署Redis(超级详细)
文章图片

开启远程访问 找到redis中的redis.conf文件并编辑(在安装路径中找到)
vim ./redis.conf

1、找到bind 127.0.0.1并注释掉
默认127.0.0.1只能本地访问,注释掉即可ip访问
【刘建】Linux安装部署Redis(超级详细)
文章图片

2、修改 protected-mode 属性值为no
注释掉并把保护模式禁用以后可以IP访问
【刘建】Linux安装部署Redis(超级详细)
文章图片

3、修改daemonize属性将no 改为yes
将daemonize设置为yes即启动后台运行
【刘建】Linux安装部署Redis(超级详细)
文章图片

nohup ./bin/redis-server ./etc/redis.conf &

redis-cli -h 2.140.189.129 -p 6379

比较重要的配置项
配置项名称 值范围 说明
daemonize yes、no yes表示启用守护进程,默认是no即不以守护进程方式运行。其中Windows系统下不支持启用守护进程方式运行
port 指定 Redis 监听端口,默认端口为 6379
bind 绑定的主机地址,如果需要设置远程访问则直接将这个属性备注下或者改为bind * 即可,这个属性和下面的protected-mode控制了是否可以远程访问。
protected-mode yes 、no 保护模式,该模式控制外部网是否可以连接redis服务,默认是yes,所以默认我们外网是无法访问的,如需外网连接rendis服务则需要将此属性改为no。
timeout 300 当客户端闲置多长时间后关闭连接,如果指定为 0,表示关闭该功能
loglevel debug、verbose、notice、warning 日志级别,默认为 notice
databases 16 设置数据库的数量,默认的数据库是0。整个通过客户端工具可以看得到
rdbcompression yes、no 指定存储至本地数据库时是否压缩数据,默认为 yes,Redis 采用 LZF 压缩,如果为了节省 CPU 时间,可以关闭该选项,但会导致数据库文件变的巨大。
dbfilename dump.rdb 指定本地数据库文件名,默认值为 dump.rdb
dir 指定本地数据库存放目录
requirepass 设置 Redis 连接密码,如果配置了连接密码,客户端在连接 Redis 时需要通过 AUTH 命令提供密码,默认关闭
maxclients 0 设置同一时间最大客户端连接数,默认无限制,Redis 可以同时打开的客户端连接数为 Redis 进程可以打开的最大文件描述符数,如果设置 maxclients 0,表示不作限制。当客户端连接数到达限制时,Redis 会关闭新的连接并向客户端返回 max number of clients reached 错误信息。
maxmemory XXX 指定 Redis 最大内存限制,Redis 在启动时会把数据加载到内存中,达到最大内存后,Redis 会先尝试清除已到期或即将到期的 Key,当此方法处理 后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。Redis 新的 vm 机制,会把 Key 存放内存,Value 会存放在 swap 区。配置项值范围列里XXX为数值。
修改初始密码 在配置文件中有个参数requirepass这个就是配置redis访问密码的参数。
【刘建】Linux安装部署Redis(超级详细)
文章图片

比如requirepass abc123
【刘建】Linux安装部署Redis(超级详细)
文章图片

然后重新启动redis
#首先查询到redis的pid后,kill掉,然后重启 [root@iz2zee4qz3fqi9xkyn76j6z ~]# ps -ef|grep redis root1656810 6月16 ?00:06:13 ./bin/redis-server *:6379 root24169 241530 13:35 pts/100:00:00 grep --color=auto redis [root@localhost bin]#kill -9 16568 [root@localhost bin]# ./redis-server redis.conf

后台启动成功如下
【刘建】Linux安装部署Redis(超级详细)
文章图片

最后我们使用redis客户端通过密码远程连接:
#远程连接 redis-cli -h 2.140.189.129 -p 6379 redis 127.0.0.1:6379> auth abc123

查看Redis是否正在运行 1、采取查看进程方式
ps -aux|grep redis

2、采取端口监听查看方式
netstat -lanp | grep 6379

结果如下图:
【【刘建】Linux安装部署Redis(超级详细)】【刘建】Linux安装部署Redis(超级详细)
文章图片

    推荐阅读