mac系统下Redis安装和使用步骤详解


Posted in Python onJuly 09, 2019

前言

本篇文章主要讲述了Mac下Redis的安装和使用的经验,并将python如何操作Redis做了简单介绍。

1. redis 安装 和启动

1.1 用brew安装

1.查看系统是否已经安装了Redis

brew info redis

这个命令会展示此系统下的redis信息,如果没有安装,会展示not install

2.输入命令安装Redis

brew install redis

可能需要等一会,系统下载完redis的包,会自动进行安装

3.启动redis

brew services start redis

这个命令会在后台启动redis服务,并且每一次登录系统,都会自动重启

4.假如你不需要后台启动服务,你可以使用配置文件启动:

redis-server /usr/local/etc/redis.conf

这个命令会读取redis的配置文件,并且在redis运行的过程中也会看到实时的日志打印。启动成功,如下所示:

11862:C 20 Dec 2018 18:52:29.755 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
11862:C 20 Dec 2018 18:52:29.755 # Redis version=5.0.2, bits=64, commit=00000000, modified=0, pid=11862, just started
11862:C 20 Dec 2018 18:52:29.755 # Configuration loaded
11862:M 20 Dec 2018 18:52:29.756 * Increased maximum number of open files to 10032 (it was originally set to 4864).
        _._
      _.-``__ ''-._
   _.-``  `. `_. ''-._      Redis 5.0.2 (00000000/0) 64 bit
 .-`` .-```. ```\/  _.,_ ''-._
 (  '   ,    .-` | `,  )   Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|   Port: 6379
 |  `-._  `._  /   _.-'  |   PID: 11862
 `-._  `-._ `-./ _.-'  _.-'
 |`-._`-._  `-.__.-'  _.-'_.-'|
 |  `-._`-._    _.-'_.-'  |      http://redis.io
 `-._  `-._`-.__.-'_.-'  _.-'
 |`-._`-._  `-.__.-'  _.-'_.-'|
 |  `-._`-._    _.-'_.-'  |
 `-._  `-._`-.__.-'_.-'  _.-'
   `-._  `-.__.-'  _.-'
     `-._    _.-'
       `-.__.-'

11862:M 20 Dec 2018 18:52:29.757 # Server initialized

5.连接redis

需要新打开一个终端,再输入如下的命令:

# 不需要身份认证时
redis-cli -p 6379 -h 127.0.0.1

# 需要身份认证时,输入如下命令
redis-cli -p 6379 -h 127.0.0.1 -a yourpassword
# or
redis-cli -p 6379 -h 127.0.0.1
# 登录进去之后再进行身份认证
127.0.0.1:6379> auth 0903

1.2 官网下载安装包进行安装

下载稳定版安装包:redis官网下载,选择Stable版本进行安装

下载完成后进入到安装包的目录,依次输入如下的命令:

# 解压
tar zxvf redis-4.0.9.tar.gz
# 移动
mv redis-4.0.9 /usr/local/
# 切换到目录
cd /usr/local/redis-4.0.9/
# 编译测试
sudo make test
# 编译安装
sudo make install

redis的启动和停止

redis-server 和 redis-cli 位于 redis-4.0.9/src 目录下 :

  • 启动redis:redis-server,就能直接启动成功;如果想要加上配置文件启动可以:redis-server /etc/redis.conf
  • 终端登录redis:参看方法一步骤5

2. python操作redis

说明:本文章采用的开源库redis来操作Redis数据库,开源项目参考:https://github.com/andymccurdy/redis-py

2.1 简单的使用

>>> import redis
>>> r = redis.Redis(host='localhost', port=6379, db=0)
>>> r.set('foo', 'bar')
True
>>> r.get('foo')
'bar'

2.2 订阅功能使用

服务端

from redis import Redis

xtredis = Redis(host='127.0.0.1', port=6379, password='foobared')

for i in range(5):
  xtredis.publish('email', 'message: Message{}'.format(i))

客户端

def subscribe_test():
  """
  订阅操作
  :return:
  """
  ps = xtredis.pubsub()
  # 订阅channel
  ps.subscribe('email')
  while True:
    for item in ps.listen():
      print(item)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3.x中自定义比较函数
Apr 24 Python
Windows下Python使用Pandas模块操作Excel文件的教程
May 31 Python
Python json 错误xx is not JSON serializable解决办法
Mar 15 Python
Python matplotlib绘图可视化知识点整理(小结)
Mar 16 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
python覆盖写入,追加写入的实例
Jun 26 Python
实现Python与STM32通信方式
Dec 18 Python
Python定义函数时参数有默认值问题解决
Dec 19 Python
python统计字符的个数代码实例
Feb 07 Python
利用Tensorboard绘制网络识别准确率和loss曲线实例
Feb 15 Python
如何基于python实现不邻接植花
May 01 Python
Python实现UDP程序通信过程图解
May 15 Python
使用python将多个excel文件合并到同一个文件的方法
Jul 09 #Python
python获取点击的坐标画图形的方法
Jul 09 #Python
Pandas之排序函数sort_values()的实现
Jul 09 #Python
python爬虫之快速对js内容进行破解
Jul 09 #Python
python 求某条线上特定x值或y值的点坐标方法
Jul 09 #Python
python将字符串转换成json的方法小结
Jul 09 #Python
Python绘制堆叠柱状图的实例
Jul 09 #Python
You might like
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
6种php上传图片重命名的方法实例
2013/11/04 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
2019/12/12 PHP
Visual Studio中的jQuery智能提示设置方法
2010/03/27 Javascript
有关DOM元素与事件的3个谜题
2010/11/11 Javascript
JS 实现导航栏悬停效果(续2)
2013/09/24 Javascript
jQuery中:last选择器用法实例
2014/12/30 Javascript
javascript实现控制的多级下拉菜单
2015/07/05 Javascript
jQuery 1.9.1源码分析系列(十四)之常用jQuery工具
2015/12/02 Javascript
BootStrap3学习笔记(一)之网格系统
2016/05/20 Javascript
js省市县三级联动效果实例
2020/04/15 Javascript
输入法的回车与消息发送快捷键回车的冲突解决方法
2016/08/09 Javascript
jQuery焦点图左右转换效果
2016/12/12 Javascript
纯JS实现简单的日历
2017/06/26 Javascript
Angular2 组件间通过@Input @Output通讯示例
2017/08/24 Javascript
Vue.JS项目中5个经典Vuex插件
2017/11/28 Javascript
详解Vue2.0组件的继承与扩展
2018/11/23 Javascript
ES6入门教程之Array.from()方法
2019/03/23 Javascript
微信小程序 如何获取网络状态
2019/07/26 Javascript
Python反转序列的方法实例分析
2018/03/21 Python
Python 比较文本相似性的方法(difflib,Levenshtein)
2018/10/15 Python
在Python中画图(基于Jupyter notebook的魔法函数)
2019/10/28 Python
python-视频分帧&多帧合成视频实例
2019/12/10 Python
pycharm安装及如何导入numpy
2020/04/03 Python
python dict如何定义
2020/09/02 Python
使用CSS3的背景渐变Text Gradient 创建文字颜色渐变
2014/08/19 HTML / CSS
如何在网站上添加谷歌定位信息
2016/04/16 HTML / CSS
Html5调用手机摄像头并实现人脸识别的实现
2018/12/21 HTML / CSS
美国婚戒购物网站:Anjays Designs
2017/06/28 全球购物
工商管理应届生求职信
2013/10/07 职场文书
四风批评与自我批评范文
2014/10/14 职场文书
学习走群众路线心得体会
2014/11/05 职场文书
小学教师自我评价
2015/03/04 职场文书
Python读取文件夹下的所有文件实例代码
2021/04/02 Python
mybatis 解决从列名到属性名的自动映射失败问题
2021/06/30 Java/Android