Redis 简介以及安装介绍
Redis 简介
Redis 是一款高性能的键值数据库。在实际应用场景中,每秒QPS能够达到4.5万~5万,官方的数据是每秒QPS有10万级别。
Windos 版本安装
Redis 官方并不支持 Window 版本,但是微软公司在 Github 上维护了一个 Windows 版本的 Redis 项目,供 Windows 用户下载使用。
下载地址是:https://github.com/dmajkic/redis/downloads。
下载完之后,使用方式也非常简单:首先解压 Redis 的安装包,然后将目录切换到解压目录下,运行redis-server.exe
命令即可。
Linux 版本安装
在生产环境,Redis 通常部署在 Linux 机器上,所以本文重点介绍 Linux 版本的安装方式。
step1:获取你需要的 Redis 版本
你可以在 Redis官网寻找你需要的 Redis 版本。
# 将安装包下载到 tmp 目录下
cd /tmp/
wget http://download.redis.io/releases/redis-6.0.8.tar.gz
# 解压安装包
tar zxvf redis-6.0.8.tar.gz
step2:安装 Redis
cd redis-6.0.8
# 编译
make
cd src
# 将 Redis 安装到/usr/local/redis,默认安装到 /usr/local/bin 目录
make install PREFIX=/usr/local/redis
安装过程中你可能会遇到以下错误:
cc1: error: unrecognized command line option "-std=c11"
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/tmp/redis-6.0.8/src'
make: *** [all] Error 2
这种情况一般是由于 gcc 版本过低造成的,你需要升级下你的 gcc 版本。
GCC(GNU Compiler Collection)是Linux下最主要的编译工具,GCC功能非常强大,结构也灵活。它可以通过不同的前端模块来支持各种语言,如Java、Fortran、Pascal、Modula-3和Ada。
推荐使用yum
命令来升级 gcc。
yum info gcc
yum -y install gcc
yum -y install gcc-c++
yum -y install gcc gcc-c++
安装成功后,在安装目录下应该能看到以下命令:
- redis-benchmark :用于测试 redis 的性能。
- redis-check-aof : 当 aof 备份文件被损坏,可通过该工具对 aof 文件进行修复,使用方式:redis-check-aof –fix 要修复的 aof 文件。
- redis-check-rdb : 修复损坏的 rdb 备份文件。
- redis-cli : redis 客户端,用于连接服务端。
- redis-server : redis 服务器端,用于启动 redis 服务器。
- redis-sentinel : 哨兵模式(实际使用较多) 在 master-slave 模式下(slave默认不支持写),当 master 出现异常时,自动在 slave中 选择一台作为 master。
连接上redis服务器后,可通过指令“info”查看redis服务器信息,也可查看服务器知道内容信息,例如:info replication 查看主从相关信息
step3:修改配置文件
安装完 Redis,在安装目录中是不存在配置文件的,我们可以在解压的源码目录中拷贝一个到安装目录中。
如果你不做任何配置,Redis 会维护一套默认的配置。这边展示下配置:设置 Redis 支持后台程序启动
# redis-server & 也可以让Redis后台运行
daemonize yes
Redis 有很多的配置项,后面会写文章单独介绍。
step4:启动 Redis
# 启动 Redis,需要指定配置文件的路径
redis-server ../redis.conf
启动完之后可以使用ps
命令查看是否启动成功。
ps -aux | grep redis
-- Redis 的进程
root 378818 0.0 0.1 133988 2464 ? Ssl 14:07 0:00 ./redis-server 127.0.0.1:6379
root 378881 0.0 0.0 103304 820 pts/1 S+ 14:07 0:00 grep redis
4. 使用 Redis 客户端登陆
[root@SHA-L0029025 bin]# ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> ping hi,redis...
"hi,redis..."
使用ping
命令,看到有 message 返回就说明 Redis 已经成功安装了。
一些其他配置
1. 将 Redis 命令加入 PATH
vim ~./.bash_profile
将 Redis 命令路径配置到 PATH 中
PATH=$PATH:$HOME/bin:/usr/local/redis/bin
执行source
命令使其生效。
source ~/.bash_profile
2. 设置 Redis 连接密码
上面我们在连接 Redis 时是不需要密码的,这在安全性上不是很健全。我们可以通过以下配置给 Redis 设置密码。
requirepass redis
修改配置文件,将配置项requirepass
的注释放开,上面的配置将连接密码设置成了redis
。
[root@SHA-L0029025 ~]# redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379>
127.0.0.1:6379>
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.
127.0.0.1:6379>
我们还是使用上面的命令连接,执行命令时报错:(error) NOAUTH Authentication required。
上面的报错很明显:客户端没有授权,需要我们提供密码。
[root@SHA-L0029025 ~]# redis-cli -h 127.0.0.1 -p 6379 -a redis
使用上面的命令就可以正常连接 Redis 了。
3. 放开 Redis 的外网访问
配置防火墙
# 开放6379端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
# 重启防火墙以使配置即时生效
systemctl restart firewalld
使用下面命令可以查看端口有没放开
# 查看系统所有开放的端口
firewall-cmd --zone=public --list-ports
此时虽然防火墙开放了 6379 端口,但是外网还是无法访问的,因为 Redis 监听的还是是127.0.0.1:6379,并不监听外网的请求。我们还需要做以下配置。
- 把文件夹目录里的redis.conf配置文件里的
bind 127.0.0.1
配置项注释掉; - 将配置项
protected-mode
配置成 no。
4. 查看是否安装 Redis
whereis redis-cli
5. Redis 卸载
Redis 卸载时主要是删除相关文件,主要包括:
- Redis 的安装源码文件;
- Redis 的安装文件,主要在/usr/local/redis目录中;
- Redis 配置的环境变量。