我在Mac电脑上搭建时遇到了一些不同于网上大部分情况的问题,特此分享给可能也有遇到相同情况又找不到解决方法的人。

我的电脑系统:macOS Mojave 10.14.3。

paho-mqtt 的安装

首先,需要下载 paho-mqtt 模块(也有很多别的 mqtt 模块,在 pypi.org 网站上可以搜索到,但我感觉这个模块的相关资料全一些) ,直接运行 pip install paho-mqtt 即可安装,不过根据官网提示,我选择在 virtualenv 中运行。【1】我运行的指令如下:

virtualenv paho-mqtt
source paho-mqtt/bin/activate
pip install paho-mqtt
git clone https://github.com/eclipse/paho.mqtt.python
cd paho.mqtt.python
python setup.py install

注意:以后再运行时都需要先执行 source paho-mqtt/bin/activate ,正常情况下如下图所示。

mqtt 代理(broker) mosquitto 的安装

我查阅到的大多数都是安装 mosquitto,有比较多的安装介绍,于是我就选择安装这个。

终端执行 brew install mosquitto 就能便捷安装。

显示安装成功后,需要修改一下配置文件。我查看的大多是文章介绍包括我自己的终端提示都说了默认配置文件 mosquitto.conf 在 /usr/local/etc/mosquitto 中。但我的对应的 /usr/local/etc 下根本没有 mosquitto 这个文件夹。这个问题困扰了我很久。终端显示的提示如下:

To have launchd start mosquitto now and restart at login:

  brew services start mosquitto

Or, if you don't want/need a background service you can just run:

  mosquitto -c /usr/local/etc/mosquitto/mosquitto.conf

最后终于在这个文章的启示下成功找到配置文件。【2】地址是usr⁩/⁨local⁩/Cellar⁩/⁨mosquitto⁩/1.5.8⁩/⁨etc⁩/⁨mosquitto⁩。需要在配置文件 mosquitto.conf 中添加IP地址,如下图。默认 port 是1883。

启动 mosquitto 服务器

一般的操作是:

  • 停止服务 brew services stop mosquitto
  • 启动服务  brew services start mosquitto

但是我执行启动命令后报错了。在前面提到的文章的启示下,我找到可行的指令,如下(1.5.8是我所使用的 mosquitto 的最新版本,大家自行替换自己使用的版本):

cd /usr/local/Cellar/mosquitto/1.5./sbin
./mosquitto -c /usr/local/Cellar/mosquitto/1.5./etc/mosquitto/mosquitto.conf -d

成功后效果如下:

接着,你就可以运行你的 python 文件了。

参考资料

【1】https://pypi.org/project/paho-mqtt/#installation

【2】https://www.jianshu.com/p/a48598e9b76e (《Mac安装MQTT服务器》)

Python:Mac 下 MQTT 服务器 Mosquitto 的配置的更多相关文章

  1. Mac下Android studio 之NDK配置教程(一)

    Mac下Android studio 之NDK配置教程(一) 1.概述 近期项目全线转移到Mac下使用使用Android studio开发. 遇到关键代码封装到 ***native***层,此时在wi ...

  2. MAC 下配置MQTT 服务器Mosquitto

    一.简单介绍   1.MQTT是IBM开发的一个即时通讯协议.MQTT是面向M2M和物联网的连接协议,采用轻量级发布和订阅消息传输机制.    2.Mosquitto是一款实现了 MQTT v3.1 ...

  3. Mac下Apache服务器和webDav服务器快速配置

    当自己在家敲代码需要发请求时,就可以配置本地Apache,Mac电脑自带的服务器.这个比windows上的本地服务器还要好用,下面写下最快速配置方案. 0.在开始之前需要给自己的电脑设置下开机密码,想 ...

  4. CentOS6.4下Git服务器Gitosis安装配置

    1.安装GIt: #yum install git 2.增加一个git用户 #useradd git #passwd git 3.创建git仓库存储目录,设置权限 #mkdir /home/git/r ...

  5. [转]Mac下cocos2dx-3.2+Xcode环境配置和项目创建

    原文:http://blog.csdn.net/u012200908/article/details/38070885 这是有关环境配置的第二篇教程,第一篇讲的是win8下的环境配置.这里我们使用C+ ...

  6. Mac下Virtual Box Host-Only网络配置

    Mac下的虚拟机其实有很多,Parallels.VMware Fusion.Virtual Box都不错,Parallels是目前试过感觉最好的,Fusion装64位系统驱动支持似乎不完善,而且混合模 ...

  7. MAC下用homebrew安装及配置apache、php和mysql

    我们用到php运行环境的时候总喜欢用集成包,其实在mac下,用homebrew也可以很快的安装这些东西,配置也很简单. homebrew homebrew是mac下的一个包安装管理工具,使用非常简单方 ...

  8. mac下Android开发环境的配置

    近似一天的时间,终于把Android环境配置好了. 总结:主要问题在于android的网站是国外,下载东西的时候需要vpn才可以.所以会出现各种各样的问题. 环境:Android Studio + S ...

  9. Ubuntu 16.04下Samba服务器搭建和配置(配截图)

    一.相关介绍 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和 ...

随机推荐

  1. STL源码剖析-vector

    STL(Standard Template Library) C++标准模板库,acm选手一定对它不陌生,除了算法,那几乎是“吃饭的家伙了”.我们使用库函数非常方便,且非常高效(相对于自己实现来说). ...

  2. Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. To disable safe mode, toggle the option in Preferences -> SQL Editor and recon

    数据库默认模式是主键不可进行修改操作,所以需要运行以下语句. SET SQL_SAFE_UPDATES = 0;  -- 出现error1175使用.

  3. Postgresql数据库部署之:Postgresql 存在session 会话不能删除数据库

    SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname='数据库名' AND pid<>pg_backen ...

  4. About A Scam

    事件起因 本篇记录一个我遇到一个诈骗故事. 这两年我陆续有收到邮件,内容为有一大笔遗产我可以继承,让我提供银行卡号,身份证号相关信息. 后面邮件的内容就变为,有一笔公益款项,可以用我名义去管理,让我提 ...

  5. 定义工作,解读自我——IT帮2019年2月线下活动回顾

    本次活动是在北京和深圳两个分站同步进行的,IT团建委员会负责策划和组织,北京站由帮主周老师.王兵老师主导,深圳站由副帮主兼深圳站长陈焕老师主导. 几位老师都是有着丰富的工作经历和人生体验的导师,他们不 ...

  6. Linux云计算运维-MySQL

    0.建初心 优秀DBA的素质 1.人品,不做某些事情2.严谨,运行命令前深思熟虑,三思而后行,即使是依据select3.细心,严格按照步骤一步一步执行,减少出错4.心态,遇到灾难,首先要稳住,不慌张, ...

  7. vps install ss

    1.install ss yum install python-setuptools easy_install pip pip install shadowsocks 2.config ss (sin ...

  8. QPen

    Help on class QPen in module PyQt5.QtGui: class QPen(sip.simplewrapper) |  QPen() |  QPen(Qt.PenStyl ...

  9. FreeHttp1.1升级说明

    一.升级方法 下载新版本插件 https://files.cnblogs.com/files/lulianqi/FreeHttp1.1.zip  或 http://lulianqi.com/file/ ...

  10. 消息中间件 MQ

    复制粘贴于:https://blog.csdn.net/wqc19920906/article/details/82193316 一.消息中间件相关知识 1.概述 消息队列已经逐渐成为企业IT系统内部 ...