Save data to MySQL

    Initiate MySQL table:

    1. create "test" database:
    2. create "t_mqtt_msg" table:
    3. USE test;

    Create a rule:

    Go to EMQX DashboardSave data to MySQL - 图2 (opens new window), select the “rule” tab on the menu to the left.

    Select “message.publish”, then type in the following SQL:

      Bind an action:

      Click on the “+ Add” button under “Action Handler”, and then select “Data to MySQL” in the pop-up dialog window.

      Fill in the parameters required by the action:

      Two parameters is required by action “Data to MySQL”:

      1). SQL template. SQL template is the sql command you’d like to run when the action is triggered. In this example we’ll insert a message into mysql, so type in the following sql template:

      Before data is inserted into the table, placeholders like ${key} will be replaced by the corresponding values.

      image

      2). Bind a resource to the action. Since the dropdown list “Resource” is empty for now, we create a new resource by clicking on the “New Resource” to the top right, and then select “MySQL”:

      Configure the resource:

      image

      Back to the “Actions” dialog, and then click on the “Confirm” button.

      Back to the creating rule page, then click on “Create” button. The rule we created will be show in the rule list:

      image

      We have finished, testing the rule by sending an MQTT message to emqx:

      1. >
      2. > QoS: 1
      3. >

      Then inspect the MySQL table, verify a new record has been inserted: