一步一步学习Redis——简介与安装

news/2024/7/2 2:04:04

1.Redis

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。

Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

官网:https://redis.io/

1.1 Redis简介

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

Redis 与其他 key - value 缓存产品有以下三个特点:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。

1.2 Redis优势 

  • 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
  • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  • 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
  • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

1.3 Redis与其他key-value存储有什么不同? 

  • Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。

  • Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。


2.Windows下安装Redis 

Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip 压缩包到 C 盘,解压后,将文件夹重新命名为 redis。 

下载地址:https://github.com/tporadowski/redis/releases

2.1 下载解压之后获取到的内容 

2.2 安装步骤

① win + R、cmd(或者win + X,选择以管理员身份运行),打开命令提示符窗口。

② 使用 cd.. 命令将文件路径回退到C盘的根目录下,之后使用 cd redis 命令进入刚刚解压之后的redis文件夹下。(切换到redis目录下运行)

③ 输入如下命令,此时会出现如下界面:👇👇👇

redis-server.exe redis.windows.conf

④ 这个时候再打开一个新的命令提示符窗口,原来的那个不要关闭,否则就无法访问服务端了!!!

⑤ 在新的命令提示符窗口中,仍然使用 cd.. 命令将文件路径回退到C盘的根目录下,之后使用 cd redis 命令进入刚刚解压之后的redis文件夹下(切换到redis目录下运行),输入以下命令:👇👇👇

redis-cli.exe -h 127.0.0.1 -p 6379

⑥ 设置键值对,其命令如下:👇👇👇

set myKey abc

⑦ 取出键值对,其命令如下:👇👇👇 

get myKey

以上7个步骤全部执行之后,如果可以顺利执行出如下界面中的内容,则说明我们的Redis安装成功了!!!

 


http://www.niftyadmin.cn/n/712304.html

相关文章

廉洁修身论文2000字_论文3000字符是几个版面

点击上方蓝字 关注我们1论文发表中字数要求是一项最基本要求,字数的多少关系到文章见刊占用的版面,很多作者在发表前也会对自己的文章以及所占版面进行大致的估算,控制字数对于作者和期刊来说都是很有必要的,论文3000字符是几个版…

jforum mysql_在linux環境下搭建JDK+JAVA+Mysql,並完成jforum的安裝

參考鏈接:YUM安裝MySQL和JDK和Tomcat:http://cmdschool.blog.51cto.com/2420395/1696206/因為我使用的是普通用戶lily,如果使用root的話,所有命令不用加sudo即可。今天先不加圖,改天再試試可以的話,再補充。…

希捷正式发布12TB硬盘:二代充氦 单碟1.5TB

在透露已经出样之后,希捷今天正式发布了新款Enterprise Capacity v7 12TB硬盘,这也是希捷的第二代充氦技术硬盘,面向企业和云计算市场。相比于此前的Enterprise Capacity v6 10TB,新硬盘增强了充氦技术,单盘封装多达八…

NTF服务器搭建及其遇到问题

1,服务器端软件:安装nfs-utils和rpcbindnfs-utils: 提供rpc.nfsd 及 rpc.mountd这两个NFS DAEMONS的套件 rpcbind: NFS其实可以被看作是一个RPC SERVER PROGRAM,而要启动一个RPC SERVER PROGRAM,都要做好客户端IP及其PORT的对应工…

web前端学习(二十三)——CSS3定位(position)、元素裁剪(clip)及鼠标样式(cursor)属性的相关设置

1.CSS定位属性(position) position 属性指定了元素的定位类型。 position 属性的五个值: staticrelativefixedabsolutesticky元素可以使用的顶部,底部,左侧和右侧属性定位。然而,这些属性无法工作&#xff…

python自定义结束符号_Python输入恐怖-未定义的符号-用于自定义C++ MODU

我在Ubuntu 11.04上使用OpenCV 2.3到2.4.2开发了一个C的Python模块。OpenCV是从源代码构建的。我没有使用Ubuntu存储库中的OpenCV版本。我的Python模块编译没有问题,并且在Python中正确加载。然而,当我在Ubuntu11.10或12.04上编译这个模块时,…

QT多线程之---moveToThread用法

在gui编程里,一个子函数的运行时间可能过长,界面就处于假死状态,原因是窗口是一个线程,子函数也在这个线程里,一些事件也要在这个线程里处理。 如果子函数运行时间过长,系统没有办法调用事件监听循环&#…

【翻译】在Ext JS 5种使用ViewControllers

原文:Using ViewControllers in Ext JS 5简介在Ext JS 5中,在应用程序架构方面提供了一些令人兴奋的改进,如添加了ViewModels、MVVM以及viewControllers来加强MVC应用程序。最重要的是,这些选择并不互斥,因此&#xff…