1.介绍 redis
1.1.什么是redis
redis(Remote Dictionary Server ) 即远程字典服务
本质是一个基于内存的数据库, 可以用来做数据库, 缓存, 消息队列等.
是 NoSQL(Not Only SQL 非关系型数据库)系列之一, NoSQL 系列(MongoDB, Redis, HBase, es)
是 Key-Value型 存储系统 , 相当于一个 Map<String, Object>
1.2.网站
1.3.redis的优点
优点
- 读写性能优异, Redis能读的速度是110000次/s,写的速度是81000次/s。
- 支持数据持久化,支持AOF和RDB两种持久化方式。
- 支持事务,Redis的所有操作都是原子性的,同时Redis还支持对几个操作合并后的原子性执行。
- 数据结构丰富,除了支持string类型的value外还支持hash、set、zset、list等数据结构。
- 支持主从复制,主机会自动将数据同步到从机,可以进行读写分离。
缺点
- 数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。
- Redis 不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。
- 主机宕机,宕机前有部分数据未能及时同步到从机,切换IP后还会引入数据不一致的问题,降低了系统的可用性。
- Redis 较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。为避免这一问题,运维人员在系统上线时必须确保有足够的空间,这对资源造成了很大的浪费。
2.安装redis
2.1.下载解压安装 Redis
(1), 先安装 gcc 编译器和 make 编译工具, 网络上下载的 redis 是 c 语言的源码,需要自己编译.
$ yum -y install gcc make
(2), 下载 redis 源码
如果没有 wget 工具, 需要先安装 wget 工具
$ yum -y install wget
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
(2.1), 也可以将 redis的压缩包 放置在对应 /usr/local
(3), 解压
$ tar -zxvf redis-5.0.5.tar.gz
(4), 编译
$ cd redis-5.0.5
$ make
(5), 复制命令到
$ cd src
$ make install
2.1.2. 文件位置
redis.conf 在 /usr/local/redis-5.0.5/redis.conf
dump.rdb 在 启动服务器的目标下
**2.2.在线yum安装
$ yum -y install redis
2.2.1.问题: 网络的问题
提示信息:
Cannot find a valid baseurl for repo: base/7/x86_64
解决方法:
ping 网关 , 如:
$ ping 192.168.0.1
- 如果不能 ping 通, 修改 网络配置
打开 网络配置文件
$ vi /etc/sysconfig/network-scripts/ifcfg-ens33
检查并调整 文件中的 ipaddr(ip 地址)、gateway(网关)、ONBOOT=“yes”
- 如果能ping 通, 再 配置网关信息
打开 网关配置文件
$ vi /etc/resolv.conf
增加 网关信息
nameserver 192.168.0.1
重启动 网络
$ systemctl restart network
2.2.2. No package redis available.
yum install -y epel-release
安装
$ yum install -y epel-release
安装 成功后 , 再 重新安装
2.2.3. 文件位置
redis.conf 在 /etc/redis.conf
dump.rdb 在 启动服务器的目标下
2.3.启动redis 服务
启动服务
$ redis-server
启动客户端,
$ redis-cli
通过 ping 得到 pong 来判断 是否可以连接服务器
127.0.0.1:6379> ping
PONG