如无特殊说明,本站Redis系列文章均基于Redis 5.0.8,CentOS 7.9,远程连接工具RDM。
Redis 是一个开源的(BSD许可)、内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。
redis借鉴了linux操作系统对于版本号的命名规则:版本号第二位如果是奇数,则为非稳定版本(比如4.1),如果是偶数,则为稳定版本(比如5.0)。当前奇数版本就是下一个稳定版本的开发版本。所以生产环境最好选择偶数版本的redis。
安装方式有yum安装和源码编译安装。
有人说编译安装性能好?扯犊子~
编译安装的优势是:
- 编译安装时可以指定扩展的module(模块),Php、Apache、Nginx都是一样有很多第三方扩展模块,如MySQL,编译安装时候,如果需要就定制存储引擎(Innodb,还是MyIASM)
- 编译安装可以统一安装路径,linux软件约定安装目录在/opt/下面
- 软件仓库版本一般比较低,编译源码安装可以根据需求,安装最新的版本
编译安装redis步骤
1 | 下载redis源码 |
执行命令查看版本:
1 | [root@iZ8vbavndeiwj2ctanxb49Z /]# redis-cli -v |
redis可执行文件
1 | ./redis-benchmark //用于进行redis性能测试的工具 |
启动redis服务端
启动方式共有三种:
- 默认启动
- 运行启动
- 配置文件启动
默认启动
默认启动redis非常简单,直接切换到/usr/local/bin目录下执行redis-server就可以启动服务端了。
默认情况下,redis-server会以非daemon的方式来运行,且默认服务端口为6379。
运行启动
redis-server加上要修改配置名和值(可以是多对),没有设置的配置将使用默认配置。
1 | redis-server --configkey1 value1 --configkey2 value2 |
例如,指定端口启动:
1 | redis-server --port 6379 |
虽然运行配置可以自定义配置,但是没有保存到文件中,所以一般只在快速调试的时候可能会使用。
配置文件启动
将配置项写到配置文件中,那么只需要执行如下命令就可以启动 redis:
1 | redis-server redis.conf |
redis配置项众多,比如:
- port 端口
- logfile 日志文件
- dir redis工作目录(存放持久化文件和日志文件)
- daemonize 是否以守护进程的方式启动redis
redis命令行客户端
redis-cli可以使用两种方式连接redis服务器
交互式方式:
通过
redis-cli -h {host} -p {port}
的方式连接到redis服务,之后所有的操作都是通过交互式实现的:
1 | redis-cli -h 127.0.0.1 -p 6379 |
命令方式
使用
redis-cli -h {host} -p {port} {command}
就可以直接得到命令的返回方式:1
2redis-cli -h 127.0.0.1 -p 6379 get name
"Just"
需要注意的是:如果没有-h参数,那么默认连接 127.0.0.1,如果没有-p参数,那么默认6379端口
停止redis
可以使用shutdown命令
1 | redis-cli shutdown |
查看日志:
1 | Ready to accept connections |
再次尝试连接:
1 | [root@iZ8vbavndeiwj2ctanxb49Z /]# redis-cli |
使用shutdown关闭redis比较优雅,断开与客户端的连接,持久化文件生成。
除了shutdown命令,还可以使用kill命令,但是不要使用kill -9强制杀死redis,这样不但不会做持久化操作,还会造成缓冲区等资源不能被优雅关闭,甚至会造成aof和复制丢失数据的情况。
shutdown还有一个参数,代表是否在关闭redis前,生成持久化文件:
1 | redis-cli shutdown nosave|save |