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 相关文章推荐
详解Python编程中基本的数学计算使用
Feb 04 Python
Python+pandas计算数据相关系数的实例
Jul 03 Python
python的concat等多种用法详解
Nov 28 Python
判断python对象是否可调用的三种方式及其区别详解
Jan 31 Python
Apache,wsgi,django 程序部署配置方法详解
Jul 01 Python
pandas删除行删除列增加行增加列的实现
Jul 06 Python
解决python 读取 log日志的编码问题
Dec 24 Python
pytorch逐元素比较tensor大小实例
Jan 03 Python
Django Channel实时推送与聊天的示例代码
Apr 30 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
Python selenium爬取微信公众号文章代码详解
Aug 12 Python
基于python实现操作redis及消息队列
Aug 27 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里得到前天和昨天的日期的代码
2007/08/16 PHP
Laravel 5框架学习之Eloquent 关系
2015/04/09 PHP
PHP实现的方程求解示例分析
2016/11/11 PHP
PHP检测数据类型的几种方法(总结)
2017/03/04 PHP
PHP实现生成数据字典功能示例
2018/05/24 PHP
php实现每日签到功能
2018/11/29 PHP
MSN消息提示类
2006/09/05 Javascript
JS的IE和Firefox兼容性集锦
2006/12/11 Javascript
js格式化金额可选是否带千分位以及保留精度
2014/01/28 Javascript
jQuery中closest()函数用法实例
2015/01/07 Javascript
Flask中获取小程序Request数据的两种方法
2017/05/12 Javascript
Vue实现动态显示textarea剩余字数
2017/05/22 Javascript
详解使用nvm安装node.js
2017/07/18 Javascript
Vue项目中设置背景图片方法
2018/02/21 Javascript
vue-router路由懒加载的实现(解决vue项目首次加载慢)
2018/08/28 Javascript
vue 指令之气泡提示效果的实现代码
2018/10/18 Javascript
vue.js中使用echarts实现数据动态刷新功能
2019/04/16 Javascript
Vue项目中配置pug解析支持
2019/05/10 Javascript
JavaScript的查询机制LHS和RHS解析
2019/08/16 Javascript
JavaScript自动生成 年月范围 选择功能完整示例【基于jQuery插件】
2019/09/03 jQuery
VUE+elementui面包屑实现动态路由详解
2019/11/04 Javascript
python使用paramiko模块实现ssh远程登陆上传文件并执行
2014/01/27 Python
python实现猜数字游戏(无重复数字)示例分享
2014/03/29 Python
使用Python的Django框架实现事务交易管理的教程
2015/04/20 Python
python3+PyQt5图形项的自定义和交互 python3实现page Designer应用程序
2020/07/20 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
python 表格打印代码实例解析
2019/10/12 Python
解决TensorFlow调用Keras库函数存在的问题
2020/07/06 Python
毕业生找工作的自我评价
2013/10/18 职场文书
关爱老人标语
2014/06/21 职场文书
建筑安全生产目标责任书
2014/07/23 职场文书
婚前协议书标准版
2014/10/19 职场文书
企业群众路线教育实践活动心得体会
2014/11/03 职场文书
2014年人事科工作总结
2014/11/19 职场文书
一年级语文下册复习计划
2015/01/17 职场文书
面试官问我Mysql的存储引擎了解多少
2022/08/05 MySQL