01Redis的安装与配置(新手必备)
2.1Redis 的安装
2.1.1 克隆并配置主机
Redis在Linux上进行安装,首先有配置Linux操作系统
2.1.2 安装前的准备工作
(1) 安装 gcc
由于 Redis 是由 C/C++语言编写的,而从官网下载的 Redis 安装包是需要编译后才可安装
的,所以对其进行编译就必须要使用相关编译器。对于 C/C++语言的编译器,使用最多的是
gcc 与 gcc-c++,而这两款编译器在 CentOS7 中是没有安装的,所以首先要安装这两款编译器。
GCC,GNU Compiler Collection,GNU 编译器集合。
(2) 下载 Redis
版本要是Linux版本
redis 的官网为: http://redis.io。点击下面的链接可以直接进行下载。 (因为该网站是外网,需要魔法一下)
(3) 上传到 Linux
将下载好的压缩包上传到 Linux 的/opt/tools 目录中。
(注释:没有这个目录可以自己创建一个,这些是Linux基础命令)
2.1.3 安装 Redis
(1) 解压 Redis
将 Redis 解压到/opt/apps 目录中。
进入到/opt/apps 目录中再将 Redis 解压包目录更名为 redis(不更名也无所谓)。
(2) 编译
编译过程是根据 Makefile 文件进行的,而 Redis 解压包中已经存在该文件了。所以可以
直接进行编译了
进入到解压目录中,然后执行编译命令 make。
当看到如下提示时,表示编译成功。
(3) 安装
在 Linux 中对于编译过的安装包执行 make install 进行安装
可以看到,共安装了三个组件:redis 服务器、客户端与一个性能测试工具 benchmark。
(4) 查看 bin 目录
安装完成后,打开/usr/local/bin 目录,可以看到出现了很多的文件。
通过 echo $PATH 可以看到,/usr/local/bin 目录是存在于该系统变量中的,这样这些命令就可以在任意目录中执行了。 (环境变量)
2.1.4 Redis 启动与停止
(1) 前台启动
在任意目录执行 redis-server 命令即可启动 Redis。这种启动方式会占用当前命令行窗口。
到这里Redis已经启动成功了 下面是Redis启动时的一些配置。
再开启一个会话窗口,可以查看到当前的 Redis 进程,默认端口号为 6379。
通过 Ctrl + C 命令可以停止 Redis。
(2) 命令式后台启动
使用 nohub 命令,最后再添加一个&符,可以使要启动的程序在后台以守护进程方式运
行。这样的好处是,进程启动后不会占用一个会话窗口,且其还会在当前目录,即运行启动
命令的当前目录中创建一个 nohup.out 文件用于记录 Redis 的操作日志。
(3) Redis 的停止
通过 redis-cli shutdown 命令可以停止 Redis。
(4) 配置式后台启动
使用 nohup 命令可以使 Redis 后台启动,但每次都要键入 nohup 与&符,比较麻烦。可
以通过修改 Linux 中 Redis 的核心配置文件 redis.conf 达到后台启动的目的。redis.conf 文件在
Redis 的安装目录根下
将 daemonize 属性值由 no 改为 yes,使 Redis 进程以守护进程方式运行。
修改后再启动 Redis,就无需再键入 nohup 与&符了,但必须要指定启动所使用的 Redis
配置文件。这是为什么呢?
使用 nohup redis-server &命令启动 Redis 时,启动项中已经设置好了 Redis 各个参数的
默认值,Redis 会按照这些设置的参数进行启动。但这些参数是可以在配置文件中进行修改
的,修改后,需要在启动命令中指定要加载的配置文件,这样,配置文件中的参数值将覆盖
原默认值。
Redis 已经给我们提供好了配置文件模板,是 Redis 安装目录的根目录下的 redis.conf 文
件。由于刚刚对 redis.conf 配置文件做了修改,所以在开启 Redis 时需要显示指出要加载的
配置文件。配置文件应紧跟在 redis-server 的后面。
2.2连接前的配置
Redis 是一个内存数据库服务器,就像 MySQL 一样,对其操作也需要通过客户端进行。
若要使远程主机上的客户端能够连接并访问到服务端的 Redis,则服务端首先要做如下配置。
2.2.1 绑定客户端 IP
Redis 可以通过修改配置文件来限定可以访问自己的客户端 IP。
以上设置后,只允许当前主机访问当前的 Redis,其它主机均不可访问。所以,如果不
想限定访问的客户端,只需要将该行注释掉即可。
2.2.2 关闭保护模式
默认保护模式是开启的。其只允许本机的客户端访问,即只允许自己访问自己。但生产
中应该关闭,以确保其它客户端可以连接 Redis。
2.2.3 设置访问密码
为 Redis 设置访问密码,可以对要读/写 Redis 的用户进行身份验证。没有密码的用户可
以登录 Redis,但无法访问。
(1) 密码设置
访问密码的设置位置在 redis.conf 配置文件中。默认是被注释掉的,没有密码
没有通过密码登录的用户,无法读/写 Redis。
(2) 使用密码
对于密码的使用,有两种方式:登录时未使用密码,则访问时先输入密码;登录时直接
使用密码登录,访问时无需再输入密码。
A**、登录时未使用密码**
B**、 登录时使用密码**
C**、 退出时使用密码**
(3) 注意
为了方便后面的学习,我们这里就不设置访问密码了,直接将其注释掉即可
2.2.4 禁止/重命名命令
后面要学习两个非常危险的命令:flushal 与 flushdb。它们都是用于直接删除整个 Redis
数据库的。若让用户可以随便使用它们,可能会危及数据安全。Redis 可以通过修改配置文
件来禁止使用这些命令,或重命名这些命令。以下配置,禁用了 flushall 与 flushdb 命令。
当然,在学习过程中暂时不禁用它们
2.2.5 启动 Redis
当然,若要使客户端能够连接 Redis,则必须开启服务端的 Redis。
2.3Redis 客户端分类
Redis 客户端也像 MySQL 客户端一样有多种类型:命令行客户端、图形界面客户端、Java
代码客户端。
2.3.1 命令行客户端
Redis 提供了基本的命令行客户端。打开命令行客户端的命令为 redis-cli。
2.3.2 图形界面客户端
(1) Redis Desktop Manager
Redis 的图形界面客户端很多,其中较出名的是 Redis Desktop Manager 的客户端。不过,
该软件原来是免费软件,从 0.8.8 版本后变为了商业化收费软件。
官网为:https://resp.app/(原来是 http://redisdesktop.com)。
2.3.3 Java 代码客户端
码客户端其实就是一个或多个 Jar 包,提供了对 Redis 的操作接口。
对 Redis 操作的 API 很多,例如 jdbc-redis、jredis 等,但最常用也是最有名的是 Jedis。
下面用图形界面客户端连接Redis服务端: