一:什么是redis?

Redis 是一个开源的,高性能的,基于键值对的缓存与存储系统。通过提供多种键值数据类型来适应不同场景下的缓存与存储需求。

二:redis数据库有什么优点?

Redis数据库中的所有的数据都存储在内存中,内存的读写速度都比硬盘快,因此Redis在性能上对比其他基于硬盘存储的数据库有明显的优势。也就是说读写速度非常快。

缺点是:把数据存储在内存中,当程序退出后,内存中的数据就会丢失。但是Redis也提供了对持久化的支持。即可将内存中的数据异步写入到硬盘中。

三:安装Redis

下面我使用homebrew来安装,首先我们需要安装homebrew,安装homebrew 命令如下:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

如上命令运行后即可安装homebrew了。

有关homebrew的操作命令如下:

brew search * // 查找某个软件包
brew list // 列出已经安装的软件的包
brew install * // 安装某个软件包
brew uninstall * // 卸载某个已经安装的包
brew upgrade * // 更新某个软件包
brew info * // 查看指定软件包的说明
brew cache clean // 清理缓存

2. 我们使用 brew search redis 来搜索下 redis的安装版本,如下:

下面我们来安装 redis3.2版本的,如下命令:

然后我们进入 /usr/local/etc 下找到 redis.conf 配置文件,使用如下命令打开:

sudo open ./redis.conf -a 'sublime text'

打开redis.conf 文件进行编辑,找到 daemonize no 这一行 改成yes 目的是以守护进程的方式启动。

3. 配置环境变量:如下命令:

echo 'export PATH="/usr/local/Cellar/redis@3.2/3.2.13/bin:$PATH"' >> ~/.zshrc

如下图所示:

4. 启动redis, 使用命令如下:

brew services start redis@3.2

如下图所示:

5. 查看进程:使用命令:ps axu|grep redis;

如下图所示:

四:启动客户端

1. 指定地址和端口号
使用命令如下:

redis-cli -h 127.0.0.1 -p 6379

2. 关闭客户端使用 quit 命令;

基本操作如下:

$ redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> set key value11;
OK
127.0.0.1:6379> get key
"value11;"
127.0.0.1:6379> quit

如下所示:

五:启动服务端

Redis常用的可执行文件有如下:

redis-server Redis服务器。
redis-cli Redis命令行客户端
redis-benchmark Redis性能测试工具

启动Redis服务端

启动Redis有直接启动和通过初始化脚本启动两种方式。我这边先介绍直接启动了。

1. 直接启动

我们需要直接运行 redis-server 命令,即可启动Redis, 命令如下:

$ redis-server

如下所示:

Redis服务器默认使用6379端口号的。我们可以通过 --port 参数可以自定义端口号。如下:

$ redis-server --port 7777

如下图所示:

六:关闭服务端

1. 强行关闭
强行终止redis进程可能会导致数据丢失,因为redis可能正在将内存的数据同步到硬盘中。

ps axu|grep redis; // 查看redis-server 的进程号

杀掉进程号

kill -9 '进程号';

如下所示:

注意:Redis启动失败,如下报错:

Could not connect to Redis at 127.0.0.1:6379: Connection refused

如下图所示

解决办法如下:
1. 先启动服务器端:如下命令:redis-server。 如下所示:

2. 然后切换到一个新的命令行中(注意上面的服务器端不要关闭掉,否则的话会被拒绝掉的),输入启动客户端的命令如下:

redis-cli

3. 我们继续查看进程号,可以看到如下:

七:查看客户端redis是否连接正常

Redis提供了PING命令来测试客户端与Redis的链接是否正常,如果连接正常会收到回复PONG,如下所示:

redis 基本原理及安装的更多相关文章

  1. redis常用服务安装部署

    常用服务安装部署   学了前面的Linux基础,想必童鞋们是不是更感兴趣了?接下来就学习常用服务部署吧! 安装环境: centos7 + vmware + xshell 即将登场的是: mysql(m ...

  2. 玩转Redis之Window安装使用(干货)

    距离上次定Gc.Db框架,好久没有更新博客了,今日没什么事,就打算就Redis写点东西. Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理.它支持字符 ...

  3. redis集群安装

    1.普通安装 安装环境 centos 6.8 1.安装必要包 yum install gcc yum -y install wget 2.下载解压 wget http://download.redis ...

  4. Yii2框架与MongoDB拓展、Redis拓展的安装流程

    @author 周煦辰 2016-03-21 这段时间新上了一个项目,使用的是Yii2框架.这里记录一下Yii2框架.Yii2-Mongo拓展.Yii2-Redis拓展等的安装流程.因为使用的系统是W ...

  5. Redis Windows下安装部署

    下载Redis 在Redis的官网下载页上有各种各样的版本,我这次是在windows上部署的,要去GitHub上下载.我下载的是2.8.12版的,相信大家百度一下就可以搜到,这就是我们需要的: 启动R ...

  6. Redis linux 下安装 及扩展配置

    1.首先在/usr/local/ 创建文件夹 reids Cd /usr/local/ mkdir redis 2.把redis安装包放在redis目录下面进行解压phpredis-2.2.4.tar ...

  7. linux php redis扩展的安装和redis服务的安装

    一.php redis扩展的安装 wget http://pecl.php.net/get/redis-2.2.7.tgztar zvxf redis-2.2.7.tgzcd redis-2.2.7/ ...

  8. Redis介绍以及安装(Linux)

    Redis介绍以及安装(Linux) redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的 ...

  9. redis的简单安装配置

    一.简介 Redis是一种高级key-value数据库,数据可以持久化,支持的数据类型很丰富,有字符串,哈希,链表,集合和有序集合5种数据类型 Redis支持在服务器端计算集合的并,交和补集(diff ...

随机推荐

  1. Kubernetes系列02—Kubernetes设计架构和设计理念

    本文收录在容器技术学习系列文章总目录 1.Kubernetes设计架构 Kubernetes集群包含有节点代理kubelet和Master组件(APIs, scheduler, etc),一切都基于分 ...

  2. HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端

    协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...

  3. 日志模块logging用法

    一.常用日志记录场景及最佳解决方案: 日志记录方式 最佳记录日志方案 普通情况下,在控制台显示输出 print() 报告正常程序操作过程中发生的事件 logging.info()(或者更详细的logg ...

  4. JavaScript 脚本运行方式

    引用外部脚本文件 <script src="/path/to/example.js"></script> 页面内联式 <script> aler ...

  5. C#图片裁切,生成新图片

    /// 图片裁剪,生成新图,保存在同一目录下,名字加_new,格式1.png 新图1_new.png /// </summary> /// <param name="pic ...

  6. Oracle day04 DML_事务_序列_视图_数据类型_DDL

    DMLinsert关键字作用:往表中插入一条(多条)数据 语法1:元祖值式的插入语法1: insert into tablename(column1,column2,...,columnN) valu ...

  7. JavaWeb学习日记----SAX解析XML

    1.SAX解析XML文档的方式: 与DOM方式解析不同,DOM方式解析是根据XML的层级结构在内存中分配一个树形结构,把xml的标签,属性和文本都封装成对象.优点是可以很方便实现增删改操作.缺点是,如 ...

  8. 程序员50题(JS版本)(三)

    程序11:判断101~200之间有多少个素数,并输出所有素数 for(var i=101,num=0;i<=200;i++){ for(var j=2;j<=i;j++){ if(i%j= ...

  9. 把vux中的@font-face为base64格式的字体信息解码成可用的字体文件

    在最近移动端项目中用到了vux,感觉用着还习惯,当把vux使用到PC端的时候出现了IE浏览器出现,这样的错误信息: CSS3114: @font-face 未能完成 OpenType 嵌入权限检查.权 ...

  10. JS table内容转成二维数组,支持colspan和rowspan

    思路:1.先初始化colspan的数据到数组2.根据rowspan和colspan计算th和td的矩阵二次填充数组 说明:需要引用到第三方库jQuery,table中的th和td行和列跨度必须正确 & ...