下载Redis
(1)在linux中使用命令下载
进入官网找到下载地址 https://redis.io/download
右键Download按钮,选择复制链接。进入到Xshell控制台(默认当前是root根目录),进入/usr/local
,输入wget 将上面复制的下载链接粘贴上,如下命令:
# 下载压缩包
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
(2)下载到本地上传到linux
本地下载的压缩包,上传到linux下的/usr/local
文件夹下
解压并安装redis
解压
下载完成后需要将压缩文件解压,输入以下命令解压到当前目录
tar -zvxf redis-5.0.7.tar.gz # 解压文件
解压后在根目录上输入ls 列出所有目录会发现与下载redis之前多了一个redis-5.0.7.tar.gz文件和 redis-5.0.7的目录。
移动redis目录
cd到/usr/local/目录,一般都会将redis目录放置到/usr/local/redis
目录,所以这里输入下面命令将redis-5.0.7文件夹,更改文件夹名称为redis。
mv redis-5.0.7 redis # 更改文件夹名称
对解压后的文件进行编译
cd到/usr/local/redis目录,输入命令make执行编译命令,接下来控制台会输出各种编译过程中输出的内容。
make # 对解压后的文件进行编译
安装
cd到/usr/local/redis/src目录,输入以下命令
make install
为了方便管理,将Redis文件中的conf配置文件和常用命令移动到统一文件中
(1)创建bin和etc文件夹
[root@localhost redis]# mkdir bin //创建bin文件夹
[root@localhost redis]# mkdir etc //创建etc文件夹
(2) 将redis目录下的 redis.conf 移动到 redis目录下的etc文件夹下
将mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-cli、redis-server 移动到 /usr/local/redis/bin/ 目录下
# 将redis-5.0.0目录下的 redis.conf 移动到 redis-5.0.0目录下的src文件夹下
[root@localhost redis]# mv redis.conf ./etc/
[root@localhost redis]# cd ./src/ //进入redis目录下的src文件夹下
//将mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-cli、redis-server 移动到 /usr/local/redis/bin/ 目录下
[root@localhost src]# mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /usr/local/redis/bin/
更改配置文件
读取配置文件
通过redis-cli命令进入redis控制台后通过CONFIG GET * 的方式读取所有配置项。 如下:
redis-cli
CONFIG GET *
回车确认后会将所有配置项读取出来,如下图
这里列举下比较重要的配置项
配置项名称 | 配置项值范围 | 说明 |
---|---|---|
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为数值。 |
更改配置文件
redis/etc目录下
[root@localhost etc]# vi redis.conf
(1)把文件中的daemonize属性改为yes(表明需要在后台运行)
通过 /daemonize 查找到属性,默认是no,更改为yes即可。 (通过/关键字查找出现多个结果则使用 n字符切换到下一个即可,查找到结果后输入:noh退回到正常模式)
(2)开启redis远程访问服务。把 redis.conf配置文件中的 bind 127.0.0.1 这一行给注释掉,这里的bind指的是只有指定的网段才能远程访问这个redis,注释掉后,就没有这个限制了。
(3)把 redis.conf配置文件中的 protected-mode 设置成no(默认是设置成yes的, 防止了远程访问,在redis3.2.3版本后)
(4)修改Redis默认密码 (默认密码为空)
1、在配置文件中找到这一行 # requirepass foobared
2、删除前面的注释符号#,并把foobared修改成自己的密码 或者 另起一行 requirepass 自己的密码
设置redis开机启动
[root@localhost etc]# vi /etc/rc.d/rc.local
添加如下代码到 /etc/rc.d/rc.local 中:
/usr/local/redis-5.0.0/bin/redis-server /usr/local/redis-5.0.0/etc/redis.conf
切换到 /usr/local/redis/bin/ 目录下执行 redis-server 命令,使用 /usr/local/redis/etc/redis.conf配置文件来启动redis服务
//进入到/usr/local/redis-5.0.0/bin/ 目录下
[root@localhost etc]# cd /usr/local/redis/bin/
[root@localhost bin]# ls //查看bin目录
# 存在下面文件mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server
[root@localhost bin]# ./redis-server /usr/local/redis/etc/redis.conf //启动Redis服务
查看Redis是否正在运行
1、采取查看进程方式
ps -aux | grep redis
结果如下图:
2、采取端口监听查看方式
netstat -lanp | grep 6379
结果如下图:
redis-cli
redis-cli是连接本地redis服务的一个命令,通过该命令后可以连接redis的脚本控制台。如下图
redis-cli # 不加密码连接
# 添加密码连接
redis-cli -a 密码 ping
输入exit可以退出redis脚本控制台
关闭运行中的Redis服务
输入redis-cli进入控制台后输入命令shutdown即可关闭运行中的Redis服务了。如下图:
远程连接
打开RedisDesktopManager,测试服务是否开启 以及 是否可以远程访问Redis