Redis安装和基本操作

Redis 简介
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。

Redis 是属于非关系型数据库
1.数据比模型较简单
2.需要灵活性更强的IT系统
3.对数据库性能要求较高
4.不需要高度的数据一致性
5.对于给定的key,比较容易映射复杂值的环境

Redis简介

优点:

对数据高并发读写
对海量数据的高效率存储和访问
对数据的可扩展性和高可用性

缺点:

redis(ACID处理非常简单)
ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一个支持事务(Transaction)的数据库,必须要具有这四种特性,否则在事务过程(Transaction processing)当中无法保证数据的正确性,交易过程极可能达不到交易方的要求。
无法做到太复杂的关系型数据库模型
Redis持久化两种机制rdb和aof

Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。
Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。

redis的安装

redis的服务端安装
gcc编译c的,因为redis是c编写的,所以我们先安装下gcc、

yum install gcc-c++

下载redis压缩包 并解压

reids的各个版本的下载地址:
http://download.redis.io/releases/

第一种方式是 在线安装
yum -y install wget
wget http://download.redis.io/releases/redis-5.0.2.tar.gz

第二种是直接去reis官网下载离线安装包,上传到Linux中,推荐使用第二种 (在网速不是很快的情况下,我百度云中已经提供了安装包)。

Tar -xvf redis-5.0.2.tar.gz(解压)

编译
cd redis-5.0.2/(进入目录)
Make(编译)

修改配置文件 redis.conf
redis-5.0.2 /redis.conf

将配置文件中的 daemonize 修改成 yes 。这是 开启守护进程,不开启的话,不能做其他操作
#daemonize no
daemonize yes

启动 redis
可以操作如下(指定redis.conf)
./src/redis-server redis.conf

 使用reids客户端工具 reids-cli 测试是否成功
./src/redis-cli (使用redis)
连接上后运行ping 命令。如果输出如下结果就代表成功了:

 配置密码登录
vi /etc/redis/redis.conf #编辑redis配置文件

#找到下面这一行并去除注释,并添加密码(396行)
#requirepass foobared                                  #修改前
requirepass 123456                                      #修改后

注1:配置完成密码后,以后登录就密码按下面的命令进行登录
./redis-cli -h 127.0.0.1 -p 6379 -a 123456

开放端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
跟新防火墙规则
firewall-cmd --reload
防火墙列表
firewall-cmd --zone=public --list-ports
防火墙状态
systemctl status firewalld
启动防火墙
systemctl start firewalld

2.4重启redis或ubuntu
service redis-server restart
#reboot

 可视化管理工具redis-desktop-manager安装与配置
 双击redis-desktop-manager-0.8.8.384.exe即可无脑式的下一步就可以了

 

 出现这个可能是防火墙没有关掉

关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service

 出现这个就可以了

redis基本的操作

通过命令操作redis(命令不区分大小写)
   redis默认的数据库有16,mongodb是3个:admin/local/test
   redis-cli                                           #打开redis终端 
   select index                                        #选择指定的数据库,默认的数据库有16,mongodb是3个:admin/local/test

   #字符串
   set name                                            #保存
   get name                                            #获得
   type name                                           #查看类型   
   keys *
   del name


   #哈希(Hash),Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象
   hset key attr1 value1 attr2 value2
   hget key attr1
   hgetall key
   
   #列表(List)
   lpush key value1 value2 value3
   llen key
   lindex key index
   lrange key start stop                               #stop可以为-1,到末尾的意思
   
   #Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
   sadd key value                                      #sadd idcard 100  
   sadd key value1 value2 vlaue3
   scard key
   sscan key cursor [MATCH pattern] [COUNT count]
       
 
   exists key                                           #检查key是否存在

 今天就到这里了

原文地址:https://www.cnblogs.com/ztbk/p/11663559.html