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 相关文章推荐
Pyramid添加Middleware的方法实例
Nov 27 Python
跟老齐学Python之大话题小函数(1)
Oct 10 Python
Python操作MySQL数据库9个实用实例
Dec 11 Python
Python模块包中__init__.py文件功能分析
Jun 14 Python
Python 异常处理的实例详解
Sep 11 Python
Python中拆分字符串的操作方法
Jul 23 Python
浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法
Oct 25 Python
python进程的状态、创建及使用方法详解
Dec 06 Python
使用Python三角函数公式计算三角形的夹角案例
Apr 15 Python
利用python进行文件操作
Dec 04 Python
Python3+PyCharm+Django+Django REST framework配置与简单开发教程
Feb 16 Python
Python基础教程,Python入门教程(超详细)
Jun 24 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
php auth_http类库进行身份效验
2009/03/19 PHP
PHP中使用gettext来支持多语言的方法
2011/05/02 PHP
Yii框架创建cronjob定时任务的方法分析
2017/05/23 PHP
Yii框架响应组件用法实例分析
2019/09/04 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
javascript XMLHttpRequest对象全面剖析
2010/04/24 Javascript
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
Jquery绑定事件(bind和live的区别介绍)
2013/08/23 Javascript
setInterval与clearInterval的使用示例代码
2014/01/28 Javascript
JavaScript获取元素尺寸和大小操作总结
2015/02/27 Javascript
Javascript之BOM(window对象)详解
2016/05/25 Javascript
JavaScript如何一次性展示几万条数据
2017/03/30 Javascript
jQuery实现动态添加、删除按钮及input输入框的方法
2017/04/27 jQuery
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
vue+webpack中配置ESLint
2018/11/07 Javascript
vue实现按需加载组件及异步组件功能
2019/05/27 Javascript
echarts统计x轴区间的数值实例代码详解
2019/07/07 Javascript
js 计数排序的实现示例(升级版)
2020/01/12 Javascript
JavaScript闭包原理与用法学习笔记
2020/05/29 Javascript
Pandas 按索引合并数据集的方法
2018/11/15 Python
python实现杨氏矩阵查找
2019/03/02 Python
Django使用unittest模块进行单元测试过程解析
2019/08/02 Python
Pyspark读取parquet数据过程解析
2020/03/27 Python
python的flask框架难学吗
2020/07/31 Python
自1926年以来就为冰岛保持温暖:66°North
2020/11/27 全球购物
家长评语大全
2014/01/22 职场文书
结婚保证书范文
2014/04/29 职场文书
个人租房协议书范本
2014/09/30 职场文书
教师政风行风评议心得体会
2014/10/21 职场文书
计算机专业自荐信
2015/03/05 职场文书
Python数据分析入门之数据读取与存储
2021/05/13 Python
如何自己动手写SQL执行引擎
2021/06/02 MySQL
关于CSS浮动与取消浮动的问题
2021/06/28 HTML / CSS
Logback 使用TurboFilter实现日志级别等内容的动态修改操作
2021/08/30 Java/Android
20180830晚上第一届KSL半决赛 雨神vs解冻(二龙 三炮解说)
2022/04/01 星际争霸