理解 Redis(2) - 手把手教你理清 Redis 安装全过程
Redis 官网 https://redis.io/
之前学习 Redis 学了好多次, 下载安装也都按照教程或官网文档弄过, 但是对于安装过程一直有点迷糊, 感觉稀里糊涂地就好了, 就可以用了. 这种迷糊得到的结果就是一旦遇到一点问题就会不知就里.
今天学到了安装的过程, 记录一下, 顺便分享~~~ but, only for mac 系统.
首先, 安装的位置, 可以自定义, 你可以放在任何位置, 比如桌面上新建一个 redis 文件夹都是可以的. 但是根据常规, mac 系统里安装的程序都是放在 usr/bin 文件夹里. 所以在终端执行以下命令:
进入 /usr/local 文件夹:
cd /usr/local
新建一个 redis 文件夹:
mkdir redis
这时大家可以在 finder 里打开 /usr/local/redis 文件夹, 看下目前文件夹是空的.
下载 redis 压缩包:
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
这时再看 finder 里的 redis 文件夹, 就会发现多了一个压缩文件. 后面走的每一步都可以对照着看文件夹里的变化, 就可以很清楚整个安装过程了.
解压:
tar xzf redis-5.0.3.tar.gz
打开解压后的文件夹:
cd redis-5.0.3
安装:
make
测试(可选操作):
make test
开启 redis 服务:
redis-5.0.3 src/redis-server
18073:C 20 Feb 2019 14:48:14.525 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
18073:C 20 Feb 2019 14:48:14.526 # Redis version=5.0.3, bits=64, commit=00000000, modified=0, pid=18073, just started
18073:C 20 Feb 2019 14:48:14.526 # Warning: no config file specified, using the default config. In order to specify a config file use src/redis-server /path/to/redis.conf
18073:M 20 Feb 2019 14:48:14.529 * Increased maximum number of open files to 10032 (it was originally set to 4864).
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 5.0.3 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 18073
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
18073:M 20 Feb 2019 14:48:14.537 # Server initialized
18073:M 20 Feb 2019 14:48:14.537 * Ready to accept connections
然后再另外开启一个窗口, 进入 redis 安装文件所在的位置:
cd /usr/local/redis/redis-5.0.3
开启 redis 客户端:
redis-5.0.3 src/redis-cli
127.0.0.1:6379>
在命令行输入 ping, 得到 PONG, 证明一切运行正常.
127.0.0.1:6379> ping
PONG
以上, 就是 redis 的下载安装过程, 下面还有最后一个问题, 就是如果我们退出当前客户端
127.0.0.1:6379> exit
再随便进入一个非 redis 的安装包所在的目录, 比如 ~ 家目录:
➜ redis-5.0.3 cd ~
然后再执行 redis-cli, 就会报错, 因为目前的 redis 命令不能全局应用. 这时, 可以这样解决:
首先, 还是进入 redis 的安装文件夹
~ cd /usr/local/redis/redis-5.0.3
执行以下命令, 并输入密码:
➜ redis-5.0.3 sudo make install
Password:
cd src && /Library/Developer/CommandLineTools/usr/bin/make install
Hint: It's a good idea to run 'make test' ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
之后就可以在全局任何位置执行 redis-server 和 redis-cli 命令啦......
新开一个终端窗口, 执行以下命令, 就可以在新窗口中监控另一个窗口执行的所有命令:
➜ ~ redis-cli monitor
OK
1550678835.524638 [0 127.0.0.1:59846] "keys" "*"
1550678855.806835 [0 127.0.0.1:59846] "del" "sut-1"
1550678871.371261 [0 127.0.0.1:59846] "keys" "*"
理解 Redis(2) - 手把手教你理清 Redis 安装全过程的更多相关文章
- 手把手教你用redis实现一个简单的mq消息队列(java)
众所周知,消息队列是应用系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构.目前使用较多的消息队列有 ActiveMQ,RabbitMQ,Zero ...
- 手把手教你Chrome浏览器安装Postman(含下载云盘链接)【转载】
转载自:http://www.ljwit.com/archives/php/278.html 说明: Postman不多介绍,是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件.本文主要 ...
- 五个步骤教你理清Redis与Memcached的区别
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由Super发表于云+社区专栏 memcached和redis,作为近些年最常用的缓存服务器,相信大家对它们再熟悉不过了.前两年还在学校 ...
- 手把手教你部署 Redis Cluster
环境准备 阿里云申请3台ECS,如下: 序号 内网IP OS A 172.16.190.78 CentOS 7.6 B 172.16.242.36 CentOS 7.6 C 172.16.190.77 ...
- 分布式锁没那么难,手把手教你实现 Redis 分布锁!|保姆级教程
书接上文 上篇文章「MySQL 可重复读,差点就让我背上了一个 P0 事故!」发布之后,收到很多小伙伴们的留言,从中又学习到很多,总结一下. 上篇文章可能举得例子有点不恰当,导致有些小伙伴没看懂为什么 ...
- 手把手教你 GitLab 的安装及使用
前言 新入职公司,发现公司还在使用落后生产工具 svn,由于重度使用过 svn 和 git ,知道这两个工具之间的差异,已经在使用 git 的路上越走越远. 于是,跟上级强烈建议让我在公司推行 git ...
- 手把手教你 GitLab 的安装及使用(转)
深山田 关注 2018.01.30 22:58 字数 1696 阅读 15559评论 2喜欢 15 前言 新入职公司,发现公司还在使用落后生产工具 svn,由于重度使用过 svn 和 git ,知道这 ...
- 手把手教你如何逐步安装OpenStack
[TechTarget中国原创] 尽管OpenStack官方提供的在线安装教程和分步向导能够为管理员提供很大帮助,但是依然存在很多不尽如人意的地方.因此在Ubuntu上安装OpenStack的过程当中 ...
- 手把手教你SonarQube入门安装与使用
简介 Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. Sonar 不只是一个质量数据报告工具,更是代码质量管理平台. 支持Java, C#, C/C++, PL/SQL, C ...
随机推荐
- java == 与 equals 相同与不同点
java中与很多有意思又值得深究的点. 写这篇文章呢,是由于在百度知道中看到一个问题:怎样比较两个对象是否相同.这又使我想到了另外一个问题,== 和 equals有什么不同?写了几行代码,看了几篇文章 ...
- centos-ftp搭建
参照https://blog.csdn.net/a735834365/article/details/80622105 https://blog.csdn.net/a735834365/article ...
- Qt介绍1---QPA(Qt Platform Abstraction)
Qt是一个夸平台的库(一直宣称“Qt everywhere”),但是Qt底层不是夸平台的.比如:Qt中Gui部件的核心类QWidget,该类除了qwidget.h 和 qwidget.cpp两个原文件 ...
- EDK II之USB总线驱动的实现框架
本文简单介绍一下UEFI中USB驱动的实现框架: 下图是USBD向上层驱动提供的接口: 1.从图中我们可以看出,USBDI的实现主要通过调用HCDI实现 和 访问USB_INTERFACE结构体(该结 ...
- K8S学习笔记之将Google的gcr.io、k8s.gcr.io 换为国内镜像
0x00 添加docker官方的国内镜像 sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ...
- Java Thread.yield详解
这是Java中的一种线程让步方法,让Java中的线程从执行状态变成就绪状态,然后处理器再从就绪队列中挑选线程进行执行(优先级大的,被挑选的概率较大),这种转换也不确定,让或者不让都是取决与处理器,线程 ...
- jQuery的基本过滤器与jQuery实现隔行换色实例
没加过滤器之前: 加过滤器之后: 总的代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8& ...
- 教你用Visual Studio Code做PHP开发 - 微软官方工具,IDE中的黑马
转载于:http://bbs.wfun.com/thread-902655-1-1.html,仅供自己备忘 本文为我在智机网的原创 ] 关于Visual Studio Code,可能有的开发者很陌生 ...
- vue 起步
vue 官网 目前最火的前端框架当属Vue.js了,很多使用过vue的程序员这样评价它,“vue.js兼具angular.js和react.js的优点,并剔除了它们的缺点”.授予了这么高的评价的vue ...
- Python中对象的引用与复制
在python进行像b = a这样的赋值时,只会创建一个对a的新引用,使a的引用计数加1,而不会创建新的对象: >>> a = 'xyz' >>> import s ...