日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql t 保存_检查 (调试) - 离线消息保存到 MySQL - 《EMQ X Enterprise v4.1 中文文档》 - 书栈网 · BookStack...

發布時間:2025/3/11 数据库 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql t 保存_检查 (调试) - 离线消息保存到 MySQL - 《EMQ X Enterprise v4.1 中文文档》 - 书栈网 · BookStack... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

離線消息保存到 MySQL

搭建 MySQL 數據庫,并設置用戶名密碼為 root/public,以 MacOS X 為例:

$ brew install mysql

$ brew services start mysql

$ mysql-u root-h localhost-p

ALTER USER'root'@'localhost'IDENTIFIED BY'public';

初始化 MySQL 數據庫:

$ mysql-u root-h localhost-ppublic

create database mqtt;

創建 mqtt_msg 表:

DROP TABLE IF EXISTS`mqtt_msg`;

CREATE TABLE`mqtt_msg`(

`id`int(11)unsignedNOT NULL AUTO_INCREMENT,

`msgid`varchar(64)DEFAULT NULL,

`topic`varchar(180)NOT NULL,

`sender`varchar(64)DEFAULT NULL,

`qos`tinyint(1)NOT NULL DEFAULT'0',

`retain`tinyint(1)DEFAULT NULL,

`payload`blob,

`arrived`datetime NOT NULL,

PRIMARY KEY(`id`),

INDEX topic_index(`id`,`topic`)

)ENGINE=InnoDBDEFAULT CHARSET=utf8MB4;

WARNING

消息表結構不能修改,請使用上面SQL語句創建

創建規則:

然后填寫規則 SQL:

FROM說明

? t/#: 發布者發布消息觸發保存離線消息到MySQL

? $events/session_subscribed: 訂閱者訂閱主題觸發獲取離線消息

? $events/message_acked: 訂閱者回復消息ACK后觸發刪除已經被接收的離線消息

SELECT*FROM"t/#","$events/session_subscribed","$events/message_acked"WHERE topic=~'t/#'

關聯動作:

在“響應動作”界面選擇“添加動作”,然后在“動作”下拉框里選擇“離線消息保存到 MySQL”。

現在資源下拉框為空,可以點擊右上角的 “新建” 來創建一個 MySQL 資源:

彈出一個“創建資源”對話框

填寫資源配置:

填寫真實的 MySQL 服務器地址,其他配置填寫相應的值,然后點擊 “測試連接” 按鈕,確保連接測試成功。

最后點擊 “確定” 按鈕。

返回響應動作界面,點擊 “確認”。

返回規則創建界面,點擊 “創建”。

規則已經創建完成,通過 Dashboard 的 WebSocket 客戶端發一條數據**(發布消息的QoS必須大于0)**:

消息發送后,通過 mysql 查看到消息被保存到 MySQL 里面:

使用另外一個客戶端,訂閱主題 “t/1” (訂閱主題的QoS必須大于0,否則消息會被重復接收):

訂閱后馬上接收到了保存到 MySQL 里面的離線消息:

離線消息被接收后會在 MySQL 中刪除:

總結

以上是生活随笔為你收集整理的mysql t 保存_检查 (调试) - 离线消息保存到 MySQL - 《EMQ X Enterprise v4.1 中文文档》 - 书栈网 · BookStack...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。