移动云平台OneNet之数据可视化View连接本地MySQL数据库
Posted Sunny wen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了移动云平台OneNet之数据可视化View连接本地MySQL数据库相关的知识,希望对你有一定的参考价值。
记录Windows下移动云平台OneNet之数据可视化View连接本地mysql数据库
项目相关背景:最近在写一个关于智慧电网的项目系统,最终发现自己设计的UI实在太丑,于是想利用云平台开放的可视化view模板使得自己的系统更高大上一点,修改好模板之后,因为所有的数据都必须要求是动态的数据,因此就在连接本地数据库的时候出现了问题。
文章目录
前言
问题描述:本地数据库连接后报错
“com.alibaba.druid.pool.GetConnectionTimeoutException: wait milis 2000, active 0, maxActive 8,creating 0, createEmorCount 1”。
原因分析
本地数据库未开启允许外网访问,且内网IP云平台无法访问。
-
本地数据库想要连接到云平台,首先要允许MySQL
端口
(一般来说MySQL默认端口为3306)来通过防火墙,然后给别的IP地址赋予权限
来访问本地数据库。 -
实现公网IP映射,
内网穿透访问MySQL数据库
(在这里我使用花生壳
映射IP,操作简单)
提示:以下是本篇文章正文内容,下面案例可供参考
一、解决方案
1. 允许外网访问本地数据库。
自定义规则允许防火墙通过
端口3306
(分别建立入站规则和出站规则)。
打开高级安全 Windows Defender防火墙
。
点击入站规则—>新建规则(规则类型选择端口
),然后点击下一步。
输入端口号3306
,点击下一步,选择允许连接,一直点击下一步。
最后选择一个卡哇伊的名称,就完成了。
出站规则的建立和入站规则一样。
允许本地MySQL外网访问。
修改mysql配置文件
配置文件my.ini(默认位置为“C:\\ProgramData\\MySQL\\MySQL Server 8.0”)的修改首先要改变读写权限,右击文件,打开文件属性,点击安全来修改用户权限(赋予Users所有权限)。
配置文件my.ini中添加:
1. [mysqld]
2. port = 3306
3. bind-address = 0.0.0.0
然后重新启动mysql服务,执行service mysql restart。
设置mysql用户支持外网访问
登录数据库:
1. mysql -u root -p
然后输入密码。
查询host:
1. mysql> use mysql;
2. mysql> select user,host from user;
数据库默认root的访问ip为localhost,因此先修改访问ip为“%”,即允许所有ip(访问;然后刷新权限。
1. mysql> update user set host='%' where user='root';
2. mysql> flush privileges;
最后授权用户:
注意!!!
这里有一个大坑让我跌进去两天没出来!!!
授权任意主机以用户root和密码rootpwd(你的root密码)连接到mysql服务器。
错误的授权方式(直接赋予权限):
1. mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
2. mysql> flush privileges;
mysql执行会报错!!!
应该分别授权:
1. CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';
2. GRANT ALL ON *.* TO 'root'@'%';
3. ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
4. FLUSH PRIVILEGES; #刷新权限
2. 公网IP映射,内网穿透访问本地MySQL。
###下载花生壳,安装。
新增自定义映射:
在APP内查看域名指向IP(即IP映射地址):
至此,大功告成!!!
PS:如果你的mysql版本在8.0以上还有一个问题需要解决:
服务器时区异常!!!
新版的数据库使用的时区与本地时区有区别,标准时区使用的是Unix元年的时间为起始点到当前时间中间所做的动作。国际标准失去与本地相差 8 个小时。
在数据库名后面加:
1. ?serverTimezone=UTC
即:
最后测试连接:
总结
** 第一次在CSDN记录我的小趴菜日常,希望能够帮到有用的朋友,各位开发区大佬嘴下留情,哪里有不合适的地方多多赐教!!!**
基于OneNet平台设计的多节点温度采集系统-有人云4G模块+STM32
一、设计说明
设计思路: 每个测量点采用4G+STM32+温度测量模块组成;采集温度数据之后直接上传到OneNet物联网云平台,在OneNET云平台上设计可视化界面进行显示,并且也可以在手机APP设备云
上显示。
当前采用的物联网平台是OneNET云平台,OneNET中国移动物联网开放平台是由中国移动打造的PaaS物联网开放平台。平台能够帮助开发者轻松实现设备接入与设备连接,提供综合性的物联网解决方案,实现物联网设备的数据获取,数据存储,数据展现。
当前这个设计算是物联网技术的一个典型应用。目前物联网产业正在飞快发展着,从智能电视、智能家居、智能汽车、医疗健康、智能玩具、机器人等延伸到可穿戴设备领域。 物联网将赋能智能硬件向多元的消费场景渗透,从而创造更加便捷、舒适、安全、节能的生活环境。 物联网是通过约定的协议将原本独立存在的设备相互连接起来,并最终实现智能识别、定位、跟踪、监测、控制和管理的一种网络,无需人与人、或人与设备的互动。通俗来说物联网就是“物物相连的网”,主要应用于智能交通、智能医疗、智能家居、智能物流、智能电力等领域。
二、硬件选型
2.1 4G模块-WH-LTE-7S1
4G模块选择有人科技的WH-LTE-7S1
模块,支持全网通,外置了卡槽,可以插卡,本身模块也内置了电信卡,可以直接使用,不用考虑买卡,不用考虑卡接触不良等问题,内置的卡目前是8年免费使用,每月100M免费流量。
以上是关于移动云平台OneNet之数据可视化View连接本地MySQL数据库的主要内容,如果未能解决你的问题,请参考以下文章
基于OneNet平台设计的多节点温度采集系统-有人云4G模块+STM32
ESP32 + MQTT 连接到中移动物联网云平台 OneNET