redis 基本原理及安装
一:什么是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 基本原理及安装的更多相关文章
- redis常用服务安装部署
常用服务安装部署 学了前面的Linux基础,想必童鞋们是不是更感兴趣了?接下来就学习常用服务部署吧! 安装环境: centos7 + vmware + xshell 即将登场的是: mysql(m ...
- 玩转Redis之Window安装使用(干货)
距离上次定Gc.Db框架,好久没有更新博客了,今日没什么事,就打算就Redis写点东西. Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理.它支持字符 ...
- redis集群安装
1.普通安装 安装环境 centos 6.8 1.安装必要包 yum install gcc yum -y install wget 2.下载解压 wget http://download.redis ...
- Yii2框架与MongoDB拓展、Redis拓展的安装流程
@author 周煦辰 2016-03-21 这段时间新上了一个项目,使用的是Yii2框架.这里记录一下Yii2框架.Yii2-Mongo拓展.Yii2-Redis拓展等的安装流程.因为使用的系统是W ...
- Redis Windows下安装部署
下载Redis 在Redis的官网下载页上有各种各样的版本,我这次是在windows上部署的,要去GitHub上下载.我下载的是2.8.12版的,相信大家百度一下就可以搜到,这就是我们需要的: 启动R ...
- Redis linux 下安装 及扩展配置
1.首先在/usr/local/ 创建文件夹 reids Cd /usr/local/ mkdir redis 2.把redis安装包放在redis目录下面进行解压phpredis-2.2.4.tar ...
- 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/ ...
- Redis介绍以及安装(Linux)
Redis介绍以及安装(Linux) redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的 ...
- redis的简单安装配置
一.简介 Redis是一种高级key-value数据库,数据可以持久化,支持的数据类型很丰富,有字符串,哈希,链表,集合和有序集合5种数据类型 Redis支持在服务器端计算集合的并,交和补集(diff ...
随机推荐
- Kali~2018安装后的配置
今天,物理机上成功的安装了Kali Linux系统,但是要想用的顺手还需要花费许多时间和精力,下面就是我对它的养成之路. 一.添加普通用户 useradd -m -G sudo,video,audio ...
- ldap配置系列三:grafana集成ldap
ldap配置系列三:grafana集成ldap grafana的简介 grafana是一个类似kibana的东西,是对来自各种数据源的数据进行实时展示的平台,拥有这牛逼的外观.给一个官方的demo体验 ...
- ansible学习系列2-ansible常用模块使用
1. 查看支持的模块 [root@localhost ~]# ansible-doc -l 这里我们看下ansible的支持的模块个数 [root@localhost ~]# ansible-doc ...
- 五一之起一台服务器玩玩-u盘安装centos
之前淘宝买的300块钱笔记本,就是拿来练手的,但是命令基本都知道了,不来练手,学习下去就没有动力了啊. 对于新的笔记本,我们怎么安装系统呢?能去官网就去官网,你绝对没有体验过睡一晚早上起来服务器就被黑 ...
- linux centos6.5安装KVM
1.安装kvm,vnc软件 http://www.server110.com/kvm/201404/10467.html yum install kvm,缺啥补啥 yum install kvm km ...
- .Net 使用爬虫下载网络图片到本地磁盘
准备: 1.新建控制台项目 2.引用System.Drawing类库 3.安装HtmlAgilityPack 1.5.2.0 4.如果不会XPath语法的话,建议简单看下 代码: static voi ...
- redo/declare/typeset
变量设置功能,都是由命令行直接设置的,那么,可不可以让使用者能够经由键盘输入? 什么意思呢?是否记得某些程序执行的过程当中,会等待使用者输入 "yes/no"之类的讯息啊? 在 b ...
- Java高并发--原子性可见性有序性
Java高并发--原子性可见性有序性 主要是学习慕课网实战视频<Java并发编程入门与高并发面试>的笔记 原子性:指一个操作不可中断,一个线程一旦开始,直到执行完成都不会被其他线程干扰.换 ...
- Python全栈之路(目录) - 含资料(持续更新)
一. Python全栈之路 - 目录 Python基础 Python进阶 网络编程 并发编程 前端 数据库 Python Web框架之Django 前端框架之Vue Linux Flask+智能玩具 ...
- jsonp promise 封装
import originJsonp from 'jsonp' export default function jsonp(url, data, option) { url += (url.index ...