建议将 Redis 部署到 Linux 服务器上,安装非常简单。 在 Linux 环境更接近生产环境,也可以更熟悉的使用 Linux 命令。
在Windows 上可安装 RedisDesktopManager 客户端来直观的查看存储在 Redis 中的数据。
Redis 安装
下载安装包
如果是从官网下载安装包,将安装包上传到 Linux 系统;可在 Linux 系统使用如下命令下载,也可以下载 Redis 的 Docker 镜像。
解压安装包
$ tar zxvf redis-4.0.9.tar.gz
进入解压目录
$ cd redis-4.0.9
编译,执行make命令
$ make
编译成功显示内容:make[1]: Leaving directory `/usr/local/redis-4.0.9/src'
安装 Redis
$ make PREFIX=/usr/local/redis install
查看安装目录
$ cd /usr/local/redis
该目录下会创建 bin 目录,目录里包含:redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server 二进制可执行文件。
指定配置文件启动服务
$ ./redis-server redis.conf &
& 表示后台启动,不会因为关闭终端而关闭服务
redis-server 以守护进程的方式后台启动 Redis
修改 Redis 配置文件
$ vim redis.conf
找到行内容为 daemonize no,将 no 改为 yes
因 Redis 是单线程的,而现在的服务器基本是多核多线程,单线程应用无法充分利用系统资源,所以在一台物理服务器上会启动多个 Redis实体,需要修改不同的端口号。
方式一:启动时指定端口号
$ ./redis-server redis.conf --port 6380
$ ./redis-server redis.conf --port 6381
方式二:给每个实例分别创建配置文件,在配置文件里设置不同的端口号
拷贝多份 Redis bin 目录,重命名,修改里面的端口号
$ ./redis6380/redis-server redis.conf
$ ./redis6381/redis-server redis.conf
执行多个服务启动停止,可以写个简单的 shell 脚本来批量执行。
停止 Redis,重启让配置启效
$ ps -ef|grep redis
kill - 9 redis_pid
$ ./redis-server redis.conf
连接 Redis
使用 redis-cli 连接到 Redis,默认是没有设置密码的,默认端口是 6379
$ ./redis-cli
127.0.0.1:6379> ping
PONG
表示连接是通的。
简单测试
设置键值对
$ set foo value1
根据键取值
$ get foo
结果显示:value1
通过客户端来停止 Redis 服务
127.0.0.1:6379> shutdown
显示 not connected 表示连接已断开,Redis服务已停止。
或在外部执行: ./redis-cli shutdown
停止 Redis 服务需要特别注意,学会优雅地停止 Redis 服务以保持数据的一致性,所以强烈建议使用 shutdown 命令,在发出 shutdown 命令后,服务端会停止客户端的连接,如果开启了持久化,则执行数据持久化操作;如果 .pid 文件和 socket存在的话,则对其进行清理,并最终退出进程,通过此策略,尽可能地防止数据丢失。
若使用 kill 命令来终止服务,由于服务端关闭之前数据可能尚未被持久化而导致丢失。另 使用 kill 命令发送 15 信号基本上等同于 shutdown 命令优雅地停止 redis-server。
全限定连接登录,主机,端口,密码
$ ./redis-cli -h 127.0.0.1 -p 6379 -a 123456
-h 服务器IP地址
-p port,端口
-a password,密码
默认是db0:0-15,共16个db
选项db: select db_index, 如选择db2: #select 2
显示所有的key
key:#keys *
查看服务器信息
127.0.0.1:6379> info
显示服务器,客户端,内存,持久化,状态,主从复制,CPU信息,集群 等所有信息指标,以键值对格式显示;定期地使用 info 命令来获取信息,可以用于对 Redis 进行监控。
可通过增加 参数来指定获取哪一部分信息
127.0.0.1:6379> info memory
配置文件
修改配置文件
$ vim redis.conf
修改登录密码
搜索 /requirepass
取消注释,或新增一行,修改登录密码
取消127.0.0.1绑定
搜索 /bind 127.0.0.1
bind 127.0.0.1 加上注释(头部添加 #),否则外部不能登录
自定义端口
搜索 /port 6379
默认端口是 6379,修改为自定义的端口号
配置后端运行模式
搜索 daemonize no
默认不是后端运行模式,把 no 改为 yes 启用后端运行模式
RedisDesktopManager
如果以上配置后,RDM 仍连不上 Redis 服务器,检查服务器操作系统是否开启了防火墙,屏蔽的端口。
以 CentOS 7为例,将 Redis 默认的端口加入到防火墙允许通过。
查看防火墙状态:systemctl status firewalld
添加一个端口:firewall-cmd --zone=public --add-port=6379/tcp --permanent
重新载入安全策略:firewall-cmd --reload
查看是否成功:firewall-cmd --zone=public --query-port=6379/tcp