Get subscription relationship from PostgreSQL
Support PostgreSQL 13 and below versions
Set up the PostgreSQL database, and take MacOS X as an example:
Create the mqtt database:
Create the mqtt_sub table:
TIP
The subscription relationship table structure cannot be modified. Please use the above SQL statement to create
Create rules:
Open EMQX Dashboard (opens new window) and select the “Rules” tab on the left.
Then fill in the rule SQL:
Select “Add Action” on the “Response Action” interface, and then select “Get Subscription List from PostgreSQL” in the “Add Action” drop-down box
Fill in the action parameters:
The action of “Get subscription list from PostgreSQL” requires one parameter:
1). Associated resources. The resource drop-down box is empty now, and you can click “New” in the upper right corner to create a PostgreSQL resource:
The “Create Resource” dialog box pops up
Fill in the resource configuration:
Fill in the real PostgreSQL server address and the values corresponding to other configurations, and then click the “Test Connection” button to ensure that the connection test is successful.
Return to the response action interface and click “OK”.
Return to the rule creation interface and click “Create”.
The rule has been created, and you can insert a subscription relationship into PostgreSQL through “psql”:
Log in to the device whose clientid is test via Dashboard:
查看“订阅”列表,可以看到 Broker 从 PostgreSQL 里面获取到订阅关系,并代理设备订阅: