一:什么是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. ARP协议分析

    一.ARP概述 网络中所有的协议(HTTP.URL.FTP.TELNET.TCP.UDP.ARP ······)都包含在TCP/IP协议栈中,从使用上来看:其中大部分协议都是大家平常上网所接触到的,不 ...

  2. 痞子衡嵌入式:第一本Git命令教程(4)- 转移(add/rm/mv)

    今天是Git系列课程第四课,上一课我们在Git空间里做了一些文件改动并且知道了如何利用Git查看这些变动,今天痞子衡要讲的是将这些变动提交到Git本地仓库前的准备工作. Git仓库目录下的文件改动操作 ...

  3. JaveWeb学习之Servlet(二):ServletConfig和ServletContext

    原文同步发表至个人博客[夜月归途] 原文链接:http://www.guitu18.com/se/java/2018-07-26/20.html 作者:夜月归途 出处:http://www.guitu ...

  4. 【.NET Core项目实战-统一认证平台】第十四章 授权篇-自定义授权方式

    [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章我介绍了如何强制令牌过期的实现,相信大家对IdentityServer4的验证流程有了更深的了解,本篇我将介绍如何使用自定义的授权方 ...

  5. 解决MySQL报错The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents .....

    1.前言 今天在用SpringBoot2.0+MyBatis+MySQL搭建项目开发环境的时候启动项目发现报了一个很奇怪的错,报错内容如下: java.sql.SQLException: The se ...

  6. C# Quartz定时任务corn时间设置详解

    http://cron.qqe2.com/  如果不会 或者想检验自己是否写的对就  通过这个网站 检测 或自动生成 *    *         *     *      *      *      ...

  7. JQuery官方学习资料(译):遍历JQuery对象和非JQuery对象

        JQuery提供了一个对象遍历的Utility方法$.each()和一个JQuery集合遍历方法.each(). $.each()     $.each()是一个通用的方法用来遍历对象和数组, ...

  8. Java中float型最大值大于long型?

    float型在内存中占用的是4个字节的空间,而long型占用的是8个字节的空间. 注:float类型的范围是:一3.403E38~3.403E38.而long类型的范围是:-2^63~2^63-1(大 ...

  9. Linux系统启动详解

    系统启动流程 通过下图认识下Linux系统的总体启动流程. BIOS BIOS一般负责检查硬件和查找启动设备. MBR:Boot Code MBR只是一段引导代码,真正的引导是由引导程序去执行的. G ...

  10. 多线程(5)async&await

    .net 4.0的Task已经让我们可以非常简单地使用多线程,并且可以有返回值,也可以支持线程的取消等操作,可谓已经很强大了.但.net 4.5为我们带来了async&await,使得实现多线 ...