1、安装
1.1、下载
先到redis官网(https://redis.io/download)下载redis安装包
-
linux采用命令下载:
wget http://download.redis.io/releases/redis-4.0.1.tar.gz
-
windows下载上传至linux上
1.2、解压
解压并进入redis目录 tar -zxvf redis-4.0.9 cd redis-4.0.9/
1.3、编译
通过make命令编译,如果编译的时候报gcc命令找不到的话,可以通过下面的命令安装gcc命令,gcc是c的编译命令
yum install gcc-c++
make是自动编译,会根据Makefile中描述的内容来进行编译。 编译后可以看到在src目录下生成了几个新的文件。
make
[root@localhost redis]# ll -tr src
总用量 44440
-rw-rw-r--. 1 root root 3779 7月 24 22:58 zmalloc.h
.
.
.
-rw-r--r--. 1 root root 56148 9月 3 10:11 rax.o
-rwxr-xr-x. 1 root root 7185836 9月 3 10:11 redis-server
-rwxr-xr-x. 1 root root 7185836 9月 3 10:11 redis-sentinel
-rw-r--r--. 1 root root 143800 9月 3 10:11 redis-cli.o
-rwxr-xr-x. 1 root root 5092431 9月 3 10:11 redis-cli
-rw-r--r--. 1 root root 44892 9月 3 10:11 redis-benchmark.o
-rwxr-xr-x. 1 root root 4985275 9月 3 10:11 redis-benchmark
-rwxr-xr-x. 1 root root 7185836 9月 3 10:11 redis-check-rdb
-rwxr-xr-x. 1 root root 7185836 9月 3 10:11 redis-check-aof
[root@localhost redis]#
为了使用方便,我们需要将这个几个文件加到/usr/local/bin目录下去。这个目录在Path下面的话,就可以直接执行这几个命令了。执行make install命令:
make install
[root@localhost redis]# make install
cd src && make install
make[1]: Entering directory `/usr/local/redis/src'
CC Makefile.dep
make[1]: Leaving directory `/usr/local/redis/src'
make[1]: Entering directory `/usr/local/redis/src'
Hint: It's a good idea to run 'make test' ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
make[1]: Leaving directory `/usr/local/redis/src'
[root@localhost redis]# cd ..
[root@localhost local]# ll
总用量 44
drwxr-xr-x. 2 root root 4096 9月 3 10:16 bin
drwxr-xr-x. 2 root root 4096 9月 3 10:04 data
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxrwxr-x. 6 root root 4096 7月 24 22:58 redis
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 4月 1 04:48 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
[root@localhost local]# ll bin
总用量 30908
-rwxr-xr-x. 1 root root 4985275 9月 3 10:16 redis-benchmark
-rwxr-xr-x. 1 root root 7185836 9月 3 10:16 redis-check-aof
-rwxr-xr-x. 1 root root 7185836 9月 3 10:16 redis-check-rdb
-rwxr-xr-x. 1 root root 5092431 9月 3 10:16 redis-cli
lrwxrwxrwx. 1 root root 12 9月 3 10:16 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 7185836 9月 3 10:16 redis-server
[root@localhost local]#
可以看到,这几个文件就已经被加载到bin目录下了
到此就安装完成。但是,由于安装redis的时候,我们没有选择安装路径,故是默认位置安装。在此,我们可以将可执行文件和配置文件移动到习惯的目录。
cd /usr/local
mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/etc
cd /usr/local/redis-4.0.2
mv ./redis.conf /usr/local/redis/etc
cd src
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server redis-sentinel /usr/local/redis/bin
如果想要安装到固定目录下,执行如下命令:
make install PREFIX=/usr/local/redis
之后需要将配置文件移动到redis安装目录:
mv redis.conf /usr/local/redis/etc/
2、启动、连接、关闭
比较重要的可执行文件(/usr/local/redis/bin):
- redis-server:Redis服务器程序
- redis-cli:Redis客户端程序,它是一个命令行操作工具。也可以使用telnet根据其纯文本协议操作。
- redis-benchmark:Redis性能测试工具,测试Redis在你的系统及配置下的读写性能
- redis-check-aof:检查aof日志的工具
- redis-check-dump:检查rdb日志的工具
2.1、启动
/usr/local/redis/bin/redis-server
或
cd /usr/local/redis/bin
./redis-server /usr/local/redis/etc/redis.conf
2.2、客户端连接
/usr/local/redis/bin/redis-cli
2.3、关闭
/usr/local/redis/bin/redis-cli shutdown
或
pkill redis-server
2.4、开机自启
vim /etc/rc.local
加入
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis-conf
ps aux | grep redis 查看redis是否启动成功
netstat -tlun 查看主机的6379端口是否在使用(监听)
3、配置
下面列举了Redis中的一些常用配置项:
-
daemonize:如需要在后台运行,把该项的值改为yes
-
pdifile:把pid文件放在/var/run/redis.pid,可以配置到其他地址
-
bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项
-
port:监听端口,默认为6379
-
timeout:设置客户端连接时的超时时间,单位为秒
-
loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice
-
logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上
-
database:设置数据库的个数,默认使用的数据库是0
-
save:设置redis进行数据库镜像的频率
-
rdbcompression:在进行镜像备份时,是否进行压缩
-
dbfilename:镜像备份文件的文件名
-
dir:数据库镜像备份的文件放置的路径
-
slaveof:设置该数据库为其他数据库的从数据库
-
masterauth:当主数据库连接需要密码验证时,在这里设定
-
requirepass:设置客户端连接后进行任何其他指定前需要使用的密码
-
maxclients:限制同时连接的客户端数量
-
maxmemory:设置redis能够使用的最大内存
-
appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态
-
appendfsync:设置appendonly.aof文件进行同步的频率
-
vm_enabled:是否开启虚拟内存支持
-
vm_swap_file:设置虚拟内存的交换文件的路径
-
vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0
-
vm_page_size:设置虚拟内存页的大小
-
vm_pages:设置交换文件的总的page数量
-
vm_max_thrrads:设置vm IO同时使用的线程数量
4、卸载
4.1、停止redis服务
首先,通过下面的命令查看redis服务是否在运行
[root@localhost ~]# ps aux|grep redis
root 2553 0.2 0.1 41964 1916 ? Ssl 09:38 0:00 redis-server 127.0.0.1:6379
root 2565 0.0 0.0 6048 780 pts/0 S+ 09:39 0:00 grep redis
[root@localhost ~]#
可以看到,在6379端口,有redis-server的监听。 通过下面的命令停止redis服务
[root@localhost ~]# redis-cli shutdown
[root@localhost ~]# ps aux|grep redis
root 2575 0.0 0.0 6048 780 pts/0 S+ 09:41 0:00 grep redis
[root@localhost ~]#
可以看到,已经停止了redis服务了。
需要注意的是,由于我的redis命令都安装到/usr/local/bin目录下面了,并且添加到环境变量PATH里面了,所以可以直接运行。
4.2、删除make的时候生成的几个redis*的文件
[root@localhost local]# ll /usr/local/bin
总用量 30908
-rwxr-xr-x. 1 root root 4985307 9月 2 21:13 redis-benchmark
-rwxr-xr-x. 1 root root 7185872 9月 2 21:13 redis-check-aof
-rwxr-xr-x. 1 root root 7185872 9月 2 21:13 redis-check-rdb
-rwxr-xr-x. 1 root root 5092475 9月 2 21:13 redis-cli
lrwxrwxrwx. 1 root root 12 9月 2 21:13 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 7185872 9月 2 21:13 redis-server
[root@localhost local]# rm -f /usr/local/bin/redis*
[root@localhost local]# ll /usr/local/bin
总用量 0
[root@localhost local]#
4.3、删除掉解压后的文件目录和所有文件
[root@localhost local]# ll
总用量 40
drwxr-xr-x. 2 root root 4096 9月 3 09:43 bin
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxrwxr-x. 6 root root 4096 9月 2 21:11 redis
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 4月 1 04:48 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
[root@localhost local]# rm -rf redis
[root@localhost local]# ll
总用量 36
drwxr-xr-x. 2 root root 4096 9月 3 09:43 bin
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 4月 1 04:48 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
[root@localhost local]#
到此,redis卸载完成。