Redis的版本选择与安装
在Redis的版本计划中,版本号第二位为奇数,为非稳定版本,如2.7、2.9、3.1;版本号第二为偶数,为稳定版本如2.6、2.8、3.0;一般来说当前奇数版本是下一个稳定版本的开发版本,如2.9是3.0的开发版本。
同时Redis的安装也非常简单,到Redis的官网(Download | Redis),下载对应的版本,简单几个命令安装即可。
Redis的linux安装
wget https://download.redis.io/releases/redis-6.2.7.tar.gz
tar xzf redis-6.2.7.tar.gz
cd redis-6.2.7/
make
安装后源码和执行目录会混在一起,为了方便,我做了一次install
make install PREFIX=/home/lijin/redis/redis
因为Redis的安装一般来说对于系统依赖很少,只依赖了Linux系统基本的类库,所以安装很少出问题
安装常见问题
如果执行make命令报错:cc 未找到命令,原因是虚拟机系统中缺少gcc,执行下面命令安装gcc:
yum -y install gcc automake autoconf libtool make
如果执行make命令报错:致命错误:jemalloc/jemalloc.h: 没有那个文件或目录,则需要在make指定分配器为libc。执行下面命令即可正常编译:
make MALLOC=libc
Redis的启动
Redis编译完成后,会生成几个可执行文件,这些文件各有各的作用,我们现在先简单了解下,后面的课程会陆续说到和使用这些可执行文件。
一般来说redis-server和redis-cli这些平时用得最多。
Redis有三种方法启动Redis:默认配置、带参数启动、配置文件启动。
默认配置
使用Redis的默认配置来启动,在bin目录下直接输入 ./redis-server
可以看到直接使用redis-server启动Redis后,会打印出一些日志,通过日志可以看到一些信息:
当前的Redis版本的是64位的6.2.7,默认端口是6379。Redis建议要使用配置文件来启动。
因为直接启动无法自定义配置,所以这种方式是不会在生产环境中使用的。
带参数启动
redis-server加上要修改配置名和值(可以是多对),没有设置的配置将使用默认配置,例如:如果要用6380作为端口启动Redis,那么可以执行:
./redis-server --port 6380
这种方式一般我们也用得比较少。
配置文件启动
配置文件是我们启动的最多的模式,配置文件安装目录中有
复制过来
改一下权限
通过配置文件来启动
./redis-server ../conf/redis.conf
注意:这里对配置文件使用了相对路径,绝对路径也是可以的。
同时配置文件的方式可以方便我们改端口,改配置,增加密码等。
打开注释,设置为自己的密码,重启即可
操作
Redis服务启动完成后,就可以使用redis-cli连接和操作Redis服务。redis-cli可以使用两种方式连接Redis服务器。
1、单次操作
用redis-cli -hip {host} -p{port} {command}就可以直接得到命令的返回结果,例如:
那么下一次要操作redis,还需要再通过redis-cli。
2、命令行操作
通过redis-cli -h (host}-p {port}的方式连接到Redis服务,之后所有的操作都是通过控制台进行,例如:
我们没有写-h参数,那么默认连接127.0.0.1;如果不写-p,那么默认6379端口,也就是说如果-h和-p都没写就是连接127.0.0.1:6379这个 Redis实例。
停止
Redis提供了shutdown命令来停止Redis服务,例如我们目前已经启动的Redis服务,可以执行:
./redis-cli -p 6379 shutdown
redis服务端将会显示:
除了可以通过shutdown命令关闭Redis服务以外,还可以通过kill进程号的方式关闭掉Redis,但是强烈不建议使用kill -9强制杀死Redis服务,不但不会做持久化操作,还会造成缓冲区等资源不能被优雅关闭,极端情况会造成AOF和复制丢失数据的情况。如果是集群,还容易丢失数据。
同样还可以在命令行中执行shutdown指令
shutdown还有一个参数,代表是否在关闭Redis前,生成持久化文件,缺省是save,生成持久化文件,如果是nosave则不生成持久化文件